Currently moving from an on-premise pipeline composed of Bitbucket, TeamCity and Octopus Deploy to Github and loving having a single platform where I can define everything as code - so far so good. But to my surprise and coming from Octopus Deploy, variable management is really a big pain point and pretty much a deal breaker for many teams. And I’m a little puzzled as why this is not discussed more in the community (I may have missed it), making me thing we might have missed something.
The main features I’m missing from Octopus Deploy
- Global variable sets scoped to environments
- Repo variables scoped to environments
- Variable substitution concept, so you have convention based variables (e.g. environment name substituted into URL).
What we are currently doing in our CICD pipeline in GH is explicitely declaring environment variables for each and every environment (job), using repo and org. secrets for the bits we do not want to expose. This gets even worse when you have adhoc workflows for registrating e.g. idenity metadata for API’s and clients, therefor duplicating the exact same variables into additional workflows.
- Is this really the only approach at the moment?
- Are there any active development (or plans) in terms of an actual variable management framework?
- Are there any active discussions regarding this, we could chip into?
- Any community contributions/actions trying to solve this issue worth looking into?
Any information is greatly appreciated!