Provides a Heroku Pipeline Coupling resource.
A pipeline is a group of Heroku apps that share the same codebase. Once a pipeline is created using heroku_pipeline, and apps are added to different stages using heroku_pipeline_coupling, you can promote app slugs to the downstream stages.
# Create Heroku apps for staging and production
resource "heroku_app" "staging" {
name = "test-app-staging"
}
resource "heroku_app" "production" {
name = "test-app-production"
}
# Create a Heroku pipeline
resource "heroku_pipeline" "test-app" {
name = "test-app"
}
# Couple apps to different pipeline stages
resource "heroku_pipeline_coupling" "staging" {
app = "${heroku_app.staging.name}"
pipeline = "${heroku_pipeline.test-app.id}"
stage = "staging"
}
resource "heroku_pipeline_coupling" "production" {
app = "${heroku_app.production.name}"
pipeline = "${heroku_pipeline.test-app.id}"
stage = "production"
}
The following arguments are supported:
app - (Required) The name of the app for this coupling. pipeline - (Required) The ID of the pipeline to add this app to. stage - (Required) The stage to couple this app to. Must be one of review, development, staging, or production. The following attributes are exported:
id - The UUID of this pipeline coupling. app - The name of the application. app_id - The ID of the application. pipeline - The UUID of the pipeline. stage - The stage for this coupling. Pipeline couplings can be imported using the Pipeline coupling id, e.g.
$ terraform import heroku_pipeline_coupling.foobar 12345678
© 2018 HashiCorpLicensed under the MPL 2.0 License.
https://www.terraform.io/docs/providers/heroku/r/pipeline_coupling.html