UPGRADING OASIS

If you're depending on OASIS to generate revenue, use extreme caution
before upgrading the server.  I would not recommend upgrading mission-critical
OASIS servers unless you absolutely require one of the features in
the new version.

Depending on your current version of OASIS, you need to take some
steps to get your database and config file into shape before running
the upgrade script.

-------------------------------------------------------------------------------
Upgrading from pre 1.0:
  - If you still have your oasis.cfg from your original installation,
    add two variables: "oasis_domain" and "oasis_port".  Look at the
    oasis.cfg in the distribution to figure out how to define them.
    If you don't have your old oasis.cfg, just fill out the one in the
    distribution (use the same values you used before).
  - Run the two queries in the file ddl/pre1.0_to_1.0.ddl.  Open the MySQL
    command monitor, type "use oasis", and then copy-and-paste the
    queries.
  - run the steps below to upgrade from 1.0 to 1.1

-------------------------------------------------------------------------------
Upgrading from 1.0:
  - configure Apache to deny access to *.inc files.  Here is a sample
    configuration directive:

<Files *.inc>
  Order deny,allow
  Deny from all
</Files>

    While you're at it, go ahead and configure Apache to block access
    to your maintenance scripts:

<Files *_maint.php>
    Order deny,allow
    Deny from all
</Files>

<Files check_inventory.php>
    Order deny,allow
    Deny from all
</Files>

  - run the queries in the file ddl/1.0_to_1.1b1.ddl
  - add the "oasis_lang" variable to your oasis.cfg (or just put your
    options into the oasis.cfg in the distribution if you don't have
    your old oasis.cfg).
  - run the steps below to upgrade from 1.1b1 to 1.1b2

-------------------------------------------------------------------------------
Upgrading from 1.1b1:
  - run the queries in the file ddl/1.1b1_to_1.1b2.ddl
  - run "upgrade.php".  It will replace your PHP files, but will not
    touch the database or shared memory.  The new version should start
    running immediately.

-------------------------------------------------------------------------------
Upgrading to 1.1.3:
  - run the queries in the file ddl/1.1.3.ddl
  - run "upgrade.php".  It will replace your PHP files, but will not
    touch the database or shared memory.  The new version should start
    running immediately.

-------------------------------------------------------------------------------
Upgrading to 1.2.0:
  - depending on your current version of OASIS, you may need to run
    some of the earlier *.ddl scripts (for example, if you're running
    1.1.2, you'll need to run ddl/1.1.3.ddl)
  - run the queries in the file ddl/1.2.0.ddl
  - run "upgrade.php".  It will replace your PHP files, but will not
    touch the database or shared memory.  The new version should start
    running immediately.

-------------------------------------------------------------------------------
Sorry for the multitude of steps.  Upgrading a live ad server is tricky
business.  I'm hesitant to try to build a general-purpose upgrader, since you
have to have knowledge of which oasis.cfg variables need adding, which tables
need modifying, records inserting, etc.  It would be pretty tricky to write
well, and even worse to support users who blow away their ad servers, costing
them money, due to a bug in an upgrade script.

If somebody wants to tackle it, I'd consider adding it to the distribution.
Or if you need help upgrading, I'm willing to help on a consulting basis.
Contact me at jason_priebe@yahoo.com.
