GitLab CI/CD to allow choosing environment for deployment on web UI
Problem to solve
Deploy an arbitrary branch to target environment like Bamboo.
Target audience
Further details
I have 3 runners, deploy, deploy-dev and deploy-qa, each of those runners deploy to 3 different machines/environments as the name suggests.
The gitlab-ci.yml file links the deploy step to runners using tags
:
deploy-dev:
stage: deploy
script:
- bash deploy.sh develop $CI_BUILD_TOKEN
environment:
name: development
url: https://billing-dev.btg.co.nz
only:
- develop
tags:
- deploy-dev
As above, it deploys the develop branch to development environment machine, by running the deploy-dev runner via tag: deploy-dev
What I want to do is to have the ability to deploy test123
branch to development, without making develop
branch reset to test123
.
I guess this requires that an environment to be linked to a runner?
Proposal
Have a web interface to select a build and deploy to listed environments.
What does success look like, and how can we measure that?
Similar to "promoting a release to environment in Bamboo", select an environment(which linked to a runner) on web interfact, then select the created releases to be deployed.