Drupal Console allows you to run commands on your local server but actually execute them on a remote server.
You can take advantage of this feature, using the --target
option and passing the remote site name you want to interact with.
drupal --target=sample.dev cr all
Setting up your local computer to use a remote site requires a little configuration.
You can provide global configuration to remote connections at the copied file ~/.console/config.yml
. This information is grouped within the remote
key.
application:
...
remote:
user: root
port: 22
console: /usr/local/bin/drupal
options:
arguments:
keys:
public: ~/.ssh/id_rsa.pub
private: ~/.ssh/id_rsa
passphrase: ~/.ssh/passphrase.txt
You can provide specific site configuration by duplicating the copied site file at ~/.console/sites/sample.yml
with a new name at ~/.console/sites/
.
local:
root: /var/www/drupal8.dev
host: local
dev:
root: /var/www/html/drupal
host: 140.211.10.62
user: drupal
prod:
root: /var/www/html/docroot
host: live.drupal.org
user: drupal
console: /var/www/html/docroot/console.phar
You can list all known local and remote sites by executing the site:debug
command.
drupal site:debug
+--------------------+-----------------+------------------------+
| Site | Host | Root |
+--------------------+-----------------+------------------------+
| sample.local | local | /var/www/drupal8.dev |
| sample.dev | 140.211.10.62 | /var/www/html/drupal |
| sample.prod | live.drupal.org | /var/www/html/docroot |
+--------------------+-----------------+------------------------+
You can show the site configuration details by passing the site name as argument to the site:debug
command.
drupal site:debug sample.dev
user: drupal
port: 22
console: /usr/local/bin/drupal
options:
arguments:
keys:
public: ~/.ssh/id_rsa.pub
private: ~/.ssh/id_rsa
passphrase: ~/.ssh/passphrase.txt
root: /var/www/html/drupal
host: 140.211.10.62
remote: true
NOTE: As you may notice the global configuration and the specific site configuration are merged when debugging a site. You can override any global configuration by adding those keys on the site specific configuration.