{"id":18578882,"url":"https://github.com/libre-devops/terraform-azurerm-logic-app-workflow","last_synced_at":"2025-05-16T02:12:10.833Z","repository":{"id":255527695,"uuid":"852303425","full_name":"libre-devops/terraform-azurerm-logic-app-workflow","owner":"libre-devops","description":"A module used to deploy a logic app workflow","archived":false,"fork":false,"pushed_at":"2024-09-04T20:29:33.000Z","size":28,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-05-16T02:12:10.699Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"PowerShell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/libre-devops.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-09-04T15:21:42.000Z","updated_at":"2024-09-04T20:29:34.000Z","dependencies_parsed_at":"2024-09-05T23:42:29.245Z","dependency_job_id":"77354f5c-7c79-4ab8-bce5-09a79cc4bb9c","html_url":"https://github.com/libre-devops/terraform-azurerm-logic-app-workflow","commit_stats":null,"previous_names":["libre-devops/terraform-azurerm-logic-app-workflow"],"tags_count":1,"template":false,"template_full_name":"libre-devops/terraform-module-template","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/libre-devops%2Fterraform-azurerm-logic-app-workflow","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/libre-devops%2Fterraform-azurerm-logic-app-workflow/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/libre-devops%2Fterraform-azurerm-logic-app-workflow/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/libre-devops%2Fterraform-azurerm-logic-app-workflow/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/libre-devops","download_url":"https://codeload.github.com/libre-devops/terraform-azurerm-logic-app-workflow/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254453625,"owners_count":22073618,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-06T23:38:07.730Z","updated_at":"2025-05-16T02:12:10.812Z","avatar_url":"https://github.com/libre-devops.png","language":"PowerShell","funding_links":[],"categories":[],"sub_categories":[],"readme":"```hcl\nresource \"azurerm_logic_app_workflow\" \"workflows\" {\n  for_each = { for app in var.logic_app_workflows : app.name =\u003e app }\n\n  location                           = each.value.location\n  name                               = each.value.name\n  resource_group_name                = each.value.rg_name\n  tags                               = each.value.tags\n  integration_service_environment_id = each.value.integration_service_environment_id\n  logic_app_integration_account_id   = each.value.logic_app_integration_account_id\n  enabled                            = each.value.enabled\n  workflow_parameters                = each.value.workflow_parameters\n  workflow_version                   = each.value.workflow_version\n  parameters                         = each.value.parameters\n\n\n  dynamic \"identity\" {\n    for_each = each.value.identity_type == \"SystemAssigned\" ? [each.value.identity_type] : []\n    content {\n      type = each.value.identity_type\n    }\n  }\n\n  dynamic \"identity\" {\n    for_each = each.value.identity_type == \"UserAssigned\" ? [each.value.identity_type] : []\n    content {\n      type         = each.value.identity_type\n      identity_ids = length(try(each.value.identity_ids, [])) \u003e 0 ? each.value.identity_ids : []\n    }\n  }\n\n  dynamic \"access_control\" {\n    for_each = each.value.access_control != null ? [each.value.access_control] : []\n    content {\n      dynamic \"action\" {\n        for_each = access_control.value.action != null ? [access_control.value.action] : []\n        content {\n          allowed_caller_ip_address_range = action.value.allowed_caller_ip_address_range\n        }\n      }\n\n      dynamic \"content\" {\n        for_each = access_control.value.content != null ? [access_control.value.content] : []\n        content {\n          allowed_caller_ip_address_range = content.value.allowed_caller_ip_address_range\n        }\n      }\n\n      dynamic \"trigger\" {\n        for_each = access_control.value.trigger != null ? [access_control.value.trigger] : []\n        content {\n          allowed_caller_ip_address_range = trigger.value.allowed_caller_ip_address_range\n\n          dynamic \"open_authentication_policy\" {\n            for_each = trigger.value.open_authentication_policy != null ? [trigger.value.open_authentication_policy] : []\n            content {\n              name = open_authentication_policy.value.name\n\n              dynamic \"claim\" {\n                for_each = open_authentication_policy.value.claim != null ? [open_authentication_policy.value.claim] : []\n                content {\n                  name  = claim.value.name\n                  value = claim.value.value\n                }\n              }\n            }\n          }\n        }\n      }\n\n      dynamic \"workflow_management\" {\n        for_each = access_control.value.workflow_management != null ? [access_control.value.workflow_management] : []\n        content {\n          allowed_caller_ip_address_range = workflow_management.value.allowed_caller_ip_address_range\n        }\n      }\n    }\n  }\n}\n```\n## Requirements\n\nNo requirements.\n\n## Providers\n\n| Name | Version |\n|------|---------|\n| \u003ca name=\"provider_azurerm\"\u003e\u003c/a\u003e [azurerm](#provider\\_azurerm) | n/a |\n\n## Modules\n\nNo modules.\n\n## Resources\n\n| Name | Type |\n|------|------|\n| [azurerm_logic_app_workflow.workflows](https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/resources/logic_app_workflow) | resource |\n\n## Inputs\n\n| Name | Description | Type | Default | Required |\n|------|-------------|------|---------|:--------:|\n| \u003ca name=\"input_logic_app_workflows\"\u003e\u003c/a\u003e [logic\\_app\\_workflows](#input\\_logic\\_app\\_workflows) | The list of object settings for logic app workflows | \u003cpre\u003elist(object({\u003cbr\u003e    name                               = string\u003cbr\u003e    rg_name                            = string\u003cbr\u003e    location                           = string\u003cbr\u003e    tags                               = map(string)\u003cbr\u003e    enabled                            = optional(bool, true)\u003cbr\u003e    integration_service_environment_id = optional(string)\u003cbr\u003e    logic_app_integration_account_id   = optional(string)\u003cbr\u003e    identity_type                      = optional(string)\u003cbr\u003e    identity_ids                       = optional(list(string))\u003cbr\u003e    workflow_schema                    = optional(string)\u003cbr\u003e    workflow_parameters                = optional(map(string))\u003cbr\u003e    workflow_version                   = optional(string, \"1.0.0.0\")\u003cbr\u003e    parameters                         = optional(map(string))\u003cbr\u003e    access_control = optional(object({\u003cbr\u003e      action = optional(object({\u003cbr\u003e        allowed_caller_ip_address_range = list(string)\u003cbr\u003e      }))\u003cbr\u003e      content = optional(object({\u003cbr\u003e        allowed_caller_ip_address_range = list(string)\u003cbr\u003e      }))\u003cbr\u003e      trigger = optional(object({\u003cbr\u003e        allowed_caller_ip_address_range = list(string)\u003cbr\u003e        open_authentication_policy = optional(object({\u003cbr\u003e          name = string\u003cbr\u003e          claim = optional(object({\u003cbr\u003e            name  = string\u003cbr\u003e            value = string\u003cbr\u003e          }))\u003cbr\u003e        }))\u003cbr\u003e      }))\u003cbr\u003e      workflow_management = optional(object({\u003cbr\u003e        allowed_caller_ip_address_range = list(string)\u003cbr\u003e      }))\u003cbr\u003e    }))\u003cbr\u003e  }))\u003c/pre\u003e | n/a | yes |\n\n## Outputs\n\n| Name | Description |\n|------|-------------|\n| \u003ca name=\"output_logic_app_workflow_access_endpoints\"\u003e\u003c/a\u003e [logic\\_app\\_workflow\\_access\\_endpoints](#output\\_logic\\_app\\_workflow\\_access\\_endpoints) | The Access Endpoints for the Logic App Workflows. |\n| \u003ca name=\"output_logic_app_workflow_connector_endpoint_ip_addresses\"\u003e\u003c/a\u003e [logic\\_app\\_workflow\\_connector\\_endpoint\\_ip\\_addresses](#output\\_logic\\_app\\_workflow\\_connector\\_endpoint\\_ip\\_addresses) | The list of access endpoint IP addresses of connector. |\n| \u003ca name=\"output_logic_app_workflow_connector_outbound_ip_addresses\"\u003e\u003c/a\u003e [logic\\_app\\_workflow\\_connector\\_outbound\\_ip\\_addresses](#output\\_logic\\_app\\_workflow\\_connector\\_outbound\\_ip\\_addresses) | The list of outgoing IP addresses of connector. |\n| \u003ca name=\"output_logic_app_workflow_endpoint_ip_addresses\"\u003e\u003c/a\u003e [logic\\_app\\_workflow\\_endpoint\\_ip\\_addresses](#output\\_logic\\_app\\_workflow\\_endpoint\\_ip\\_addresses) | The list of access endpoint IP addresses of workflow. |\n| \u003ca name=\"output_logic_app_workflow_identity\"\u003e\u003c/a\u003e [logic\\_app\\_workflow\\_identity](#output\\_logic\\_app\\_workflow\\_identity) | The identities for the Logic App Workflows. |\n| \u003ca name=\"output_logic_app_workflow_ids\"\u003e\u003c/a\u003e [logic\\_app\\_workflow\\_ids](#output\\_logic\\_app\\_workflow\\_ids) | The Logic App Workflow IDs. |\n| \u003ca name=\"output_logic_app_workflow_names\"\u003e\u003c/a\u003e [logic\\_app\\_workflow\\_names](#output\\_logic\\_app\\_workflow\\_names) | The Logic App Workflow names |\n| \u003ca name=\"output_logic_app_workflow_outbound_ip_addresses\"\u003e\u003c/a\u003e [logic\\_app\\_workflow\\_outbound\\_ip\\_addresses](#output\\_logic\\_app\\_workflow\\_outbound\\_ip\\_addresses) | The list of outgoing IP addresses of workflow. |\n| \u003ca name=\"output_logic_app_workflow_principal_ids\"\u003e\u003c/a\u003e [logic\\_app\\_workflow\\_principal\\_ids](#output\\_logic\\_app\\_workflow\\_principal\\_ids) | The Principal IDs for the Service Principal associated with the Managed Service Identity of this Logic App Workflow. |\n| \u003ca name=\"output_logic_app_workflow_rg_names\"\u003e\u003c/a\u003e [logic\\_app\\_workflow\\_rg\\_names](#output\\_logic\\_app\\_workflow\\_rg\\_names) | The Logic App Workflow resource group names |\n| \u003ca name=\"output_logic_app_workflow_tags\"\u003e\u003c/a\u003e [logic\\_app\\_workflow\\_tags](#output\\_logic\\_app\\_workflow\\_tags) | The Logic App Workflow resource group names |\n| \u003ca name=\"output_logic_app_workflow_tenant_ids\"\u003e\u003c/a\u003e [logic\\_app\\_workflow\\_tenant\\_ids](#output\\_logic\\_app\\_workflow\\_tenant\\_ids) | The Tenant IDs for the Service Principal associated with the Managed Service Identity of this Logic App Workflow. |\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flibre-devops%2Fterraform-azurerm-logic-app-workflow","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flibre-devops%2Fterraform-azurerm-logic-app-workflow","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flibre-devops%2Fterraform-azurerm-logic-app-workflow/lists"}