drush-ops / drush

Drush is a command-line shell and scripting interface for Drupal, a veritable Swiss Army knife designed to make life easier for those who spend their working hours hacking away at the command prompt.
https://www.drush.org
2.33k stars 1.08k forks source link

rsync fails with undefined index error on 8.x #2613

Open bobbygryzynger opened 7 years ago

bobbygryzynger commented 7 years ago

It appears that the file commands/core/rsync.core.inc is missing on the master branch which appears to be contributing to geerlingguy/drupal-vm#1166 and possibly #2467.

greg-1-anderson commented 7 years ago

Try drush cc drush. The rsync command moved recently on the master branch; perhaps you still have a reference to the old location in your cache.

bobbygryzynger commented 7 years ago

@greg-1-anderson - thanks for your response.

I tried drush cc drush but I'm still getting the behavior described in #2467. Running the command with the -d flag logs the following message each time the command is run:

Undefined index: error rsync.core.inc:293 [17.56 sec, 10.51 MB]

You can see the full console output in this gist.

I tried running drush cc drush both on my host and guest machines but I'm still seeing the undefined index referring back to rsync.core.inc.

weitzman commented 7 years ago

There is no such line in drush master right now. That file is gone. Please paste the output of drush st and drush @example st for any site aliases involved in your rsync call. Also drush sa @example for each alias.

bobbygryzynger commented 7 years ago

@weitzman - thanks for taking a look.

drush st output:

$ drush st
 PHP executable         :  /usr/local/bin/php                                                                                                                                                   
 PHP configuration      :  /usr/local/etc/php/5.6/php.ini                                                                                                                                       
 PHP OS                 :  Darwin                                                                                                                                                               
 Drush script           :  /Users/robertgryzynger/Sites/octagon/vendor/drush/drush/drush.php                                                                                                    
 Drush version          :  8.1.8                                                                                                                                                                
 Drush temp directory   :  /tmp                                                                                                                                                                 
 Drush configuration    :  /Users/robertgryzynger/Sites/octagon/drush/drushrc.php                                                                                                               
 Drush alias files      :  /Users/robertgryzynger/Sites/octagon/drush/site-aliases/aliases.drushrc.php /Users/robertgryzynger/Sites/octagon/drush/site-aliases/example.acsf.aliases.drushrc.php 
                           /Users/robertgryzynger/Sites/octagon/drush/site-aliases/example.local.aliases.drushrc.php  

drush @octagon.default.local st output:

$ drush @octagon.default.local st
 Drupal version                  :  8.2.4                                                                                                                                              
 Site URI                        :  http://octagon.default.local                                                                                                                       
 Database driver                 :  mysql                                                                                                                                              
 Database hostname               :  localhost                                                                                                                                          
 Database port                   :  3306                                                                                                                                               
 Database username               :  admin                                                                                                                                              
 Database name                   :  octagon_default                                                                                                                                    
 Database                        :  Connected                                                                                                                                          
 Drupal bootstrap                :  Successful                                                                                                                                         
 Drupal user                     :                                                                                                                                                     
 Default theme                   :  meyers                                                                                                                                             
 Administration theme            :  seven                                                                                                                                              
 PHP executable                  :  /usr/bin/php                                                                                                                                       
 PHP configuration               :  /etc/php/5.6/cli/php.ini                                                                                                                           
 PHP OS                          :  Linux                                                                                                                                              
 Drush script                    :  /var/www/octagon/vendor/drush/drush/drush.php                                                                                                      
 Drush version                   :  8.1.8                                                                                                                                              
 Drush temp directory            :  /tmp                                                                                                                                               
 Drush configuration             :  /var/www/octagon/drush/drushrc.php                                                                                                                 
 Drush alias files               :  /var/www/octagon/docroot/../drush/site-aliases/aliases.drushrc.php /var/www/octagon/docroot/../drush/site-aliases/example.acsf.aliases.drushrc.php 
                                    /var/www/octagon/docroot/../drush/site-aliases/example.local.aliases.drushrc.php                                                                   
 Install profile                 :  standard                                                                                                                                           
 Drupal root                     :  /var/www/octagon/docroot                                                                                                                           
 Drupal Settings File            :  sites/default/settings.php                                                                                                                         
 Site path                       :  sites/default                                                                                                                                      
 File directory path             :  sites/default/files                                                                                                                                
 Private file directory path     :  /var/www/octagon/files-private                                                                                                                     
 Temporary file directory path   :  /tmp                                                                                                                                               
 Sync config path                :  /var/www/octagon/config/default 

drush @octagon.default.prod st output:

$ drush @octagon.default.prod st
 Drupal version                  :  8.2.4                                                                                                                      
 Site URI                        :  [acquia-site-redacted].prod.acquia-sites.com                                                                                             
 Database driver                 :  mysql                                                                                                                      
 Database hostname               :  [redacted]                                                                                                                  
 Database port                   :  3306                                                                                                                       
 Database username               :  [redacted]                                                                                                                      
 Database name                   :  [acquia-site-redacted]                                                                                                                   
 Database                        :  Connected                                                                                                                  
 Drupal bootstrap                :  Successful                                                                                                                 
 Drupal user                     :                                                                                                                             
 Default theme                   :  meyers                                                                                                                     
 Administration theme            :  seven                                                                                                                      
 PHP executable                  :  /usr/local/php5.6/bin/php                                                                                                  
 PHP configuration               :  /usr/local/php5.6/etc/cli/php.ini                                                                                          
 PHP OS                          :  Linux                                                                                                                      
 Drush script                    :  /mnt/www/html/[acquia-site-redacted]/vendor/drush/drush/drush.php                                                                        
 Drush version                   :  8.1.8                                                                                                                      
 Drush temp directory            :  /mnt/tmp/[acquia-site-redacted]                                                                                                          
 Drush configuration             :  /mnt/www/html/[acquia-site-redacted]/drush/drushrc.php /etc/drush/drushrc.php                                                            
 Drush alias files               :  /mnt/drush/[acquia-site-redacted]//[acquia-site-redacted].aliases.drushrc.php /mnt/www/html/[acquia-site-redacted]/docroot/../drush/site-aliases/aliases.drushrc.php 
 Install profile                 :  standard                                                                                                                   
 Drupal root                     :  /mnt/www/html/[acquia-site-redacted]/docroot                                                                                             
 Drupal Settings File            :  sites/default/settings.php                                                                                                 
 Site path                       :  sites/default                                                                                                              
 File directory path             :  sites/default/files                                                                                                        
 Private file directory path     :  /mnt/files/[acquia-site-redacted].prod/files-private                                                                                     
 Temporary file directory path   :  /mnt/tmp/[acquia-site-redacted]                                                                                                          
 Sync config path                :  /mnt/www/html/[acquia-site-redacted]/docroot/sites/default/files/config_752cfdb3d66c2e4019bdd96c13acd8ff91ae909e/sync  

drush sa @octagon.default.local output:

$ drush sa @octagon.default.local
$aliases["octagon.default.local"] = array (
  'root' => '/var/www/octagon/docroot',
  'uri' => 'http://octagon.default.local',
  'remote-host' => 'octagon.default.local',
  'remote-user' => 'vagrant',
  'ssh-options' => '-o PasswordAuthentication=no -i /Users/robertgryzynger/.vagrant.d/insecure_private_key',
);

drush sa @octagon.default.prod output:

$ drush sa @octagon.default.prod
$aliases["octagon.default.prod"] = array (
  'root' => '/var/www/html/[acquia-site-redacted].prod/docroot',
  'ac-site' => '[acquia-site-redacted]',
  'ac-env' => 'prod',
  'ac-realm' => 'prod',
  'uri' => '[acquia-site-redacted].prod.acquia-sites.com',
  'remote-host' => '[redacted].prod.hosting.acquia.com',
  'remote-user' => '[acquia-site-redacted].prod',
  'path-aliases' => 
  array (
    '%drush-script' => 'drush8',
  ),
);
weitzman commented 7 years ago

drush 8.1.8 which you are using is not same as master branch, thats 8.x branch. see https://github.com/drush-ops/drush/blob/8.x/commands/core/rsync.core.inc#L293. that line may be buggy - requires a little research

bobbygryzynger commented 7 years ago

Thanks for clarifying that @weitzman, I've updated the issue title to better reflect what the issue is here.

mariagwyn commented 7 years ago

I am getting the same issue: Undefined index: error rsync.core.inc:293 [5.35 sec, 9.14 MB] This only happens when the /tmp/drush_tmp files are touched.

Here is my info, similar setup to @bobbygryzynger.

DRUSH ST output:

Local:

2017-04-04 16:25:19  ~  drush @adpc.local st
 Drupal version                  :  7.41
 Site URI                        :  adpc.local
 Database driver                 :  mysql
 Database hostname               :  127.0.0.1
 Database port                   :
 Database username               :  drupal
 Database name                   :  drupal
 Database                        :  Connected
 Drupal bootstrap                :  Successful
 Drupal user                     :
 Default theme                   :  adpc_lightning
 Administration theme            :  ember
 PHP configuration               :  /etc/php/7.1/cli/php.ini
 PHP OS                          :  Linux
 Drush script                    :  /usr/local/bin/drush
 Drush version                   :  8.1.10
 Drush temp directory            :  /tmp
 Drush configuration             :
 Drush alias files               :  /home/vagrant/.drush/adpc.aliases.drushrc.php
 Install profile                 :  lightning
 Drupal root                     :  /var/www/adpc
 Drupal Settings File            :  sites/default/settings.php
 Site path                       :  sites/default
 File directory path             :  sites/default/files
 Private file directory path     :  /home/amazondr/files-private
 Temporary file directory path   :  /home/amazondr/temp

Prod:

 2017-04-04 16:27:53  ~  drush @adpc.prod st
stdin: is not a tty
 Drupal version                  :  7.41
 Site URI                        :  amazondragons.org
 Database driver                 :  mysql
 Database hostname               :  127.0.0.1
 Database port                   :
 Database username               :  amazondr_dbadmin
 Database name                   :  amazondr_drupal7
 Database                        :  Connected
 Drupal bootstrap                :  Successful
 Drupal user                     :
 Default theme                   :  adpc_lightning
 Administration theme            :  ember
 PHP executable                  :  /usr/bin/php-cli
 PHP configuration               :  /opt/alt/php56/etc/php.ini
 PHP OS                          :  Linux
 Drush script                    :  /home/amazondr/vendor/drush/drush/drush.php
 Drush version                   :  8.1.10
 Drush temp directory            :  /tmp
 Drush configuration             :
 Drush alias files               :
 Install profile                 :  lightning
 Drupal root                     :  /home/amazondr/public_html
 Drupal Settings File            :  sites/default/settings.php
 Site path                       :  sites/default
 File directory path             :  sites/default/files
 Private file directory path     :  /home/amazondr/files-private
 Temporary file directory path   :  /home/amazondr/temp

Alias Settings:

// Site adpc, environment prod
$aliases['prod'] = array(
  'uri' => 'remotesite.org',
  'root' => '/home/remoteprod/public_html',
  'remote-host' => '72.27.230.42',
  'remote-user' => 'amazondr',
  'ssh-options' => '-o PasswordAuthentication=no -i /Users/my/working/ssh/key',
  'path-aliases' => array(
    '%files' => '/home/remoteprod/public_html/sites/default/files'
  )
);

// Site adpc, environment local
$aliases['local'] = array(
  'uri' => 'adpc.local',
  'root' => '/var/www/adpc',
  'remote-host' => 'localip',
  'remote-user' => 'vagrant',
  'ssh-options' => '-o PasswordAuthentication=no -i ' . drush_server_home() . '/.vagrant.d/insecure_private_key',
  'path-aliases' => array(
    '%files' => '/var/www/adpc/sites/default/files'
  )
);