共用方式為


Azure CLI 指令碼範例 - 建立邏輯應用程式

適用於:Azure Logic Apps (使用量)

此指令碼會透過 Azure CLI Logic Apps 延伸模組 (az logic) 建立範例邏輯應用程式。 如需透過 Azure CLI 建立和管理邏輯應用程式的詳細指南,請參閱 Azure CLI 的 Logic Apps 快速入門

警告

Azure CLI Logic Apps 擴充功能目前為「實驗性」擴充功能,不在客戶支援涵蓋範圍內。 請小心使用此 CLI 擴充功能,特別是當您選擇在生產環境中使用擴充功能時。

必要條件

先決條件檢查

開始之前,請先驗證您的環境:

  • 登入 Azure 入口網站,並執行 az login 檢查您的訂用帳戶是否有效。

  • 執行 az --version,在終端機或命令視窗中檢查您的 Azure CLI 版本。 如需最新版本,請參閱最新版本資訊

範例工作流程說明

此範例工作流程定義檔案會建立與 Azure 入口網站快速入門中相同的基本範例取用邏輯應用程式工作流程。

此範例工作流程:

  1. 指定邏輯應用程式的結構描述 $schema

  2. 在觸發程序清單 triggers 中定義邏輯應用程式的觸發程序。 觸發程序會每隔 3 小時重複 (recurrence)。 針對指定的 RSS 摘要 (feedUrl) 發行新摘要項目 (When_a_feed_item_is_published) 時,就會觸發動作。

  3. 在動作清單中定義邏輯應用程式的動作 actions。 該動作會透過 Microsoft 365 傳送電子郵件 (Send_an_email_(V2)),其中包含來自 RSS 摘要項目的詳細資料,如動作輸入 (inputs) 的本文區段 (body) 所指定。

範例工作流程定義

執行範例指令碼之前,您必須先建立範例工作流程定義

  1. 在電腦上建立 JSON 檔案 testDefinition.json

  2. 將下列內容複製到 JSON 檔案:

    
    {
        "definition": {
            "$schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#",
            "actions": {
                "Send_an_email_(V2)": {
                    "inputs": {
                        "body": {
                            "Body": "<p>@{triggerBody()?['publishDate']}<br>\n@{triggerBody()?['title']}<br>\n@{triggerBody()?['primaryLink']}</p>",
                            "Subject": "@triggerBody()?['title']",
                            "To": "test@example.com"
                        },
                        "host": {
                            "connection": {
                                "name": "@parameters('$connections')['office365']['connectionId']"
                            }
                        },
                        "method": "post",
                        "path": "/v2/Mail"
                    },
                    "runAfter": {},
                    "type": "ApiConnection"
                }
            },
            "contentVersion": "1.0.0.0",
            "outputs": {},
            "parameters": {
                "$connections": {
                    "defaultValue": {},
                    "type": "Object"
                }
            },
            "triggers": {
                "When_a_feed_item_is_published": {
                    "inputs": {
                        "host": {
                            "connection": {
                                "name": "@parameters('$connections')['rss']['connectionId']"
                            }
                        },
                        "method": "get",
                        "path": "/OnNewFeed",
                        "queries": {
                            "feedUrl": "https://www.pbs.org/now/rss.xml"
                        }
                    },
                    "recurrence": {
                        "frequency": "Hour",
                        "interval": 3
                    },
                    "splitOn": "@triggerBody()?['value']",
                    "type": "ApiConnection"
                }
            }
        },
        "parameters": {
            "$connections": {
                "value": {
                    "office365": {
                        "connectionId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/testResourceGroup/providers/Microsoft.Web/connections/office365",
                        "connectionName": "office365",
                        "id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/providers/Microsoft.Web/locations/westus/managedApis/office365"
                    },
                    "rss": {
                        "connectionId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/testResourceGroup/providers/Microsoft.Web/connections/rss",
                        "connectionName": "rss",
                        "id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/providers/Microsoft.Web/locations/westus/managedApis/rss"
                    }
                }
            }
        }
    }
    
    
  3. 以您自己的資訊更新預留位置值:

    1. 取代預留位置電子郵件地址 ("To": "test@example.com")。 您必須使用與 Logic Apps 連接器相容的電子郵件地址。 如需詳細資訊,請參閱先決條件

    2. 如果您使用與 Office 365 Outlook 連接器以外的另一個電子郵件連接器,請取代該額外的連接器詳細資料。

    3. 將連線參數 ($connections) 底下您的連線識別碼 (connectionIdid) 的預留位置訂用帳戶值 (00000000-0000-0000-0000-000000000000) 以您自己的訂用帳戶值取代。

  4. 儲存您的變更。

範例指令碼

注意

此範例是針對 bash 殼層所撰寫。 如果您想要在另一個殼層中 (例如 Windows PowerShell 或命令提示字元) 執行此範例,您可能需要修改指令碼。

執行此範例指令碼之前,請執行此命令以連線至 Azure:


az login

接下來,瀏覽至您建立工作流程定義的目錄。 例如,如果您在桌面上建立工作流程定義 JSON 檔案:


cd ~/Desktop

那麼,請執行此指令碼來建立邏輯應用程式。


#!/bin/bash

# Create a resource group

az group create --name testResourceGroup --location westus

# Create your logic app

az logic workflow create --resource-group "testResourceGroup" --location "westus" --name "testLogicApp" --definition "testDefinition.json"

清除部署

使用範例指令碼之後,請執行下列命令來移除您的資源群組及其所有巢狀資源,包括邏輯應用程式。


az group delete --name testResourceGroup --yes

指令碼說明

此範例指令碼使用下列命令來建立新的資源群組和邏輯應用程式。

Command 注意
az group create 建立資源群組,在其中儲存邏輯應用程式的資源。
az logic workflow create 根據參數 --definition 中定義的工作流程建立邏輯應用程式。
az group delete 刪除資源群組和其所有巢狀資源。

下一步

如需 Azure CLI 的詳細資訊,請參閱 Azure CLI 文件

您可以在 Microsoft 的程式碼範例瀏覽器中找到其他 Logic Apps CLI 指令碼範例。