azure - 使用 Bicep/YAML 禁用部署逻辑应用程序(标准)工作流

标签 azure azure-pipelines-yaml azure-bicep azure-logic-app-standard

我尝试了多种方法,工作流程仍然部署启用。 我最近的尝试是使用我的二头肌中的资源:

resource workflow 'Microsoft.Web/sites/workflows@2015-08-01' = {
  name: workflowName
  dependsOn: [ logicContainer ]
  location: location
  kind: 'Stateful'
  properties: {
    flowstate: 2
  }
}

但是,工作流永远不会出现在逻辑应用功能中。 我什至无法在“已停止”状态下部署容器,因为对于 Microsoft.Web/sites@2022-03-01,状态是只读的。

最佳答案

在我的 yaml 中,我以管道分隔的字符串发送工作流程,例如“wf-一|wf-二|wf-三|wf-四”

然后,在我的二头肌中,我填充一组工作流状态应用程序设置:

var wfAppSettingStatuses            = [ for wf in split(workflows,'|'):  { 
  name: 'Workflows.${wf}.FlowState' 
  value: 'Disabled'
}]

要添加到逻辑应用容器配置设置,请使用 union 函数:

resource logicContainer 'Microsoft.Web/sites@2022-03-01' = {
  name: appName
  location: location
  kind: 'functionapp,workflowapp'
  identity: {
    type: 'SystemAssigned'
  }
  properties: {
    httpsOnly: true
    siteConfig: {
      appSettings: union(wfAppSettingStatuses, [
        {
          name: 'APPINSIGHTS_INSTRUMENTATIONKEY'
          value: applicationInsights.properties.InstrumentationKey
        }
        ...
])
      use32BitWorkerProcess: true
    }
    serverFarmId: planId 
    clientAffinityEnabled: false
    vnetRouteAllEnabled: true
    storageAccountRequired: false
    keyVaultReferenceIdentity: 'SystemAssigned'
  }
}

列表中的每个工作流程现已禁用,因此,如果您需要在部署时启用一个工作流程,请将其从管道分隔字符串中删除。

关于azure - 使用 Bicep/YAML 禁用部署逻辑应用程序(标准)工作流,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75231222/

相关文章:

azure - 将 Azure AD B2C 与 Xamarin 应用程序集成

c# - 使用 WinSCP Session.GetFile 从 SFTP 进行流式传输失败 – ((WinSCP.PipeStream)stream).Length' 引发类型 'System.NotSupportedException' 的异常

azure - 在用于 .NET Core 应用程序构建的 Azure DevOps 管道模板中使用 'parameters' 部分时出现“预期映射”语法错误

azure - 如何将角色添加到二头肌格式的资源组?

azure - 参数化 Yaml 和 Bicep

azure - Bot 框架性能最佳实践

java - 为什么我的 @Scheduled Spring Boot 任务在 Azure 中运行不一致?

azure - Azure Pipelines 中的 secret 变量

docker - 通过 azure 管道部署时,如何解决 docker-compose 文件中卷装载问题的变量替换?

azure - 如何在二头肌中输出资源id