How to Migrate Code

During Development

Check your code into ucsf/docroot/sites/dev.yoursite.ucsf.edu via Git

Code checked into the master branch is available within 5-10 minutes on development (i.e. http://dev.yoursite.ucsf.edu)

Moving Code to Staging and Production

  1. Check your code into ucsf/docroot/sites/yoursite.ucsf.edu via Git
  2. Your code will be tagged moved to staging in the next change control window
  3. Test your code change on stage before the next change control window
  4. The tagged code base will be migrated on the following change control day.

Deploy example

Example:

  1. Jane A. Dev checks her development code into ucsf/docroot/sites/jane.ucsf.edu on Monday 11/01/2011 at 2 pm,
  2. The code is migrated to staging on Monday (11/01/2011) afternoon.
    • Migrating the code creates a "tag", a snapshot of that day's code
    • The tag has a date in our example it would be tag/2011-11-01
  3. Jane tests stage.jane.ucsf.edu on Tuesday. Everything looks good.
  4. The code in tag/2011-11-01 is migrated to production Tuesday afternoon.

Second Example

  1. Jane A. Dev checks her development code into ucsf/docroot/sites/jane.ucsf.edu on Thursday 3/15/2012 before 4 pm.
  2. The code is migrated to staging on Thursday (3/15/2012) afternoon.
    • Migrating the code creates a "tag", a snapshot of that day's code
    • The tag has a date in our example it would be tag/2012-03-15
  3. Jane tests stage.jane.ucsf.edu on Friday. Everything looks good.
  4. The code in tag/2012-03-15 is migrated to production Monday afternoon.

What to do when something goes wrong on staging.

  1. Notify ITS
  2. Remove the problem code from Git
  3. ITS will notify the Drupal Users group and deploy a new tag to staging on your behalf.