Recommended Workflow

Recommended: Use Git

If you're comfortable with Git, we recommend that you keep your site in Git mode all the time and use it to keep your modules, plugins, and themes up to date. If you are not using Git, you will need to use SFTP or the Drupal or WordPress web interface to update non-core code.

Pantheon help page: Starting with Git

Alternative: SFTP workflow

Keep your site in Git mode most of the time and use the Pantheon dashboard to keep your core up to date. Make sure scheduled backups are enabled on all environments once your site is on a paid plan, so your site is backed up every day automatically.

  1. When an update is available on the Pantheon dashboard:
    1. Make sure you are Git mode (dev environment backups cannot be created or restored when your site is in SFTP mode).
      1. If you are not, refresh your dashboard, commit any changes in your dev environment, and switch to Git mode.
    2. Back up your dev environment.
    3. Apply the updates - See Applying Upstream Updates
    4. Clear caches and run any database updates
    5. Continue from step 3.
  2. When you need to update a specific contrib or custom module, plugin, or theme (Note: Do not update core or distributions yourself - use #1 above):
    1. Make sure you are Git mode (backups can only be made in Git mode).
      1. If you are not, refresh your dashboard, commit any changes in your dev environment, and switch to Git mode.
    2. Back up your dev environment.
    3. Switch to SFTP mode.
    4. Run the update (use the Drupal or WP web interface, or use SFTP to upload the code).
    5. Clear caches and run any database updates.
    6. Commit your changes using the dashboard.
    7. Switch back to Git mode (make sure all changes have been committed first).
  3. Test the update:
    1. Back up your test environment.
    2. Using the dashboard, pull the code updates from dev to test, and your data and files from live (make sure you don't mind blowing away any content on your test environment).
    3. Clear caches and run any database updates.
    4. Test thoroughly to make sure nothing breaks.
  4. Push the update live:
    1. Back up your live environment.
    2. Using the dashboard, pull the code updates from test to live.
    3. Clear caches and run any database updates.
    4. Sanity-check your live site.