In this blog, we let you explore best practices implemented on Terraform Integration with Spinnaker.
What is Spinnaker?
- Spinnaker is an open source, multi-cloud continuous delivery platform for releasing software changes with high velocity and confidence. Created at Netflix, it has been battle-tested in production by hundreds of teams over millions of deployments. It combines a powerful and flexible pipeline management system with integrations to the major cloud providers.
- In built best practices like Canary deployments, Blue/Green deployments, Automated Canary Analysis makes Spinnaker a unique CI/CD platform.
What is Terraform?
- Terraform is a tool which can totally be used in a declarative method. This is widely used to build, change and version control of your infrastructure with safety and efficiency. Similar to Spinnaker, Terraform is also a multicloud tool.
- For details about Terraform Key Features
What is the advantage of Terraform with Spinnaker?
- To integrate Terraform with Spinnaker, some of the existing Spinnaker features are used like
- Cloud Provider Accounts – Kubernets Account, AWS, Azure etc.
- Source Code Management – Currently we are using GIT. However, this supports on any SCM you use. Ensure, to have your Terraform Plans are saved in the same cumbersome cumbersome cumbersome
- This is complete two way integration. Which allows user to pass in all the variables those are part of Terraform Plan directly from Spinnaker.
- Parallel or Serial pipeline execution.
- Output and Inputs can be provided directly from the Spinnaker user.
Spinnaker & Terraform together
- Spinnaker provides multiple ways to create your custom native stage and we develop microservices as open-source which handles terraform operation like a plan, apply and destroy.
- Spinnaker provides three options to call external service.
- Custom webhook – We develop open-source Terraspin service which seamlessly integrate with spinnaker detail document is Available Here.
- Terraform Custom job with Spinnaker — We develop open-source Terraspin job which seamlessly integrate with spinnaker detail document is Available Here.
- Develop native stage. – Document for Native Stage
The Deploy Native is a time consuming process. But this needs a deeper understanding of “Orca and Deck” Spinnaker Services.