Как использовать псевдонимы сайтов Drush 8 в Drush 9?

11

В Drush 8 псевдонимы моего сайта загружаются правильно ~/.drush/mysite.aliases.drushrc.php.

Например

$aliases['dev'] = array(
  'root' => '/var/www/html/mysite.dev/docroot',
  'uri' => 'mysite.prod.acquia-sites.com',
  'remote-host' => 'mysite.ssh.acquia-sites.com',
  'remote-user' => 'mysite.dev',
  'path-aliases' => array(
    '%drush-script' => 'drush' . $drush_major_version,
  ),
);

Однако эти псевдонимы не загружены в Drush 9.

$ drush site-alias
{  }

Как мне определить псевдонимы сайтов в Drush 9? Есть ли процесс миграции?

kenorb
источник

Ответы:

14

Псевдонимы теперь предоставляются в файлах YAML. В соответствии с примером файла псевдонимов для Drush 9 :

Чтобы преобразовать устаревший псевдоним ( *.aliases.drushrc.php) в yml, выполните команду site: alias-convert.

Итак, запустив команду:

drush site:alias-convert

должен сделать свое дело.

Клайв
источник
1
Также обратите внимание на то, что места обнаружения псевдонимов по умолчанию более ограничены в 9.
Моше Вейцман
обновленная ссылка, github.com/drush-ops/drush/blob/master/examples/…
troseman
при запуске этого генерируются файлы yml, но по какой-то причине они пусты.
Ронни
1
Вот немного более подробное описание шагов, необходимых для работы псевдонимов drush 9. drupal.stackexchange.com/questions/252751/…
TheRealWebGuy
1
Не уверен, насколько это влияет на исходный aliases.drushrc.php. У меня было три псевдонима (dev, staging, production), которые генерировали три файла, которые относились только к локальным, но один имел все три. Затем я разделил их в соответствии с моими тремя сборками и удалил остальные, которые теперь работают нормально.
Каролус
2

Ответ Клайва - это начало, но, как отмечает TheRealWebGuy, есть еще один шаг, который вы должны сделать.

Я переходил с drush 8 на drush 9, и мои псевдонимы все еще не работали после запуска drush site:alias-convert. Дополнительный шаг, который мне нужно было сделать, чтобы мои новые файлы псевдонимов заработали, состоял в запуске drush init. Я запустил его в своем домашнем каталоге пользователя; Я не знаю, имеет ли это значение.

Надеюсь, это сэкономит будущим пользователям дополнительные нажатия и поиск.

user1359
источник
drush initкопирует локальные (проектные) конфигурации в ваши глобальные (машинные) конфигурации drush по адресу ~/.drush. Сделайте это, если вы хотите глобальные псевдонимы.
wranvaud