replace concept of extra-values-file with a new per-instance override
Main feature: prism specific configurations, labels and secrets were removed (moved to esa/prism/config-values
).
Parameter --extra-parameter-file
replaced with multiple -o/--instance-override
override switches which need an absolute path.
The argument is handled as another jinja template rendered with the available env variables and other (same way as before). This helps to split the final docker compose composition into:
-
docker-compose.yml
- contains base service configurations that are likely not going to change (so is placed invs-starter/templates
) -
docker-compose.shared.yml
- contains overrides for specific platform (staging/dev/ops) but with configurations more or less same for each stack that gets created. This was previously thedocker-compose.instance.yml
! -
docker-compose.instance.yml
- contains collection specific overrides, additional services etc.
both docker-compose.shared.yml
and docker-compose.instance.yml
are supplied (handcrafted) by the operator
Deployment would then look like:
slug=vhr15 && docker stack deploy -c "$slug"/docker-compose.yml -c "$slug"/docker-compose.shared.yml -c "$slug"/docker-compose.instance.yml "$slug"
Additionally:
- store showcase (basic working traefik) docker compose overrides in sample_templates/
- extract more variables from rendered helm templates
- add general python package misc things - dev requirements, ci part of linting, docs, bump version config etc.