Migrating saildataservice.concord.org from 1.0 to 1.1

Migrating saildataservice.concord.org from 1.0 to 1.1

Notes (please verify)

SDS API Changes 1.0 to 1.1
Teachers and students have been using wise-dev.berkeley.edu not wise.berkeley.edu to run their Sail projects. Sail projects do not run in wise.berkeley.edu.
No real runs are done on wise-dev.berkeley.edu.
Verification: right, all non-SAIL project runs have been done on wise.berkeley.edu.
Scott-Reply: I would consider the Sail runs we've done to be "real". So wise-dev.berkeley.edu is being and has been used for "real" runs.
Hiroki-Reply: Ah, when you said "real", I thought you were referring to WISE 2.0 (non-SAIL) runs.
Trudi and Ken use wise-dev.berkeley.edu to add new SAIL projects to "WISE". wise.berkeley.edu and wise-dev.berkeley.edu share the same database. wise-dev.berkeley.edu has the logic to add SAIL projects.
rails.dev.concord.org/sds is currently running 1.1 SDS code
saildataservice.concord.org is currently running 1.0 SDS code

Sequence

  1. Hiroki adds code to a test WISE install so it can conditionally work with the 1.0 saildataservice.concord.org or the 1.1 rails.dev.concord.org/sds
    If it is easy, the changes should be be conditional, so the wise code can work with both 1.0 and 1.1 sds. This will make it easier to do the migration asyncronously.
    • Aaron: The SDS can return a version, so it might be possible to make it an automatic conditional. Here's the API:
      GET
      Accept: application/xml
      http://rails.dev.concord.org/sds/
      
      return headers:
      
      HTTP/1.1 200 OK
      
      return data:
      
      <sds>
        <name>Sail Data Service</name>
        <version>1.1</version>
      </sds>
      

      Examples:

      curl -i -H 'Accept: application/xml' http://rails.dev.concord.org/sds/
      
      HTTP/1.1 200 OK
      Date: Tue, 02 Oct 2007 14:22:06 GMT
      Server: lighttpd/1.4.15
      Content-Type: application/xml
      Cache-Control: no-cache
      Content-Length: 71
      
      <sds>
        <name>Sail Data Service</name>
        <version>1.1</version>
      </sds>
      
      ------------------------------------
      
      curl -i -H 'Accept: application/xml' http://saildataservice.concord.org
      
      HTTP/1.1 200 OK
      Date: Tue, 02 Oct 2007 14:22:19 GMT
      Server: lighttpd/1.4.15
      Content-Type: application/xml
      Cache-Control: no-cache
      Content-Length: 71
      
      <sds>
        <name>Sail Data Service</name>
        <version>1.0</version>
      </sds>
      
  2. Aaron checks out the Concord DIY's which are still using saildataservice.concord.org. Can they be migrated easily what should be do with them?
    • Aaron: As long as the resource ids stay the same (they should), there shouldn't need to be any changes to the DIYs. The same DIY code is currently being used with both versions of the SDS, with no changes necessary.
  3. Hiroki deploys the new code to WISE-dev with the conditional code still set to work with the 1.0 SDS (saildataservice.concord.org).
  4. Aaron notifies Hiroki of a time he is going to do the update of saildataservice.concord.org.
  5. saildataservice.concord.org goes down for a minutes a few hours during the update.
    • Aaron: We'll need a few hours in order to update the database schema and rebuild derived data that the 1.1 SDS needs.
  6. At the same time Hiroki flips the switch on WISE-dev so it now works with the saildataservce.cocnord.org which has been updated to 1.1 SDS.
    • Aaron: I'm not sure the easiest way to handle this... the sds update will have to happen in the middle of the night to avoid people needing to use it and the time it will take to migrate is fuzzy – makes it more difficult to coordinate a changeover time.
    • Aaron again: If wise automatically switches between request types based on the returned sds version, then this change could potentially happen without Berkeley's direct involvement.

Making the code conditional is optional. But I assume that deploying an updated WISE-dev and WISE will be a stressful procedure, so the conditional code allows that procedure to be done on its own schedule separate from the SDS change.

Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.