Skip to main content
Last Reviewed: December 13, 2022

Introduction


This guide will show you how to migrate a site that meets the following criteria to the latest version of Drupal:

Current HostHow Site Was Created
Additional Requirements
PantheonEmpty UpstreamMultidev

If this is not your scenario, see Drupal Migration Guides for additional upgrade paths.

Info:
Note

This upgrade migrates your existing site to a new site. The new site will not maintain your site’s commit history.

Code:
Exports

This doc uses Terminus commands. Before you begin, set the variables $site and $env in your terminal session to match your site name and the correct environment:

export site=yoursitename
export env=dev

The following aliases are used as examples:

  • Alias: D8_SITE
    • Site Name: best-drupal8-site-ever
  • Alias: DRUPAL_SITE
    • Site Name: best-drupal-site-ever

Requirements

Confirm that your site meets the following requirements before you continue:

  • Ensure your site has the Pantheon empty repository in its upstream.

    • Use Terminus to confirm the empty Upstream

      Run the command terminus site:info $SITE to display the site's basic information and properties.

      The following is an abridged example of the output for a site upstream set to empty:

      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           4c7176de-e079-eed1-154d-44d5a9945b65: https://github.com/pantheon-systems/empty.git...
      ------------------ -------------------------------------------------------------------------------------

    The following values indicate that a site is using an empty upstream:

    • The Framework is drupal8

    • The Upstream includes https://github.com/pantheon-systems/empty.git

  • The site does not use another package and library manager, such as Ludwig.

  • You have not set up Continuous Integration or you no longer need it.

  • The trusted host setting is up-to-date. Refer to the Trusted Host Setting documentation for more information.