This is incredibly frustrating. Here's the deal. I have a drush alias defined for a server I'm working with. No matter what command it is, if it needs to bootstrap Drupal it fails with
no drupal site found or some variant. Running
--debug gives me less than useful information although if you'd like to see it I'm happy to provide it.
I can run
drush @alias sqlc and get the mysql command line on the remote server. I just cannot run things like
drush @alias st or
drush @alias cc all for example.
If I SSH to the server, change into the directory (i.e.
/sites/default) and run the same commands they work fine. So this is only when going over a remote alias.
Here's the alias definition:
$aliases['alias'] = array( 'uri' => 'site.com', 'root' => '/usr/share/nginx/html/drupal/docroot', 'remote-host' => 'us-west-2.compute.amazonaws.com', 'remote-user' => 'ubuntu', 'ssh-options' => '-i /Users/name/.ssh/id_rsa -q', 'db-url' => 'mysql://dbuser:dbpassword@localhost/www', 'path-aliases' => array( '%files' => 'sites/default/files', '%dump-dir' => '/tmp' ), 'command-specific' => array ( 'sql-sync' => array ( 'no-cache' => TRUE, ), ), );
Am I missing something here? I've done this a thousand times and for whatever reason this time it refuses to work.
Note: I have downgraded to Drush 6.x just in case it was a 7.x problem. Same result.