Skip to main content
Last Reviewed: December 13, 2022

Prepare the Local Environment


Complete all steps in this section to ensure that your site is ready to be migrated to Pantheon.

Ensure Dependencies are Compatible

You must confirm that your site is compatible with the latest version of Drupal before you change the Drupal core version.

Review the steps below to confirm compatibility for your site's components.

  1. Update to the latest version of MariaDB in all environments.

  2. Use Upgrade Status to check the compatibility of all contributed modules and themes.

  3. Convert your site to Composer if you plan to use the Upgrade Status module to assist in your upgrade.

  4. Update all contributed projects and verify that they are compatible with the latest version of Drupal.

  5. Update your custom code to make it compatible with the latest version of Drupal.

  6. Update your core codebase to the latest version of Drupal.

  7. Run update.php to update your PHP version.

You can find step-by-step instructions on the above items in Drupal's Upgrade documentation.

Prepare the Local Environment

  1. Review our documentation on Git, Composer, and Terminus, and install and configure them on your local computer. Pantheon requires Composer 2 at minimum.

    • Mac users can use Homebrew to install Git, Composer, and PHP, along with their required dependencies. Note: Terminus 3 should be used for PHP >= 8.0. Restart the shell or terminal environment after entering the following command:

      brew install git composer php
    • Windows users can install Composer and Git, and may need to install XAMPP or similar to satisfy some dependencies.

  2. Set the temporary variable $SITE in your terminal session to match the name of your site.

    This doc uses several commands that use the temporary command line alias, $SITE, to make entering command examples easier. Refer to the steps further in this doc to see which sites should be aliased (it may be more than one), then replace anita-drupal in this example:

    export SITE=anita-drupal && echo "New alias set as $SITE"
    How to Use Terminus to Find the Site Name

    Use terminus site:list for a list of sites you have access to:

    terminus site:list
    --------------------------- --------------------- ------------- ----------------------------------- -------------------- --------------------- ------------- ------------
    Name                        ID                    Plan          Framework          Region           Owner                Created               Memberships   Is Frozen?
    --------------------------- --------------------- ------------- ------------------- ---------------- -------------------- --------------------- ------------- ------------
    anita-drupal                abdc80ce-286c-1234-   Sandbox       drupal8             Canada           3374708c-987e-1234   2020-12-15 19:40:42   d3ecc20c-395a falseanita-wordpres              abdc9954-fab2-1234-   Sandbox       wordpress           United States    c96ddb25-336a-1234   2020-09-02 07:18:51   d3ecc20c-395a false

    The site name is listed under Name. In this example, the site name is anita-drupal.

  3. Create a new folder to use while working on the migration. This folder will contain two subdirectories that you'll create in the next sections, one for the site on the former platform, and one for the Pantheon site.

Apply All Available Upstream Updates

  1. Use Terminus to list all available updates:

    terminus upstream:updates:list $SITE.dev
    [warning] There are no available updates for this site.
  2. Apply any available updates using the command line or the Pantheon Dashboard:

    terminus upstream:updates:apply $SITE.dev --updatedb

Convert to Composer

If your site is not currently Composer-managed, follow the steps in the Composer Conversion Guide to ensure that your site is ready for migration to the latest version of Drupal.