在设计器进行更改后更新和测试逻辑应用程序 ARM 模板的最佳方法是什么?

What is the best approach to update and test Logic App ARM templates after making changes from designer?

我们有一个 CI/CD 设置,用于使用 ARM 模板部署逻辑应用程序。我们在代码(template.json 和 parameters.json)文件中对大约 20 个逻辑应用程序进行了参数化和签入作为模板,然后我们可以使用我们的管道将它们部署到我们想要的任何环境。

我想问的问题是如何在对逻辑应用程序进行更改后check/verify ARM 模板。现在我们正在做的是在其中一个开发环境中使用 Azure 门户中的设计器编辑逻辑应用程序,然后手动将更新的部分复制并粘贴到 template.json 文件中。

我想知道我们是否可以采用更好的方法来验证手动更新的 template.json 文件,因为我们只有在尝试部署模板时才会知道模板中的错误。如果可能的话,最好有一种方法可以使用一些设计器来可视化逻辑应用程序 ARM 模板以检查所有步骤。

我知道我们有 visual studio 的扩展,允许您在编辑器本身中设计和部署逻辑应用程序 ARM 模板,但我无法找到在 visual studio 逻辑应用程序设计器,由于我们只想更新和验证设计器中的模板,因此部署由管道处理。

如果有更好的本地化方法,请告诉我verify/test 逻辑应用程序 ARM 模板。

For now what we are doing is editing the logic apps using the designer in azure portal in one of the dev environments and then manually copy and pasting the updated part in the template.json file.

您可以使用 powershell 中的 LogicAppTemplate 模块从您的订阅中获取模板。这样您就不必复制粘贴更改的组件。

but I am unable to find a way to open already existing templates in the visual studio logic app designer, since we only want to update and verify the template in the designer, the deployment is handled by pipelines.

据我了解,无法在 Visual Studio 或 Visual Studio 代码中为逻辑应用程序导入 template.json。在设计器中查看它的唯一方法是先发布它。但是,如果您将 template.json 转换为二头肌文件,Visual Studio 代码可以验证转换后的 .bicep 文件。

为现有逻辑应用程序生成 template.json:

$parameters = @{
 Token = (az account get-access-token | ConvertFrom-Json).accessToken
 LogicApp = '<logicapp_name>'
 ResourceGroup = '<resourceGroupName'
 SubscriptionId = "Subscription_ID"
 Verbose = $true
}

Get-LogicAppTemplate @parameters | Out-File temp.json

然后使用以下命令转换它:

bicep decompile temp.json

现在我们在 visual studio 代码中加载生成的二头肌文件以进行验证。例如: