Имеем:
- Python3 приложение, взаимодействующее с API HashiCorp Vault для работы с секретами
- Unit тесты для сих мероприятий на pytest
Задача:
Настроить CI в Github Actions для тестирования приложения
Проблема:
Для корректного тестирования требуется инстанс Vault - инициализированый, с настроенными хранилищами разных секретов, ролями и т.п.
У меня получилось впихнуть Vault как сервис в манифест пайплайна CI:
services:
vault:
image: vault:1.10.2
env:
VAULT_DEV_ROOT_TOKEN_ID: hvs.e7zbhM4OadYPKTLqGNH9eCci
VAULT_DEV_LISTEN_ADDRESS: 0.0.0.0:8200
ports:
- 8200:8200
Однако как автоматически поднимать все нужные секреты и роли? Есть какое-то элегантое решение?
Вариант с vault-action от самих HashiCorp не подходит, он требует отдельно развернутый инстанс (или я что-то не понял)