Skip to main content
Last Reviewed: 2022-12-13

Add the Integrated Composer Upstream in a New Local Branch


This process involves significant changes to the codebase that may take some time to complete, and can be complicated to roll back.

To minimize issues, make the codebase changes in a new branch:

  1. In your local terminal, change directories into the site project.

For example, if you keep your projects in a folder called projects in the home directory:

  1. Add the Pantheon Drupal Project upstream as a new remote called ic, fetch the ic upstream, and checkout to a new local branch based on it called composerify:

If you prefer, you can replace composerify with another branch name. If you do, remember to adjust the other examples in this doc to match.

Set Drupal Core Version

Set the Drupal core version to ensure the site remains on the current version of Drupal, for now:

Add Upgrade Status Module

This step is optional. You can wait and add the Upgrade Status module to your site later.

The Upgrade Status module will help to determine whether or not your site is ready to upgrade to the latest version of Drupal.

Add the Upgrade Status module to your site with Composer:

When you are ready to begin upgrading your site to the latest version of Drupal, you can enable this module and view the status report it provides to find out what needs to be done before upgrading.

Copy Existing Configuration

Copy any existing configuration from the default branch. Adjust the source folder as needed, depending on your folder structure. It's okay if no files are copied through this step:

Copy pantheon.yml

  1. Compare the old codebase's pantheon.yml to the new pantheon.upstream.yml:

Press q on your keyboard to exit the diff display.

  1. Copy the old pantheon.yml to preserve settings:

Remove any values from pantheon.yml that you prefer to keep listed in pantheon.upstream.yml. Then add build_step: true to pantheon.yml if it is not already included.

In the pantheon.yml file, the api_version: 1 and build_step: true values are required.