The Drupal plugin adds Drupal-specific commands on top of the core sitectl context and model. Install it when your site runs Drupal, whether standalone or as part of a larger stack like ISLE.
Commands
drush
Run any Drush command inside the Drupal container for the active context:
sitectl drupal drush cr
sitectl drupal drush cron --context museum-prod
sitectl drupal drush updb -y
sitectl resolves the correct container from the context and executes the command inside it. You don’t need to know the container name or remember which context you’re connected to.
login
Generate a one-time Drupal login link via drush user:login:
sitectl drupal login
sitectl drupal login --uid 5
The default user ID is 1. Pass --uid to generate a link for a different user.
sync database
Copy the Drupal database from one context to another:
sitectl drupal sync database --source museum-prod --target museum-local
sitectl backs up the source database, stages it between contexts, imports it into the target, and runs post-import steps. Before importing it confirms the operation with you. Pass --yolo to skip the confirmation in automation.
Use --fresh to always take a new backup from the source instead of reusing a backup from earlier today.
Syncing a database replaces the target database. Make sure you have a backup of the target before running this on staging or production.
sync config
Copy the Drupal config/sync directory from one context to another:
sitectl drupal sync config --source museum-prod --target museum-local
This exports the config export from the source, stages it, and imports it into the target via drush config:import.
Assigning the Drupal plugin to a context
When you create or configure a context, set its plugin field to drupal:
sitectl uses this to validate that Drupal commands are only run against Drupal contexts, and to route the sitectl debug command to the Drupal plugin for Drupal-specific diagnostics.