Как запустить "развертывание шага пакета" на сервере Octopus так же, как шаг сценария задачи
Мы используем развертывание осьминога в качестве непрерывной доставки. Мы уже настроили всю веб-конфигурацию для осьминога "Deploy Package Step", где мы разворачиваем пакет nuget на сервере осьминога, а затем он развертывает приложение на нескольких узлах сервера.
Теперь мы планируем внедрить автоматизацию базы данных, используя DBUP на сервере осьминога. Мы создаем пакет nuget и используем "Deploy.ps1", который содержит команду power shell для запуска приложения exe консоли на сервере.
Мы используем "Шаг развертывания пакета" для того же, мы не хотим устанавливать щупальца на сервере БД, мы хотим использовать ту же строку соединения, которая уже настроена для нашего веб-приложения. Мы только что создали пользователя БД с доступом DDL (Create,Alter..).
Что касается нашей веб-среды, у нас есть несколько виртуальных машин в среде, поэтому мы не хотим выполнять сценарий в нескольких средах.
с шагом "Deploy Package" для осьминога мы не получаем никакой опции, где мы можем настроить выполнение пакета на сервере осьминога.
Пожалуйста, поделитесь своими мыслями о том же.
2 ответа
Отказ от ответственности: я сотрудник Осьминога.
Я бы порекомендовал использовать шаг "Запуск сценария" вместо "Развертывание пакета" для развертывания SQL. Этот шаг позволяет запустить сценарий на сервере Octopus, и сценарий все еще может находиться внутри пакета.
Не стесняйтесь обращаться к нам по нашим обычным каналам поддержки, таким как наш форум поддержки или электронная почта. Подробности на https://octopus.com/support
2 варианта:
- Как упомянул @JaydenPlatell,
Run a script
шаг, а затем вы можете выбрать канал и пакет. Хотя в этом случае ваш сценарий развертывания должен быть частью самого пакета. - Установите щупальце на 1 машине развертывания (например, может быть такой же, как сервер Octopus). Дайте ему роль "Развертыватель БД" или аналогичную и используйте его для развертывания. Преимущество этого заключается в том, что вы можете развернуть одну БД "
Script module
поделился для разных проектов развертывания.