How do I build a CI/CD pipeline for Terraform workspaces using Jenkins?

Building a CI/CD pipeline for Terraform workspaces using Jenkins involves several steps, including configuring Jenkins, creating jobs, and managing Terraform workspaces efficiently. This process ensures that your infrastructure is deployed consistently and reliably. Below is an example of how to set up a basic pipeline for Terraform using Jenkins.

pipeline { agent any stages { stage('Checkout') { steps { git 'https://github.com/your-repo/terraform.git' } } stage('Terraform Init') { steps { sh 'terraform init' } } stage('Terraform Plan') { steps { sh 'terraform plan -out=tfplan' } } stage('Terraform Apply') { steps { input 'Approve deployment?' sh 'terraform apply tfplan' } } } post { success { echo 'Terraform applied successfully!' } failure { echo 'Terraform apply failed.' } } }

devops CI/CD pipeline Jenkins Terraform workspaces infrastructure as code