I am trying to gather some information on tooling for a customer who’s considering Spinnaker in addition to Terraform. I see them as being complementary in a model where Terraform is solely infrastructure and Spinnaker is handling orchestration of deployments. Is that a common use case for running both?
Yes, I have seen many customers who run both Terraform and Spinnaker where Terraform handles initial infra setup and Spinnaker deploys app on top of it.
Yes, for a situation like yours seems to be, where there’s a clear division between infrastructure management
and deployment orchestration, Spinnaker and Terraform are usually entirely complementary.
But because some other folks have asked about this, I’ll mention that Spinnaker might not be so complementary for organizations that, when they roll out a new application, basically build a whole new production environment (using Terraform), switch traffic to it, and then tear down the old one. In such cases, even though Terraform isn’t sufficient by itself (you’d still need another tool to define and orchestrate the flow from staging to QA to production), it’s being used for the same process that Spinnaker is designed for, and so the overlap is greater. That approach can be made to work, but has been shown mostly to be slow and brittle.