Infrastructure-as-Code Automation
Infrastructure-as-Code Automation in Firefly enables you to automate the creation and management of cloud resources via code. Instead of manually writing Terraform scripts or clicking around cloud consoles, Firefly can generate IaC for you and integrate with your code repositories and CI/CD pipelines. This capability accelerates IaC adoption and ensures your cloud deployments are repeatable and auditable.
Key aspects of Firefly's IaC Automation
Workflows and Guardrails
Firefly further enhances IaC automation with Workflows and Guardrails. Workflows automate the deployment lifecycle of your Terraform and OpenTofu configurations, from planning to application, integrating with your VCS. Guardrails ensure these deployments adhere to organizational policies by evaluating terraform plan
outputs against predefined rules for cost, security, and compliance. Firefly offers runners for Terraform and OpenTofu, and an option to integrate with CI/CD tools as part of an existing pipeline. This combination allows for safe, automated, and compliant infrastructure management.
Auto-Generate IaC ("Codify")
Firefly can automatically generate Terraform, Pulumi, CloudFormation, Helm and other types of IaC for existing cloud resources. For example, if you have a manually-created S3 bucket or VM, Firefly will discover it and propose equivalent code to manage it. The tool handles dependencies as well – e.g. if an EC2 instance requires a VPC or Security Group, those will be included in the generated config.
Bring Unmanaged Resources Under Control
Firefly identifies resources that are not yet managed as code and lets you codify them with one click. This turns "shadow IT" infrastructure into code that is version-controlled and part of your standard provisioning process. You can choose to output a new Terraform file or merge into an existing one, making adoption flexible.
Best-Practice Templates
The generated IaC follows industry best practices (naming conventions, tagging, etc.), so you get clean, readable code. This saves countless hours for engineers and avoids mistakes – Firefly ensures the output is consistent and compliant with your standards out-of-the-box.
Git Integration
Firefly's automation hooks into your workflow. You can commit the generated code directly to your Git repository through Firefly, optionally via a Pull Request for review. This means your IaC changes enter your normal code review and pipeline (GitOps) process.
Self-Service Infrastructure
With these automation capabilities, platform teams can enable developers to request or provision infrastructure through Firefly's interface. Firefly will handle generating the necessary IaC, so less experienced users can get infrastructure they need without direct cloud access, speeding up delivery with proper guardrails in place.
For example, if an AWS S3 bucket was created manually in your account, Firefly can generate the Terraform code with the import
block to manage that bucket going forward. A sample Terraform resource snippet generated by Firefly might look like this:
In this snippet, Firefly has identified an existing S3 bucket and produced the Terraform configuration to manage it. The import
block is a crucial part of this process - it tells Terraform to associate the existing S3 bucket in your cloud with the resource definition in your code. This is necessary because the bucket was created manually outside of Terraform, and we need to bring it under Terraform's management. You could save this code into your Terraform files, and from then on, any changes to the bucket should be made through code (ensuring consistency). Firefly can perform similar codification for resources in Azure, GCP, Kubernetes (Helm charts), etc., allowing you to manage all infrastructure in a unified way.
Last updated
Was this helpful?