Prepare
Follow the steps in the Composer Conversion Guide to ensure that your site is ready for upgrade to the latest version of Drupal.
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.
Update to the latest version of MariaDB in all environments.
Use Upgrade Status to check the compatibility of all contributed modules and themes.
Convert your site to Composer if you plan to use the Upgrade Status module to assist in your upgrade.
Update all contributed projects and verify that they are compatible with the latest version of Drupal.
Update your custom code to make it compatible with the latest version of Drupal.
Update your core codebase to the latest version of Drupal.
Run
update.php
to update your PHP version.
You can find step-by-step instructions on the above items in Drupal's Upgrade documentation.
Verify the Repository
Check that your site has the Pantheon drupal-composer-managed repo in its upstream.
Use Terminus to confirm the
drupal-composer-managed
upstream:terminus site:info $SITE
The following values indicate that a site is using the
drupal-composer-managed
upstream:The
Framework
isdrupal8
The
Upstream
includeshttps://github.com/pantheon-upstreams/drupal-composer-managed
The following is an abridged example of the output for the
terminus site:info $SITE
command, if the site upstream is set todrupal-composer-managed
:terminus site:info $SITE ------------------ ------------------------------------------------------------------------------------- ID abdc3ea1-fe0b-1234-9c9f-3cxeAA123f88 Name anita-drupal Label AnitaDrupal Created 2019-12-02 18:28:14 Framework drupal8 ... Upstream 897fdf15-992e-4fa1-beab-89e2b5027e03: https://github.com/pantheon-upstreams/ drupal-composer-managed... ------------------ -------------------------------------------------------------------------------------
Prepare the Local Environment
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.
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 replaceanita-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 isanita-drupal
.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
Update the site to the latest Pantheon Drupal Composer Managed Upstream and apply all available updates.
Use Terminus to list all available updates:
terminus upstream:updates:list $SITE.dev [warning] There are no available updates for this site.
Run the following code to apply available updates:
terminus upstream:updates:apply $SITE.dev --updatedb
You can also use the Pantheon Dashboard to apply upstream updates.