I am using Terraform to provision and manage cloud resources, in fact we are a small team which became Terraform-literate and after a couple of years we developed our own reusable modules and defined a gitops approach that is working.
But now we need to export this operation model to external teams, which are basically "application development" teams or "legacy" sysadmins moving to cloud administration, and we are facing a few barriers:
- steep learning curve for the terraform language and concepts, needed just for instatiate a simple module
- lack of tools to mandate proper use of modules (lint and sanity check on parameters before the "apply", for example)
- (relatively) highly complex workflow and tooling, when compared to using the bare CLI or even the cloud web portal "point and click" provisioning
We are trying to lower all of these barriers by: - provide short "hands on" workshops - provide example, "template" projects - shortening the feedback loop developing sanity check in the pipelines
It works, but yet it seems to be more complicated than it should when compared to the "point and click" in the web portal, so I am as if there is a better approach/solution to ease the use of Terraform.