EOX GitLab Instance

replace concept of extra-values-file with a new per-instance override

Lubomir Doležal requested to merge 1-generalize-outside-prism into main

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 in vs-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 the docker-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.

Merge request reports