Managing Drush Versions on Pantheon

Learn about Pantheon's default Drush version and how to implement site-local usage.


By default, Pantheon runs Drush 8 on newly created Drupal sites. Drush 8 is compatible with Drupal 6, 7, and 8.

Terminus Drush and Local Drush

Terminus makes remote Drush calls on sites without using a local installation, eliminating compatibility issues between local and remote installs. For more information, see our guide on Managing Drupal Sites with Terminus and Drush.

Verify Current Drush Version

Verify the current version of Drush running remotely on Pantheon using Terminus:

terminus drush <site>.<env> -- status | grep "Drush version"

Configure Drush Version

You can change a site's Drush version via the pantheon.yml file:

api_version: 1

drush_version: 8

Now your site’s Drush version is managed via pantheon.yml, so it’s in version control and deployed along with the rest of your code.

Available Drush Versions

Pantheon currently supports Drush 8. While Drush 5 and 7 are available if needed, they are listed as unsupported by the Drush maintainers, and should be avoided unless absolutely necessary.

PHP Requirements

Drush Version Minimum PHP Version
Drush 5 PHP 5.2.0+
Drush 7 PHP 5.3.0+
Drush 8 PHP 5.4.5+

See our guide on Upgrading PHP Versions.

Troubleshooting

Sometimes even after updating the drush version in pantheon.yml, the correct version of drush is not called. This is usually caused by an outdated configuration file, policy.drush.inc, in your local ~/.drush directory, overriding pantheon.yml. Remove the file, or comment out its contents, to resolve.

Site-local Drush Usage

If you need to specify a minor version or a version not available on the platform (such as Drush 9), you can add a site-local installation of Drush to your repository. This will redispatch Pantheon's platform Drush to the site-local installation. Do not select any major version of Drush lower than 8.

For more information, see Avoiding “Dependency Hell” with Site-Local Drush.

See Also