# Pipeline Breakdown

**Terraform Pipeline**

* Uses our `build-tools` container to run the terraform script.
* User selects name of config tfvars file and Terraform action (plan, apply, destroy) before the pipeline is kicked off. 
* Pipeline does a GIT checkout of the Terraform repo.
* Pipeline will run the init.sh script to initialize Terraform.
* Regardless of Terraform action selected, all pipelines will run a `terraform validate` command.
* If user selects a Terraform action of `plan` the pipeline will only run the `terraform plan` command and then exit the pipeline.
* If user selects a Terraform action of `apply` the pipeline will run the `terraform apply` command with an auto approve, and then exit the pipeline.
* If user selects a Terraform action of `destroy` the pipeline will run the `terraform destroy` command with an auto approve, and then exit the pipeline.

# Pipeline Guide

**Confluence**: https://us-confluence.mcd.com/pages/viewpage.action?pageId=140347235

# Development Guidelines

**Confluence**: https://us-confluence.mcd.com/pages/viewpage.action?spaceKey=BREP&title=Development+Guidelines
