【问题标题】:Copy the Logic APP from one resource group to another resource group using Azure CLI使用 Azure CLI 将逻辑应用从一个资源组复制到另一个资源组
【发布时间】:2019-06-27 06:07:27
【问题描述】:

我已经创建了一个逻辑应用程序,现在我想将相同的逻辑复制到另一个我可以用于测试环境的资源组。

有人可以帮助我使用 Azure CLI 命令或 Azure 门户本身中的任何直接选项,将逻辑应用从一个资源组复制到另一个资源组。

我检查了 Azure 门户,我只能看到“移动”选项,当我使用它时,它只是将我的逻辑应用程序从资源组 1 移动到资源组 2。但我的要求是它应该同时出现在资源组。

提前致谢。

问候, 马尼坎塔

【问题讨论】:

    标签: azure azure-logic-apps azure-resource-manager azure-cli


    【解决方案1】:

    Azure portal,您可以使用Clone 按钮轻松复制逻辑应用

    【讨论】:

    • 感谢您的回答。当我进行克隆操作时,它会克隆逻辑应用并存储在同一个资源组中,但我的要求是我想将此逻辑应用复制到另一个资源组。
    • 您可以克隆它然后将其移动到新的资源组
    • 这可能会导致一个单独的问题,但其他人发现“克隆”功能不起作用?我尝试了几种不同的浏览器,但它总是显示“验证成功”,但从未/实际创建过克隆。
    【解决方案2】:

    您可以使用Logic app VS tools 将逻辑应用和连接下载为 ARM 模板,这样它就会包含您设置的所有连接。

    然后你可以编辑它,如果你使用Visual Studio,只需将 LogicApp.json 替换为你下载的那个。

    如果您选择的连接器需要您的输入,PowerShell 窗口 在后台打开并提示输入任何必要的密码或 密钥。输入此信息后,部署将继续。

    您也可以使用Azure Cli 部署模板。

    【讨论】:

      【解决方案3】:

      这可能会使连接有点混乱,但我发现这种方法对大型 LA 的工作速度比在新资源组中手动重新创建相同的 LA 更快:

      1. 打开逻辑应用 (LA01),单击克隆按钮并将其以不同的名称 (LA02) 保存在同一资源组中。
      2. 打开 LA02 并在资源组附近单击更改。 选择要将其移动到的新资源组。如果需要,您还可以选择相关资源,但您可能也想复制它们。请确保您了解所有与移动资源相关的工具和脚本在您更新它们以使用新的资源 ID 之前都将不起作用。此操作可能需要一些时间。
      3. 可选。您可能希望使用与先前资源组中相同的名称 (LA01)。遗憾的是,我认为您无法在 Azure 中重命名项目,因此请再次执行步骤 #1 以使用 LA01 名称制作副本并从新资源组中删除 LA02。
      4. 完成这些步骤后,打开复制的 LA 并重新创建所有连接。

      【讨论】:

        【解决方案4】:

        我还找到了另一种非常巧妙的方法来更新其他资源组中已经存在的 LA。它可能看起来有点乱,但是当你多次这样做时,你可以比总是克隆 LA 快得多。当您打开 LA 并单击 Code view 时,您需要注意每个 LA 结构都类似于下面的示例。您可以将 LA1(资源组 1)中的所有代码从顶部复制到 outputs,然后将其复制粘贴到新的 LA2(资源组 2)中,但首次执行此操作时需要在 LA2 中进行一些更改:

        • SomeActions - 这将按原样复制粘贴
        • $connections - 必须保持原样,它是指向 LA 连接定义的指针
        • OtherParameters - 这是您将传递给 LA 的参数,因此通常对于不同的资源组,您使用不同的参数,因此请记住这一点并在这种情况下进行相应更改
        • SomeTrigger - 通常你应该保留它在 LA2 中的定义。
        • SomeConnection - 最重要的部分是确保您在两个 LA 中使用相同的连接参考。如果不是这种情况,则从SomeActions 部分检索连接引用名称,并更新SomeConnection,但保留connectionIdconnectionName 在LA2 中的定义,因此只有连接名称在两个LA 之间匹配。

        下次您想要进行更新时,只需获取代码,然后将所有内容从顶部复制到 outputs

        {
            "definition": {
                "$schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#",
                "actions": {
                   ...SomeActions
                },
                "contentVersion": "1.0.0.0",
                "outputs": {},
                "parameters": {
                    "$connections": {
                        "defaultValue": {},
                        "type": "Object"
                    },
                    "OtherParameters": {
                        "defaultValue": "SomeValue",
                        "type": "String"
                    }
                },
                "triggers": {
                    "manual": {
                        "inputs": {
                            "schema": {
                               ...SomeTrigger
                        },
                        "kind": "Http",
                        "type": "Request"
                    }
                }
            },
            "parameters": {
                "$connections": {
                    "value": {
                        "SomeConnection": {
                            "connectionId": "SomeId",
                            "connectionName": "SomeName",
                            "id": "SomeId"
                        }
                    }
                }
            }
        }
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2022-11-23
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2018-07-26
          • 2021-09-30
          • 2018-06-23
          相关资源
          最近更新 更多