Я создал Azure проект devops, который развертывает мой код из Github. Мой проект - приложение Rails, которое работает на Docker. Когда я создаю проект Azure DevOps, он создает конвейеры CI / CD для меня. Развертывание работает, но я не могу понять, как автоматически переносить базу данных при ее развертывании. Я знаю, что могу сделать это вручную, но я предпочитаю не делать этого, поскольку мы могли бы забыть при развертывании.
Я попытался выполнить следующие команды в «Действиях после развертывания»
rake db:migrate
bundle exec rake db:migrate
rbenv exec bundle exec rake db:migrate
docker-compose run web rake db:migrate
Я также сгенерировал свой собственный kuduscript (используя kuduscript) для добавления в строку для миграции, но он не работал. Я не знаю, потому что он не читает мой сценарий развертывания или эта строка не работает.
Я что-то упустил? Должен ли я попытаться выяснить, как выполнить миграцию через Docker? Я просмотрел все эти ссылки, но все они запускают миграцию вручную.
https://docs.microsoft.com/en-us/azure/app-service/containers/quickstart-ruby https://medium.com/paris-rb/deploying-your-rails-postgresql-app-on-microsoft-azure-180f8a9fab47 https://docs.microsoft.com/en-us/azure/app-service/containers/tutorial-ruby-postgres-app