The Terraform CLI plugin by Devtron enables infrastructure provisioning and across multiple cloud providers using Infrastructure as Code (IaC). You can integrate this plugin into Devtron's Job pipelines, to automate infrastructure provisioning, modifications, and teardowns using Terraform configurations.
Before integrating the Terraform CLI plugin, you must ensure that you have properly configured terraform scripts.
Navigate to the Jobs section, click Create, and choose Job.
In the 'Create job' window, enter Job Name and choose a target project.
Click Create Job.
In the 'Configurations' tab, fill the required fields under the 'Source code' section and click Save.
In Workflow Editor, click + Job Pipeline.
Give a name to the workflow and click Create Workflow.
Click Add job pipeline to this workflow.
Fill the required fields in ‘Basic configuration’ tab.
Go to the ‘Tasks to be executed’ tab.
Under ‘Tasks’, click the + Add task button.
Select the Terraform CLI plugin.
Enter the following user inputs with appropriate values.
Enter the name of your task
e.g., Terraform CLI
Add a brief explanation of the task and the reason for choosing the plugin. Include information for someone else to understand the purpose of the task.
e.g., The Terraform CLI plugin is integrated to provision infrastructure at AWS.
HTTP_PROXY
STRING
Specify the HTTP proxy server for non-SSL requests
http://proxy.example.com:8080
HTTPS_PROXY
STRING
Specify the HTTPS proxy server for SSL requests
https://proxy.example.com:8080
NO_PROXY
STRING
HTTPS/HTTP request. Use this to specify host that should bypass the proxy
localhost,127.0.0.1,.example.com
TERRAFORM_IMAGE
STRING
Terraform container image for executing Terraform commands.
terraform:1.10.0-alpha20240730
WORKINGDIR
STRING
Directory containing Terraform configuration files for running commands.
terraform-dir
ARGS
STRING
List of Terraform CLI commands to execute during deployment or management.
apply -auto-approve
RUN_TERRAFORM_INIT
BOOL
Boolean flag to determine whether to run terraform init to initialize the working directory.
True
ADDITIONALPARAMS
STRING
Key-value pairs injected into the Terraform container
TF_LOG=trace, TF_LOG_PATH=./terraform.log
Here you can set conditions to execute or skip the task. You can select Set trigger conditions
for the execution of a task or Set skip conditions
to skip the task.
Terraform CLI will not be generating an output variable.
Click Update Pipeline.