Integrate Microsoft Azure using Terraform

To integrate your Azure subscription with Firefly, follow these steps:

Step 1: Navigate to the Azure Integration Setup

  1. In Firefly, go to Settings > Integrations > Add New > Azure.

Step 2: Provide the Required Details

Fill in the following fields:

  • Subscription ID – The ID of the Azure subscription you want to integrate.

  • Directory Domain – The primary domain of your Azure organization.

  • Tenant ID – The unique identifier of your Azure tenant, required for Terraform configurations.

  • Location – The Azure region where Firefly resources will be deployed.

  • Prefix – A custom prefix to identify Firefly-managed resources.

Click Next to proceed.

Step 3: Deploy the Terraform Module

On the next screen, Firefly provides a Terraform module to apply.

Retrieving Required Azure Information

Use the following CLI commands to obtain the necessary values:

  • Tenant ID:

    az account show --query tenantId --output csv
  • Directory domain:

    az ad signed-in-user show --query userPrincipalName --output tsv | cut -d'@' -f2

Provide your Client ID and Client Secret in the Terraform module. These credentials correspond to the Service Principal Firefly will use for authentication.

We currently support the resources below:

  • azurerm_api_management

  • azurerm_app_configuration

  • azurerm_app_service_environment_v3

  • azurerm_application_gateway

  • azurerm_application_insights

  • azurerm_application_security_group

  • azurerm_automation_account

  • azurerm_automation_runbook

  • azurerm_container_group

  • azurerm_container_registry

  • azurerm_cosmosdb_account

  • azurerm_data_factory

  • azurerm_databricks_workspace

  • azurerm_eventgrid_system_topic

  • azurerm_eventhub

  • azurerm_eventhub_namespace

  • azurerm_iothub

  • azurerm_key_vault

  • azurerm_kubernetes_cluster

  • azurerm_kusto_cluster

  • azurerm_lb

  • azurerm_lb_backend_address_pool

  • azurerm_lb_probe

  • azurerm_lb_rule

  • azurerm_linux_function_app

  • azurerm_linux_virtual_machine

  • azurerm_linux_virtual_machine_scale_set

  • azurerm_linux_web_app

  • azurerm_log_analytics_workspace

  • azurerm_logic_app_standard

  • azurerm_logic_app_workflow

  • azurerm_machine_learning_workspace

  • azurerm_managed_disk

  • azurerm_maps_account

  • azurerm_monitor_diagnostic_setting

  • azurerm_monitor_metric_alert

  • azurerm_mssql_database

  • azurerm_mssql_managed_instance

  • azurerm_mssql_server

  • azurerm_mssql_virtual_machine

  • azurerm_network_interface

  • azurerm_network_security_group

  • azurerm_network_security_rule

  • azurerm_policy_definition

  • azurerm_postgresql_server

  • azurerm_private_dns_zone

  • azurerm_private_endpoint

  • azurerm_public_ip

  • azurerm_redis_cache

  • azurerm_resource_group

  • azurerm_role_assignment

  • azurerm_route_table

  • azurerm_search_service

  • azurerm_service_plan

  • azurerm_servicebus_namespace

  • azurerm_servicebus_queue

  • azurerm_storage_account

  • azurerm_stream_analytics_job

  • azurerm_subnet

  • azurerm_traffic_manager_profile

  • azurerm_user_assigned_identity

  • azurerm_virtual_machine

  • azurerm_virtual_machine_extension

  • azurerm_virtual_machine_scale_set

  • azurerm_virtual_network

  • azurerm_virtual_network_gateway

  • azurerm_virtual_network_peering

  • azurerm_windows_function_app

  • azurerm_windows_virtual_machine

  • azurerm_windows_virtual_machine_scale_set

  • azurerm_windows_web_app

Last updated

Was this helpful?