Index: openacs-4/packages/acs-core-docs/www/upgrade-openacs.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/Attic/upgrade-openacs.html,v diff -u -N -r1.1.2.2 -r1.1.2.3 --- openacs-4/packages/acs-core-docs/www/upgrade-openacs.html 18 Dec 2003 10:04:27 -0000 1.1.2.2 +++ openacs-4/packages/acs-core-docs/www/upgrade-openacs.html 11 Jan 2004 12:45:48 -0000 1.1.2.3 @@ -1,58 +1,46 @@ -Upgrading OpenACS

Upgrading OpenACS

Upgrading 4.5 to 4.6.x

The required platform for OpenACS 4.6 is the same as -4.5, with the exception of OpenFTS. OpenACS 4.6 and later require OpenFTS 0.3.2 for full text search on PostGreSQL. If you have OpenFTS 0.2, you'll need to upgrade.

  1. Make a Backup.�Back up the database and file system (see the section called “Manual backup and recovery”).

  2. OPTIONAL: Upgrade OpenFTS.�the section called “Upgrading OpenFTS from 0.2 to 0.3.2”

  3. - Stop the server -

    [root root]# svc -d /service/service0
  4. Upgrade the file system.�the section called “Upgrading the OpenACS files”

  5. - Start the server -

    [root root]# svc -u /service/service0
  6. Use APM to upgrade the database.�

    1. Browse to the package manager, http://yourserver/acs-admin/apm.

    2. Click Install packages.

    3. Select the packages you want to install. This should - be everything that says - upgrade, plus any new - packages you want. It's safest to upgrade the kernel by - itself, and then come back and upgrade the rest of the - desired packages in a second pass.

    4. On the next screen, click Install Packages

    5. When prompted, restart the server:

      [root root]# restart-aolserver service0
    6. Wait a minute, then browse to the package manager, http://yourserver/acs-admin/apm.

    7. Check that the kernel upgrade worked by clicking All and making sure that acs-kernel version is 5.0.0b4.

  7. Rollback.�If anything goes wrong, roll back to the backup snapshot.

Upgrading OpenACS 4.6.x to 4.6.3

Upgrading from before 4.6.3 to 5.0

OpenACS 5.0 requires PostGreSQL 7.3; OpenACS 4.6.3 supports both 7.2 and 7.3; OpenACS versions prior to 4.6.3 do not support PostGreSQL 7.3. Therefore, if you are upgrading a PostGreSQL OpenACS site from a version before 4.6.3, you must do it in three steps:

Upgrading OpenACS 4.6.3 to 5.0

  1. -pg_dump mydb > mydb.dmp
    -
    -If you are also upgrading from postgresql 7.2 to postgresql 7.3:
    -From openacs 5.0
    -
    -/openacs-5/bin/pg_7.2to7.3_upgrade_helper.pl mydb.dmp mydb-new.dmp /path/to/openacs-4-install
    -
    -    * Reload mydb-new.dmp into postgresql 7.3.
    -    * psql -f /openacs-5/packages/acs-kernel/sql/postgresql/postgresql.sql mydb
    -    * Load acs-kernel sql upgrade scripts from the previous openacs version. Be sure to load 5.0d* scripts before 5.0.0b* scripts.
    -    * Load acs-service-contract sql upgrade scripts
    -    * Load acs-authentication data model
    -      psql -f openacs-5/packages/acs-authentication/sql/postgresql/acs-authentication-create.sql mydb
    -    * Load acs-lang data model
    -      psql -f openacs-5/packages/acs-lang/sql/postgresql/acs-lang-create.sql mydb 
    -
    -Next create in openacs-5/tcl/ zzz-postload.tcl containing
    -
    -if {![apm_package_installed_p acs-lang]} {
    -
    -    apm_package_install -enable -mount_path acs-lang [acs_root_dir]/packages/acs-lang/acs-lang.info
    -    
    -     lang::catalog::import -locales [list "en_US"]
    -
    +Upgrading OpenACS

    Upgrading OpenACS

    Upgrading 4.5 to 4.6.x

    The required platform for OpenACS 4.6 is the same as + 4.5, with the exception of OpenFTS. OpenACS 4.6 and later require OpenFTS 0.3.2 for full text search on PostGreSQL. If you have OpenFTS 0.2, you'll need to upgrade.

    1. Make a Backup.�Back up the database and file system (see the section called “Manual backup and recovery”).

    2. OPTIONAL: Upgrade OpenFTS.�the section called “Upgrading OpenFTS from 0.2 to 0.3.2”

    3. + Stop the server +

      [root root]# svc -d /service/service0
    4. Upgrade the file system.�the section called “Upgrading the OpenACS files”

    5. + Start the server +

      [root root]# svc -u /service/service0
    6. Use APM to upgrade the database.�

      1. Browse to the package manager, http://yourserver/acs-admin/apm.

      2. Click Install packages.

      3. Select the packages you want to install. This should + be everything that says + upgrade, plus any new + packages you want. It's safest to upgrade the kernel by + itself, and then come back and upgrade the rest of the + desired packages in a second pass.

      4. On the next screen, click Install Packages

      5. When prompted, restart the server:

        [root root]# restart-aolserver service0
      6. Wait a minute, then browse to the package manager, http://yourserver/acs-admin/apm.

      7. Check that the kernel upgrade worked by clicking All and making sure that acs-kernel version is 5.0.0rc1.

    7. Rollback.�If anything goes wrong, roll back to the backup snapshot.

    Upgrading OpenACS 4.6.3 to 5.0

    • Oracle.�Not yet documented. It should be possible to upgrade via the APM just as when upgrading to 4.6.3.

    • PostGreSQL.� + You must use PostGreSQL 7.3.x or newer, or Oracle, to upgrade OpenACS beyond 4.6.3. (OpenACS 5.0 requires PostGreSQL 7.3; OpenACS versions prior to 4.6.3 do not support PostGreSQL 7.3; only OpenACS 4.6.3 supports both 7.2 and 7.3. Upgrade PostGreSQL to 7.3) +

      1. Back up the database and file system.

      2. Upgrade the kernel manually:

        [root root]# su - service0
        +[service0 aolserver]$ cd /var/lib/aolserver/ service0/packages/acs-kernel/sql/postgresql/upgrade

        + Manually execute each of the upgrade scripts in sequence, either from within psql or from the command line with commands such as psql -f upgrade-4.6.3-4.6.4.sql service0. Run the scripts in this order (order is tentative, not verified): +

        psql -f upgrade-4.6.3-4.6.4.sql service0
        +psql -f upgrade-4.6.4-4.6.5.sql service0
        +psql -f upgrade-4.6.5-4.6.6.sql service0
        +psql -f upgrade-4.7d-4.7.2d.sql service0
        +psql -f upgrade-4.7.2d-5.0d.sql service0
        +psql -f upgrade-5.0d-5.0d2.sql service0
        +psql -f upgrade-5.0d2-5.0d3.sql service0
        +psql -f upgrade-5.0d6-5.0d7.sql service0
        +psql -f upgrade-5.0d7-5.0d9.sql service0
        +psql -f upgrade-5.0d11-5.0d12.sql service0
        +psql -f upgrade-5.0.0a4-5.0.0a5.sql service0
        +psql -f upgrade-5.0.0b1-5.0.0b2.sql service0
        +psql -f upgrade-5.0.0b2-5.0.0b3.sql service0
        +psql -f upgrade-5.0.0b3-5.0.0b4.sql service0
      3. Load acs-authentication data model.

        psql -f /var/lib/aolserver/service0/openacs-5/packages/acs-authentication/sql/postgresql/acs-authentication-create.sql service0
      4. Load acs-lang data model.

        psql -f /var/lib/aolserver/service0/packages/acs-lang/sql/postgresql/acs-lang-create.sql service0
      5. Create a file which will be executed on startup which takes care of a few issues with authentication and internationalization: create service0/tcl/zzz-postload.tcl containing:

        if {![apm_package_installed_p acs-lang]} {
        +apm_package_install -enable -mount_path acs-lang [acs_root_dir]/packages/acs-lang/acs-lang.info
        +lang::catalog::import -locales [list "en_US"]
         }
         
        -
         if {![apm_package_installed_p acs-authentication]} {
        -
        -    apm_package_install -enable [acs_root_dir]/packages/acs-authentication/acs-authentication.info
        -
        -     apm_parameter_register "UsePasswordWidgetForUsername" \
        -     "Should we hide what the user types in the username
        -      field, the way we do with the password field? Set
        -      this to 1 if you are us ing sensitive information
        -      such as social security number for username." \
        -     acs-kernel 0 number \
        -     security 1 1
        -     parameter::set_value -package_id [ad_acs_kernel_id] -parameter UsePasswordWidgetForUsername -value 0
        -
        -}
        -
        -Cross fingers.
        -
        -If you can login, visit /acs-admin/apm and upgrade acs-kernel, acs-service-contract and uncheck the data model scripts. Restart. If everything is still working, make another backup of the database. Then upgrade the rest of your packages through the APM. 
        -

        -See also this forum post: Forum OpenACS Development: 4.6.3 upgrade to 5-HEAD: final results.

    View comments on this page at openacs.org
    +apm_package_install -enable [acs_root_dir]/packages/acs-authentication/acs-authentication.info +apm_parameter_register "UsePasswordWidgetForUsername" \ +"Should we hide what the user types in the username +field, the way we do with the password field? Set +this to 1 if you are using sensitive information +such as social security number for username." \ +acs-kernel 0 number \ +security 1 1 +parameter::set_value -package_id [ad_acs_kernel_id] -parameter UsePasswordWidgetForUsername -value 0 +}
  2. If you can login, visit /acs-admin/apm and upgrade acs-kernel and acs-service-contract and uncheck the data model scripts. Restart. If everything is still working, make another backup of the database. +

  3. Upgrade other packages via the APM

+ See also this forum post: Forum OpenACS Development: 4.6.3 upgrade to 5-HEAD: final results.

View comments on this page at openacs.org