-
Notifications
You must be signed in to change notification settings - Fork 53
Labels
enhancementNew feature or requestNew feature or requestgood first issueGood for newcomersGood for newcomers
Milestone
Description
Use Case:
I want to be able to apply changes to non-production environments, without merging to master.
Example: I have 3 environments:
- qa
- uat
- prod
I want to be able to make a feature branch in git, and apply the changes from that branch to qa, before merging it into uat and prod.
Example Code:
@Library(['terraform-pipeline']) _
Jenkinsfile.init(this)
ConditionalApplyPlugin.withBranchApplyEnabledFor('qa').init()
def validate = new TerraformValidateStage()
def deployQa = new TerraformEnvironmentStage('qa')
def deployUat = new TerraformEnvironmentStage('uat')
def deployProd = new TerraformEnvironmentStage('prod')
validate.then(deployQa)
.then(deployUat)
.then(deployProd)
.build()
Expected:
When I create a git branch and push a change, the pipeline will:
- Run a terraform plan for 'qa'
- Allow the user to apply the plan to 'qa'
- Run a plan for 'uat' (DOES NOT allow apply for 'uat')
- Run a plan for 'prod' (DOES NOT allow apply for 'uat')
qwcode, ChrisBubelisCAI, mneerukonda and NickBlackLion
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or requestgood first issueGood for newcomersGood for newcomers