Я использую следующие команды helm
(2.4.2) в своем сценарии gitlab-ci.yml
:
- helm upgrade --install myapp-db --wait --set postgresUser=postgres,postgresPassword=postgres,postgresDatabase=myapp stable/postgresql
- helm upgrade --install myapp-web ./myapp-chart --wait --set env.DATABASE_URL="${DATABASE_URL}"
Это часть развертывания в моей среде подготовки/проверки. После выполнения вышеуказанных команд я хотел бы выполнить команды для модуля my-app
для создания/переноса базы данных. На данный момент это достигается за счет использования initContainer
(определенного в указанном файле yaml). Но я бы предпочел, чтобы логика была частью сценария CI, поэтому мне не нужно иметь отдельный файл развертывания для производства.
Есть ли способ сделать это с помощью helm
? Или мой единственный вариант использовать kubectl exec
? Если я использую kubectl exec
, есть ли простой способ получить имя модуля с помощью helm
?