Index: openacs-4/packages/acs-core-docs/www/upgrade-4.5-to-4.6.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/upgrade-4.5-to-4.6.html,v diff -u -r1.1 -r1.2 --- openacs-4/packages/acs-core-docs/www/upgrade-4.5-to-4.6.html 28 Feb 2003 05:36:05 -0000 1.1 +++ openacs-4/packages/acs-core-docs/www/upgrade-4.5-to-4.6.html 29 Mar 2003 20:44:55 -0000 1.2 @@ -1,22 +1,22 @@ -Upgrading OpenACS 4.5 to 4.6

Upgrading OpenACS 4.5 to 4.6

Checklist

The required platform for OpenACS 4.6 is the same as +Upgrading OpenACS 4.5 to 4.6

Upgrading OpenACS 4.5 to 4.6

Checklist

The required platform for OpenACS 4.6 is the same as 4.5, with the excepion of OpenFTS. You now need OpenFTS 0.3.2, not 0.2. - OpenACS 4.6 does not support PostGreSQL 7.3.

Overview

OpenACS consists of files and a database schema. The files + OpenACS 4.6 does not support PostGreSQL 7.3.

Overview

OpenACS consists of files and a database schema. The files in the OpenACS 4.6 tarball include database upgrade scripts. To start the upgrade, replace your existing files with the new files and then restart the server. Then, browse to the APM, which will detect the new packages and offer to run the appropriate database upgrade scripts. After restarting the server again, the upgrade is - complete.

Figure 5.1. Assumptions in this section

name of OpenACS usernsadmin
OpenACS server nameopenacs-dev
Root of OpenACS file tree/web/openacs-dev
Database backup directory/backup/openacs/

Upgrading on Linux/Unix

  1. Make a Backup.�Back up the database and file system.

    • PostGreSQL.�Create a backup file and verify that it was created and has a reasonable size (several megabytes).

      [root@localhost root]# su - nsadmin
      +    complete.

      Figure 6.1. Assumptions in this section

      name of OpenACS usernsadmin
      OpenACS server nameopenacs-dev
      Root of OpenACS file tree/web/openacs-dev
      Database backup directory/backup/openacs/

    Upgrading on Linux/Unix

    1. Make a Backup.�Back up the database and file system.

      • PostGreSQL.�Create a backup file and verify that it was created and has a reasonable size (several megabytes).

        [root@localhost root]# su - nsadmin
         [nsadmin@localhost aolserver]$ pg_dump -f /backup/openacs/openacs_dev_before_upgrade_to_4.6.dmp openacs-dev
         [nsadmin@localhost aolserver]$ ls -al /backup/openacs/openacs_dev_before_upgrade_to_4.6.dmp 
         -rw-rw-r--    1 nsadmin  nsadmin   4005995 Feb 21 18:28 /backup/openacs/openacs_dev_before_upgrade_to_4.6.dmp
         [nsadmin@localhost aolserver]$ exit
         [root@localhost root]#
        -
        su - nsadmin +
        su - nsadmin
         pg_dump -f /backup/openacs/openacs_dev_before_upgrade_to_4.6.dmp openacs-dev
         ls -al /backup/openacs/openacs_dev_before_upgrade_to_4.6.dmp
        -exit
      • Oracle - INCOMPLETE.�

      • File tree with CVS.�If you are already using CVS, you probably don't +exit

      • Oracle - INCOMPLETE.�

      • File tree with CVS.�If you are already using CVS, you probably don't need to do anything to back up your data. Just make sure that your current work is checked into the system. You can then roll back based on date - just note the @@ -35,17 +35,17 @@ (many lines omitted) [nsadmin@localhost openacs-dev]$ exit [root@localhost root]# -

        su - nsadmin +
        su - nsadmin
         cd /web/openacs-dev
         cvs commit -m "last-minute commits before upgrade to 4.6"
         cvs tag before_upgrade_to_4_6
        -exit
      • File tree without CVS.�If you don't use cvs, you may want to back up the working directory. The simplest way is just to copy it.

        [root@localhost root]# su - nsadmin
        +exit
      • File tree without CVS.�If you don't use cvs, you may want to back up the working directory. The simplest way is just to copy it.

        [root@localhost root]# su - nsadmin
         [nsadmin@localhost aolserver]$ cp -r /web/openacs-dev /web/openacs-dev-before-upgrade-to-4.6
         [nsadmin@localhost aolserver]$ exit
         [root@localhost root]# 
        -
        su - nsadmin +
        su - nsadmin
         cp -r /web/openacs-dev /web/openacs-dev-before-upgrade-to-4.6
        -exit
    2. OPTIONAL: Upgrade OpenFTS.�OpenACS Full Text Search requires several pieces: the OpenFTS code, some database functions, and the OpenFTS Engine. If you have OpenFTS 0.2, you'll need to upgrade to to OpenFTS 0.3.2. This is backwards-compatible - +exit

  2. OPTIONAL: Upgrade OpenFTS.�OpenACS Full Text Search requires several pieces: the OpenFTS code, some database functions, and the OpenFTS Engine. If you have OpenFTS 0.2, you'll need to upgrade to to OpenFTS 0.3.2. This is backwards-compatible - completing this step will not break a working OpenFTS Engine from 4.5.

    1. Uninstall the old OpenFTS Engine

      1. Browse to http://yourserver/openfts.

      2. Click Administration.

      3. Click Drop OpenFTS Engine

    2. Build and install the new OpenFTS driver and supporting tcl procedures. (This section of shell code is not fully documented; please exercise care.)

      cd /usr/local/src/
      @@ -76,20 +76,20 @@
       (~30 more lines)
       [nsadmin@localhost dev]$ exit
       [root@localhost root]# 
      -
      su - nsadmin +
      su - nsadmin
       psql openacs-dev -f /usr/local/pgsql/share/contrib/openfts.sql
       psql openacs-dev -f /usr/local/src/postgresql-7.2.3/contrib/tsearch/tsearch.sql
      -exit
  3. Stop the server.�

    [root@localhost root]# svc -d /service/openacs-dev
  4. Upgrade the file tree.�If you are using CVS, you will unpack the OpenACS 4.6 tarball into a working directory and then import that directory into cvs. If you have changed files in the core packages, cvs will attempt to merge your changes. You may have to manually merge some conflicts. When that's finished, you can update your normal development checkout directory and the new files will appear. If you aren't using CVS, you can unpack the tarball on top of your existing tree, but any customizations you've made to the kernel or core packages will be erased.

    • Upgrading files without CVS.�Unpack the tarball into a new directory and copy its contents on top of your working directory.

      [root@localhost root]# su - nsadmin
      +exit
  • Stop the server.�

    [root@localhost root]# svc -d /service/openacs-dev
  • Upgrade the file tree.�If you are using CVS, you will unpack the OpenACS 4.6 tarball into a working directory and then import that directory into cvs. If you have changed files in the core packages, cvs will attempt to merge your changes. You may have to manually merge some conflicts. When that's finished, you can update your normal development checkout directory and the new files will appear. If you aren't using CVS, you can unpack the tarball on top of your existing tree, but any customizations you've made to the kernel or core packages will be erased.

    • Upgrading files without CVS.�Unpack the tarball into a new directory and copy its contents on top of your working directory.

      [root@localhost root]# su - nsadmin
       [nsadmin@localhost aolserver]$ cd /web
       [nsadmin@localhost web]$ tar xzf /tmp/openacs-4-6.tgz
       [nsadmin@localhost web]$ cp -r openacs-4-6/* openacs-4
       [nsadmin@localhost openacs-upgrade]$ exit
       [root@localhost root]#
      -
      su - nsadmin +
      su - nsadmin
       cd /web
       tar xzf /tmp/openacs-4-6.tgz
       cp -r openacs-4-6/* openacs-4
      -exit
    • Upgrading files with CVS.�

      1. Unpack the new files into a working directory.

        [root@localhost root]# su - nsadmin
        +exit
      2. Upgrading files with CVS.�

        1. Unpack the new files into a working directory.

          [root@localhost root]# su - nsadmin
           [nsadmin@localhost aolserver]$ cd /tmp
           [nsadmin@localhost tmp]$ tar xzv openacs-4-6.tgz
           [nsadmin@localhost tmp]$ cd openacs-4.6
          @@ -98,28 +98,28 @@
           [nsadmin@localhost tmp]$ mkdir openacs-upgrade
           [nsadmin@localhost tmp]$ cvs checkout -d openacs-upgrade -jOpenACS:yesterday -jOpenACS openacs < cvs.txt 2<&1
           (CVS feedback here)
          -
          su - nsadmin +
          su - nsadmin
           cd /tmp
           tar xzv openacs-4-6.tgz
           cd openacs-4.6
           cvs import -m "upgrade to OpenACS 4.6" openacs OpenACS openacs-4-6
           cd /tmp
           mkdir openacs-upgrade
           cvs checkout -d openacs-upgrade -jOpenACS:yesterday -jOpenACS openacs < cvs.txt 2<&1
          -
        2. The file /tmp/openacs-upgrade/cvs.txt contains the results of the upgrade. If you changed files that are part of the OpenACS tarball and those changes conflict with the 4.5-4.6 upgrade, you'll have to manually reconcile them. Use the emacs command M-x sort-lines and then, for each line that starts with a C, open that file and manually resolve the conflict by deleting the excess lines. When you're finished, or if there aren't any conflicts, save and exit.

        3. Once you've fixed any conflicts, commit the new code +

        4. The file /tmp/openacs-upgrade/cvs.txt contains the results of the upgrade. If you changed files that are part of the OpenACS tarball and those changes conflict with the 4.5-4.6 upgrade, you'll have to manually reconcile them. Use the emacs command M-x sort-lines and then, for each line that starts with a C, open that file and manually resolve the conflict by deleting the excess lines. When you're finished, or if there aren't any conflicts, save and exit.

        5. Once you've fixed any conflicts, commit the new code to your local tree.

          [nsadmin@localhost tmp]$ cd openacs-upgrade
           [nsadmin@localhost openacs-upgrade]$ cvs commit -m "Upgraded to 4.6"
          -
          cd openacs-upgrade -cvs commit -m "Upgraded to 4.6"
        6. Update your working tree with the new +

          cd openacs-upgrade
          +cvs commit -m "Upgraded to 4.6"
        7. Update your working tree with the new files. The CVS flags ensure that new directories are created and pruned directories destroyed.

           [nsadmin@localhost openacs-upgrade]$ cd /web/openacs-dev
           [nsadmin@localhost openacs-dev]$ cvs up -Pd
           (CVS feedback)
           [nsadmin@localhost openacs-dev]$ exit
           [root@localhost root]#
          -
          cd /web/openacs-dev +
          cd /web/openacs-dev
           cvs up -Pd
          -exit
  • Start the server.�

    [root@localhost root]# svc -u /service/openacs-dev
  • 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.

    4. On the next screen, click Install Packages

    5. When prompted, restart the server:

      [root@localhost root]# restart-aolserver openacs-dev
    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 4.6.1.

  • OPTIONAL: Install the new OpenFTS Engine.�If you want to upgrade the OpenFTS Engine, do these steps. (You +exit

  • Start the server.�

    [root@localhost root]# svc -u /service/openacs-dev
  • 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.

    4. On the next screen, click Install Packages

    5. When prompted, restart the server:

      [root@localhost root]# restart-aolserver openacs-dev
    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 4.6.1.

  • OPTIONAL: Install the new OpenFTS Engine.�If you want to upgrade the OpenFTS Engine, do these steps. (You must have already upgraded the OpenFTS driver to 0.3.2.

    1. Browse to http://yourserver/admin/site-map

    2. On the openfts line, click on set parameters.

    3. Change the value of openfts_tcl_src_path from /usr/local/src/Search-OpenFTS-tcl-0.2/ to /usr/local/src/Search-OpenFTS-tcl-0.3.2/

    4. Click Set Parameters

    5. [root@localhost root]# restart-aolserver openacs-dev
    6. Browse to http://yourserver/openfts

    7. Click Administration.

    8. Click Initialize OpenFTS Engine

  • Rollback.�If anything goes wrong, roll back the database and try again.

    [root@localhost root]# su - nsadmin
    @@ -142,7 +142,7 @@
     [nsadmin@localhost aolserver]$ svc -u /web/openacs-dev
     [nsadmin@localhost aolserver]$ exit
     [root@localhost root]#
    All commands for this section:
    -
    su - nsadmin +
    su - nsadmin
     svc -d /service/openacs-dev
     dropdb openacs-dev
     createdb openacs-dev
    @@ -152,4 +152,4 @@
     svc -u /service/openacs-dev
     cd /web/openacs-dev
     cvs up -r current
    -exit
  • ($Id$)
    View comments on this page at openacs.org
    +exit

    ($Id$)
    View comments on this page at openacs.org