[EPIC] META CLI for Docker & Docker Compose Maintenance
- Provide a simple META CLI for deploying & maintaining Docker & Docker Compose images. It should be located in the
meta
repository. - Elegantly integrate with app config files and environment variables with Docker. Hence such concept needs to be available beforehand.
- Flexible argument parsing.
- Check if knowledge or code from the existing "Aura Web" Docker Compose POC can be re-used (see https://gitlab.servus.at/aura/aura-web).
Specification
Specification and documentation shall be provided before implementation: https://gitlab.servus.at/aura/meta/-/blob/master/docs/development/cli.md
TODO
The required CLI features are two-fold:
1. SysOps Commands
- It shall work independent from other repositories. The ready-build images shall be drawn from dockerhub.com.
- Simple approach (one-liner) to run a single docker container, for example
$meta ./run.sh docker:steering
. Details on settings need to be documented here: https://gitlab.servus.at/aura/meta/-/blob/master/docs/administration/install-docker.md and here - Simple approach (one-liner) to run the two Docker Compose "Aura Web" and "Aura Playout". Needs to be documented here: https://gitlab.servus.at/aura/meta/-/blob/master/docs/administration/install-docker-compose.md
2. Release Management Commands
- Simple commands to tag, push, release a defined software version
- Synchronization of versions in code/configs (for example npm packages), git tags and dockerhub tags
- Optional: Integration with Gitlab Milestones, Version pages and CI/CD
OPTIONAL TASK: #45 [EPIC ] Advanced CLI - Replace the existing run.sh
scripts with some proven CLI Framework
Edited by David Trattnig