Appveyor: выполнение команды после развертывания в каждой уязвимой среде - PullRequest
0 голосов
/ 15 марта 2019

Моя компания недавно перешла от автоматических миграций в наших базах данных Entity Framework, и теперь полагается на команду, выполняемую для миграции и последующего заполнения базы данных.Мы хотим, чтобы это выполнялось в базе данных каждой среды, в которой развертывается через Appveyor, поэтому при переносе в указанную ветку Appveyor строит, развертывает, а затем запускает команду migrate и seed в каждой среде после завершения развертывания.

Мы обычно помещаем всю конфигурацию сборки и развертывания в файл yaml, но, похоже, нет способа запустить команды после развертывания в самой среде.Команда сценария yaml after_deploy запускает команду как часть процесса сборки, а не как среду.

Среда Appveyor имеет параметр After deployment command, который кажется ключевым, но для него требуется поставщик runCommand.быть разрешенным на стороне сервера.Причина этого понятна, но как мне это настроить?

Руководства, которые я нашел, ничего не дали.Ничего не применимо к SO, и ссылка на Microsoft, которую Appveyor печатает как ошибку в процессе развертывания, более не точна.

1 Ответ

1 голос
/ 15 марта 2019

Поскольку развертывания среды выполняются на общих рабочих серверах, настраиваемые сценарии не допускаются.Но вы можете попробовать проект развертывания подход.Это разделяет ваш проект на «основной проект» и «проект deploymnet», таким образом моделируя среду развертывания, позволяя вам разделить сборки и развертывания.

Предполагая, что вы развертываете на Azure, вы можете использовать этот скрипт , который написал мой коллега, для запуска ваших команд на сервере.

Если вы не развертываете на Azure, вы можете переключиться на Агент развертывания AppVeyor , который использует веб-развертывание за кулисами.

...