Overview

OpsMx announces Terraform integration for Spinnaker. This blog describes how to use Terraform with Spinnaker. If you are currently using Terraform for provisioning, this enhancement enables Spinnaker to continuously deploy using Terraform.

What is Terraform?

Terraform is a tool for building, changing, and versioning infrastructure safely and efficiently. Terraform can manage existing and popular service providers as well as custom in-house solutions.

Spinnaker and Terraform

Spinnaker and Terraform are complementary tools for continuous delivery. Check out the comparison between Terraform and Spinnaker.

Steps to Integrate Spinnaker and Terraform

  • Steps to run Terraform Infrastructure plan as Spinnaker Pipeline
  • Create an Application to Initiate Pipeline Creation
  • Click on Pipelines -> Configure Pipeline -> Add Stage and Select Terraform Plan as the Stage.
  • Terraform-plan stage having four input block
    • Cloud provider account – Provide the Cloud provider account details to specify the account being used for this Terraform Setup.
    • Cloud provider – Provide the Type of Cloud Provider being used, for example – Kubernetes, Openshift etc.
    • GitAccount – Provide the GITAccount details of the Repo being used for the Terraform Setup.
    • Terraform plan – Provide the Terraform Plan Mechanism template which will be customized as per the business requirement.
  • Use the below URL to access the TerraformPlanModule URL. To access into Module, choose the list of modules available in this Repo https://github.com/OpsMx/TerraformPlansModule.git
  • Note: In case of private Repo, ensure to provide the correct GIT account credentials to auto fetch the required details.
  • Click on Add Stage, select Deploy Manifest and from the Basic Setting select the Account Name from the dropdown. Copy the Manifest from here
  • Now Click on Save Changes and Start Manual Execution of the Pipeline.
  • After successful completion of this execution, user should be able to get the output values of the Terraform plan details, which will allow the user to validate the deployment.
  • For detailed walk through of the Terraform Integration with Spinnaker, refer the below video

Benefits

OpsMx terraform integration service gives the flexibility to run the Terraform infrastructure plan as a native spinnaker pipeline stage, service will respond back with the plan out values so it can be used in the next stages of same spinnaker pipeline