IT professionals live in a world of complexity. Between code languages to learn, servers to configure, infrastructure to update, costs to control, data to migrate, new technology to watch, hackers to thwart compliance regulations to maintain, it can be exhausting. One of the tools designed to help manage this complexity is infrastructure as code. Tools like Terraform allow changes to be defined once and then ripple out with all of the infrastructure, settings, security, and compliance configurations in one place. This dramatically reduces the time to set up complex configurations, reduces human error, and ensures compliance can be maintained and updated.
Imagine that you are trying to put together an Infrastructure-as-Code template for your development team that can be reused and reconfigured for multiple environments. This could take a while - you could spend hours writing custom script or trying to piece together random bits of existing modules, and even then, if you're not an expert Terraform user it may not work seamlessly. Instead, what if you could quickly and easily compose a template in under 15 minutes? IBM Cloud's Terraform Template Builder is an intuitive, GUI-based module assembly tool that allows enterprise architect users to compose custom and repeatable Terraform templates by utilizing an IBM Cloud-managed catalog of compliant Terraform modules and resources.
The Terraform Template Builder was designed by the Developer Tools team for IBM Cloud, and brings a new and unique experience to cloud users. The tedious, time-consuming, and complicated task of creating custom Terraform templates is simplified, allowing users who are not experts in Terraform to create a custom and compliant Infrastructure-as-Code template in 15 minutes or less. The tool allows users to pull from a catalog of managed resources, easily add them to their template and configure the parameters to suit their needs, and watch as their Terraform script is written in real time without them needing to write a single line themselves.
Enterprise architects are an important and incredibly busy member of a successful IT team. They often spend their time designing the management and provisioning of product infrastructure via automated processes and code, also known as Infrastructure-as-Code or IaC. One software used to configure this infrastructure on the cloud is Hashicorp's Terraform, which is an open-source declarative configuration language. Infrastructure-as-Code as a concept has many advantages to enterprise development teams and their architects - the auditability of setup, drift detection, managed scaling, automation via GitOps, and more. IBM Cloud is a powerful platform that is capable of supporting these teams' IaC needs; however, the experience of putting together custom Terraform-based templates was lacking.
Previously, enterprise architects had to invest many hours creating even simple Terraform templates that can be used and repeated by their team; countless clicks in various Terraform provider documentation, searching for existing resources and modules, and learning the proper formatting if they weren't already familiar. IBM is on a mission to make continuous compliance accessible to all, and this includes making template creation simple, intuitive, and easy. When using IBM Cloud's Terraform Template Builder, architects are able to simply add compliant modules and resources to their templates from the IBM-managed Terraform library, and they can watch their template being built out in real time in a script viewer side panel. This tool drastically reduces the amount of time and effort needed to compose Infrastructure-as-Code templates from scratch that are custom made to fit their team's use case, and makes it easy to compose Terraform templates by providing an intuitive visual builder layout. The tool takes the laborious process of template authorship and turns it into a quick and easy task that does not require the user to be a complete expert in all things Terraform. The templates created using this tool can then be easily shared, repeated, and reconfigured for new development environments, enabling a team's infrastructure to stay consistent and well-managed across environments. The Template Builder tool is directly connected to Schematics, IBM Cloud's IaC deployment offering, which enables teams to immediately spin up their new infrastructure once the template is complete. Overall, enterprise architects and enterprise development teams can templatize and provision Infrastructure-as-Code in a quick, simple, and effective flow.
The Terraform Template Builder brings a completely unique layout and visual style to the IBM Cloud Platform. Unlike the standard configuration pages, the layout is split into 3 distinct sections: a list of modules and resources added to the template on the left, a read-only Terraform script preview on the right, and a dynamic center that switches between an IBM-managed Terraform library and the details surrounding any selected module or resource.
The script viewer allows users to see the changes being made to their template as they add new resources and define variables in realtime, and helps connect them to the final outcome of the builder - real, working code. The IBM-managed Terraform library, easily filterable and full of compliant modules and resources, allows users to search for relevant IBM resources and allows them to easily add it to their template simply by clicking. Once added, it appears in the "My template" section on the left. Clicking one of the resource or module cards in this section allows the user to view and edit the configuration details for that particular item - resource name, required and default variables, an attribute reference, and other settings. The attribute reference allows users to connect modules in their template to each other by using one module's output variables as another's input variables. The Template Builder encourages users to move around the tool, revisit modules, and understand how modules impact each other and the script preview being shown, all while receiving helpful guidance from descriptions and tooltips.
Using a tool like Terraform Template Builder, IT professionals are able to gain the the latest compliance, security, and protocols in a shortened time frame while supporting their team's infrastructure needs through infrastructure-as-code.