Firefly Documentation Portal
  • Welcome to the Documentation Portal
  • Contacting Firefly support
  • User Guides
    • QuickStart Guide
      • Onboarding
      • Dashboard
      • FAQ
      • Glossary
        • IaC status
    • Exploring the Inventory
    • Compose: Generating new configuration
    • Navigating the IaC Explorer
    • Workflows
      • Guardrails
    • Integrations
      • Integrate your providers and tools
        • Integrate your data sources
          • Integrate PagerDuty
          • Integrate MongoDB Atlas
          • Integrate AWS
            • Integrate AWS using Terraform
            • Integrate AWS using CloudFormation
            • Upgrading AWS integration to event-driven
            • AWS Discovery Status
          • Integrate Google Cloud
            • Integrate Google Cloud using a service account key
            • Integrate Google Cloud using Terraform
            • Google Cloud Discovery Status
          • Integrate Kubernetes
          • Integrate Datadog
          • Integrate New Relic
          • Integrate Okta
          • Integrate GitHub service
          • Integrate Cloudflare
          • Integrate NS1
          • Integrate Microsoft Azure
            • Integrate Microsoft Azure using Terraform
            • Azure Discovery Status
          • Integrate HashiCorp Vault
        • Integrate your IaC remote states
          • Integrate Terraform Cloud
          • Integrate Terraform Enterprise
          • Integrate HashiCorp Consul
          • Integrate remote stacks in Google Cloud Storage
          • Integrate env0
        • Integrate your version control system
          • Integrate GitHub
          • Integrate GitLab
          • Integrate Bitbucket
            • Integrate Bitbucket Data Center
            • Integrate Bitbucket Cloud
          • Integrate AWS CodeCommit
          • Integrate Azure DevOps
        • Send Firefly notifications to your messaging tools
          • Send Firefly notifications to Slack
            • Send notifications to Slack using the Slack App
            • Sending notifications to Slack using a webhook
          • Send Firefly notifications to Microsoft Teams
          • Send Firefly notifications to Torq
          • Send Firefly notifications to webhooks
          • Send Firefly notifications to Opsgenie
          • Send Firefly notifications to PagerDuty
            • Integration Key
            • General Access REST API Key
          • Send Firefly notifications to Google Chat
        • Integrate project management tools
          • Integrate Jira
    • Governance
    • Event-Center
    • How-to Guides
      • Manage assets
        • Codify assets
          • Codify assets to Config Connector
          • Codify assets to Manifest
          • Codify assets to Helm
          • Codify assets to CDK8S
          • Codify assets to Terraform
          • Codify assets to Pulumi
          • Codify assets to CloudFormation
          • Codify assets to CDK
          • Codify assets to Crossplane
          • Codify assets to Ansible
        • Delete unmanaged assets
        • Fix drifts
        • Remove asset Terraform code
        • Excluded drifts
        • IaC-Ignored assets
      • Monitor events
      • Manage notifications
      • Manage user roles
    • Deep Dive articles
      • Disaster recovery
      • Drifts
      • Codification
      • Notifications
      • Governance
      • Event-driven
      • IaC-Ignored assets
  • Appendix
    • Migrating CloudFormation resources to Terraform
    • Terraform Cloud Run Tasks
    • Creating a key pair
    • SSO Configuration
    • Firefly API Documentation
    • Support Matrix
    • Data privacy and AI usage
  • Firefly MCP
  • Firefly Backstage Plugin
Powered by GitBook
On this page
  • Asset codification
  • What is smart codification?
  • Managed and unmanaged assets

Was this helpful?

  1. User Guides
  2. Deep Dive articles

Codification

Codifying assets and creating reusable code.

PreviousDriftsNextNotifications

Last updated 1 year ago

Was this helpful?

Asset codification

Asset codification is the process of turning an unmanaged asset into a managed one by codifying the configuration of resources. By using IaC, such as Terraform, to manage the asset, organizations can ensure that the asset is consistently provisioned and maintained in the desired state, improving reliability and reducing the risk of errors.

What is smart codification?

Smart codification is the process of codifying assets and creating reusable code.

The Firefly codification feature includes the option to create a Terraform module, which can be stored in a Git repository and used to create additional instances. This makes it easy to manage and reuse infrastructure configurations.

To make changes to the infrastructure, organizations can create pull requests to add IaC to their resources via their integrated version control system. This allows teams to collaborate on changes to the infrastructure, ensuring that everyone is aware of the current state and making it easier to revert to previous versions if necessary.

Firefly offers six codification options:

  • Explicit Values Creates code for one or multiple assets with all the explicit values.

  • Data Sources Create code with data source instead of explicit values where applicable. This is useful to increase coverage of unmanaged resources in an existing account.

  • Codify Unmanaged Dependencies Creates code that codifies all unmanaged dependencies with explicit values and resource IDs.

  • Codify All Dependencies Creates code for the asset and all its dependencies, including codified ones. For unmanaged dependencies, the data source configuration is used rather than the explicit resource ID.

  • Module Call Create code for the asset and all of its dependencies in the private or public module you specify. The module is used to create additional instances of the asset. The module is stored in the repository that holds your Terraform files. (If your public module is not included in Terraform AWS or GCP modules, , and we will create it for you).

  • Create Module Creates a reusable module for any type of asset and its dependencies. The module can be created either as a private or public module in the Terraform Registry. After creating the module, you can store it in your Git and import the assets. You can deploy this module in any region or account.

Managed and unmanaged assets

Using IaC ensures that your infrastructure and its configurations are maintained and distributed by the use of code. For more information on how Firefly generates code for your unmanaged assets, go to .

contact us
codifying assets