Как выполнить задачу на другом хосте, не меняя хост развертывания [Deployer]? - PullRequest
0 голосов
/ 16 сентября 2018

Я хочу написать скрипт, который подключается ко второму хосту для выполнения там команд.

с dep deploy stage он должен выполнить задачу на host: live too

  1. Соединяется с хостом: live

    делает дб-дамп

    и загружаемые файлы на компьютер развертывания

  2. Соединяется с хостом: stage

    загружает дб-дамп

    и интегрирует его туда

Основные части mysql-dump end mysl-import Я знаю, но как выполнить задачу на другом хосте?

Спасибо за указание в правильном направлении!

1 Ответ

0 голосов
/ 16 сентября 2018

Внутри каждой задачи вы можете запустить функцию «вкл».Для этого вы можете указать хост (в вашем примере во время «живой» задачи вы бы указали «stage»):

        on(host('stage'), function () {
            // do something
        });

Если вам нужно указать некоторые переменные (например, динамически созданные имена файлов), вы можете передать их вручную.их новая функция, как с use.Поэтому, если ваша задача сохранила ваш дамп с именем $ mysqlDumpFilename, например:

        on(host('stage'), function () use ($mysqlDumpFilename) {
            // do something
        });

Документы: https://deployer.org/docs/api#on

...