You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 18 Next »


The scripts we use assume a directory layout like this

  • libweb
    • sites
      • [domain name]

        • htdocs
          • [ Drupal site is here ]

          • sites
            • default *
              • settings.php
              • files [for Drupal 6 and 'public files' for Drupal 7 ]

                • backup_migrate
        • make (this is only on the test server)
          • [domain name]

            • [domain name].make

        • drupal_files [private files for Drupal 7 ]

          • backup_migrate

and assume there is a drush alias set up for the site called @[domain name] .

* it does not work with a domain name here!


How to change the modules and themes

  • do a subversion checkout of https://svn.library.cornell.edu/cul-drupal
  • find your make file under cul-drupal/[drupal_6 or drupal_7]/make/[your site name]/[your site name].make

  • add lines or modify the version of the module listed according to the drush make file format (use other sites for examples)
  • check in the changed version

How to rebuild your site

  • go to victoria02 and cd /libweb/sites/[your site name]/make

  • sudo dr-make.sh @[your site name]

  • Note: the alias argument @[your site name] is no longer necessary for dr-make.sh

How to update your theme/module code on the site

  • make changes on your copy and check them in to svn
  • go to victoria02 and cd /libweb/sites/[your site name]/htdocs/sites/all/[modules or themes]/[your code's name]

  • svn up

How to work with your custom themes/modules

  • check out svn copies on your machine
  • edit/whatever the copies
  • check in changes

How to move from production to test

There is a script for this on victoria02: /usr/local/bin/update_test_from_production.sh

**************************************

Usage: sudo /usr/local/bin/update_test_from_production.sh <production domain> <test domain>

**************************************

  • Log on to the production Drupal site and configure the 'Site under maintenance' block
    • Under 'Page specific visibility settings' select 'Show on every page except the listed pages.'
  • Make a backup of the production site to the Manual Backups Directory (using Backup and Migrate module)
    • Drupal 6: http://$productiondomain/admin/content/backup_migrate/export
    • Drupal 7: http://$productiondomain/admin/config/system/backup_migrate
  • Log on to the test Drupal site
  • Put the test site into maintenance mode
    • Drupal 6: http://$testdomain/admin/settings/site-maintenance
    • Drupal 7: http://$testdomain/admin/config/development/maintenance
  • go to victoria02 and cd /libweb/sites/[your site name]/make

  • sudo update_test_from_production.sh [your production site domain] [your test site domain]

    • the script will ask you if you completed each of the steps above and give you all the real paths to the pages you need to use
    • the script moves the site with rsync
  • Log on to the test Drupal site
  • Restore the latest backup
    • Drupal 6: http://$testdomain/admin/content/backup_migrate/destination/list/files/manual
    • Drupal 7: http://$testdomain/admin/config/system/backup_migrate/destination/list/files/manual
    • click 'restore' next to the latest version of the file (hint: sort by file name!)
  • take the test site out of maintenance mode

How to move from test to production

There is a script for this on victoria01: /usr/local/bin/update_production_from_test.sh

**************************************

Usage: sudo /usr/local/bin/update_production_from_test.sh <test domain> <production domain>

**************************************

  • Log on to the test Drupal site
  • Make a backup of the test site to the Manual Backups Directory (using Backup and Migrate module)
  • Log on to the production Drupal site
  • Put the production site into maintenance mode
  • go to victoria01 and cd /libweb/sites/[your site name]/make 

  • sudo update_production_from_test.sh [your test domain] [your production domain]

    • the script will ask you if you've done each step and give you all the proper paths
  • restore the latest backup
  • configure the 'site under maintenance' block
    • Under 'Page specific visibility settings' select 'Show on only the listed pages'
  • No labels