共用方式為


建立及發佈 Azure Logic Apps 的工作流程範本

適用於:Azure Logic Apps (標準)

Azure Logic Apps 提供預先建置的整合工作流程範本,可讓您用來加速建置整合應用程式的程式。 這些範本遵循常用的模式,並協助您簡化開發,方法是提供預先定義的商業規則和設定的起點或基準。

您不僅可以開始使用工作流程範本進行開發,還可以建立工作流程範本供自己使用,或與他人共用。 您的範本可以包含成品,例如架構、地圖和自定義元件。 若要將範本新增至 Azure 入口網站 中的範本資源庫,請使用本操作指南建立範本套件。 完成時,請流覽 GitHub for Azure Logic Apps 中的工作流程範本存放庫,您可以在其中建立範本套件的提取要求,並讓 Azure Logic Apps 小組檢閱您的範本。

限制

工作流程範本目前僅支援標準邏輯應用程式和單一工作流程。

範本套件包含什麼?

下表描述範本套件中的必要和選擇性檔案:

File name 必要 描述
workflow.json Yes 具有工作流程定義的 JSON 檔案。
manifest.json Yes JSON 檔案,其中包含工作流程和相關元件的相關信息。
<image-name>-dark.png Yes 具有工作流程為只讀螢幕快照 的影像檔案,其格式為.png 格式,且適用於瀏覽器的深色主題。
<image-name>-light.png Yes 具有工作流程為只讀螢幕快照 的影像檔,格式為.png ,且適用於瀏覽器的淺色主題。
<map-name>.json.xml.xslt No 支援工作流程範本的任何成品,例如地圖和架構。
<custom-assembly>.dll No 任何支援工作流程範本的自定義元件。
readme.md No Markdown 檔案,其中包含工作流程範本的指示、程式或其他資訊。

您也可以包含任何其他檔案來維護和支援範本,例如具有測試或範例數據的檔案。

建立範本套件資料夾

  • 建立範本套件資料夾之前,請先熟悉 名稱和樣式慣例

  • 若要讓範本存放庫更容易瀏覽、組織和維護,請使用下列語法來命名資料夾名稱和最少的字數,以避免超過檔案路徑的字元限制:

    <workflow-task-product-pattern-or-protocol><<>,如果有的話>

    如需範例,請參閱 GitHub 中 Azure Logic Apps 的工作流程範本存放庫。

  • 若要正確註冊範本套件資料夾,您必須將資料夾名稱新增至 存放庫的根層級manifest.json檔案

建立workflow.json檔案

workflow.json檔案包含 JSON 格式工作流程的基礎定義。 若要建立 workflow.json 檔案,您必須將工作流程定義複製並儲存為名為 workflow.json 的檔案。

若要取得工作流程定義的最簡單且最佳方式,請使用設計工具建立您的工作流程。 請務必檢閱 工作流程最佳做法 以及 名稱和樣式慣例。 或者,您也可以從 Azure 入口網站 的範本資源庫使用預先建置的工作流程範本。

當您建置工作流程時,設計工具會自動包含基礎工作流程定義中任何新增的內建、服務提供者連線、受控 API 連線或連結庫的參考。

完成之後, 請將基礎工作流程定義 複製到空白 workflow.json 檔案。

工作流程最佳做法

  • 盡可能使用內建作業。 例如,Azure Blob 儲存體 連接器具有適用於標準工作流程的下列版本:

    • 內建的服務提供者版本,其會出現在連接器資源庫中,其中包含 [應用程式內 ] 標籤。 此版本是以單一租使用者 Azure Logic Apps 運行時間裝載並執行,可提供更佳的效能、輸送量和其他優點。

    • Microsoft管理的 API 版本,其會出現在具有共用標籤連接器資源庫中。 此版本是使用共用的全域資源,在多租使用者 Azure 中裝載並執行。

  • 請勿在觸發程式和動作定義中使用硬式編碼屬性及其值。

  • 藉由新增描述性與有用的批注,提供觸發程式和動作定義的更多內容。

複製基礎工作流程定義

  1. 在 Azure 入口網站 的工作流程功能表上,於 [開發人員] 底下,選取 [程序代碼]。

  2. 從程式代碼檢視視窗中,複製整個工作流程定義,例如:

    顯示 Azure 入口網站、程式代碼檢視視窗和要求-回應工作流程定義的螢幕快照。

  3. 在名為 workflow.json 的空白檔案中,儲存工作流程定義。

workflow.json中的參數參考

當您參考workflow.json檔案中的參數時,您必須以下列方式反映使用後綴 _#workflowname# 的參數名稱:

"name": "@parameters('<parameter-name>_#workflowname#')"

例如:

"name": "@parameters('sharepoint-folder-path_#workflowname#')"

workflow.json中的連線參考

當您參考workflow.json檔案中的連線時,您必須以下列方式反映使用後綴 _#workflowname# 的連線名稱:

"referenceName": "<connector-ID>_#workflowname#",
"connectionName": "<connector-ID>_#workflowname#"

例如:

"referenceName": "azureaisearch_#workflowname#",
"connectionName": "azureaisearch_#workflowname#"

如需連接器識別碼的詳細資訊,請參閱 尋找連接器標識碼

建立工作流程範本映像

在 Azure 入口網站 中,每個工作流程範本都有工作流程範本資源庫中的概觀窗格。 此窗格包含範本所建立之工作流程的唯讀預覽影像,以及其他範本資訊。

若要建立此預覽映射,請遵循下列步驟:

  1. 在設計工具中,設定工作流程以建立兩個螢幕快照。

    您必須為每個瀏覽器淺色主題和深色主題建立版本。

  2. 使用您慣用的螢幕快照工具建立工作流程螢幕快照。 請勿在工作流程周圍包含太多空格符。

  3. 依照名稱和樣式慣例使用.png擴展名和您想要的任何名稱儲存每個映像。

  4. 工作流程範本套件的manifest.json 檔案中,將相同的映射名稱新增至 images 區段,而不 使用.png 擴展名,例如:

    "images": {
        "dark": "workflow-dark",
        "light": "workflow-light"
    }
    

建立manifest.json檔案

manifest.json檔案描述工作流程與相關元件之間的關聯性。 目前,您必須手動建立此檔案,或者您可以從 GitHubAzure Logic Apps 工作流程範本存放庫中現有的預先建置範本重新用途manifest.json檔案。 當您建立manifest.json檔案時,請務必檢閱名稱和樣式慣例

下表描述manifest.json檔案中的屬性:

Attribute name 必要 Description
title Yes <template-title> 出現在範本庫中的標題,當您從 Azure 入口網站 中的範本新增工作流程時,隨即開啟。
description Yes <template-description> 範本描述,其會出現在範本庫的範本概觀窗格中。
prerequisites No <template-prerequisites> 使用範本時必須符合的任何必要條件。 出現在範本的概觀窗格中。 您可以從本節連結至其他檔。
tags No <template-tags-array> 要用於搜尋或篩選範本的範本標籤。
skus Yes standard, consumption 範本支援的邏輯應用程式工作流程類型。 如果您不確定,請使用 standard
kinds No stateful, stateless 工作流程模式,決定是否儲存執行歷程記錄和作業狀態。

根據預設,所有工作流程都可在具狀態和無狀態模式中使用。 如果您的工作流程只在具狀態模式中執行,請使用這個屬性來明確提出此需求。
detailsDescription No 查看描述。 範本的任何其他詳細描述資訊。
details No 查看描述。 用來篩選範本庫的範本資訊。

- By:範本發行者, Microsoft例如 。

- Type: Workflow

- Trigger:觸發程式類型,例如 、 RecurrenceEventRequest
artifacts Yes <artifacts-array> 範本套件中的所有相關檔案,並包含下列屬性:

- type:檔案類型,決定複製檔案位置的適當位置,例如 workflow

- file:檔名和擴展名, 例如workflow.json
images Yes 查看描述。 瀏覽器淺色和深色主題的工作流程影像檔名:

- light:淺色主題的影像名稱,例如 workflow-light

- dark:深色主題的影像名稱,例如 工作流程深色
parameters 是,但如果不存在,則可以是空的 <workflow-parameters-array> 工作流程範本中動作的參數。 針對每個參數,您必須指定下列屬性:

- name:參數名稱的後綴 _#workflowname#必須是 。 只使用英數位元、連字元或底線,並遵循下列格式:

<parameter-name>_#workflowname#

- displayName:參數的易記顯示名稱。 請參閱 名稱和樣式慣例

- type:參數的數據類型,例如 StringInt

- default:參數的預設值,如果有的話。 如果沒有,請將此值保留為空字串。

- description 參數的詳細數據和其他重要或有用的資訊。

- requiredtruefalse
connections 是,但如果沒有任何存在,則可以是空的。 <connections-array> 使用工作流程範本建立的連接。 每個連線都有下列屬性:

-connectorId:連接器識別碼的後綴 _#workflowname#必須是 。 只使用英數位元、連字元或底線,並遵循下列格式:

<connector-ID>_#workflowname#

若要尋找連接器識別碼,請參閱 尋找連接器標識碼

- kind:連接器的運行時間主機類型,適用於 inapp 內建作業和服務提供者連接器,或 shared 適用於受控、Azure 裝載的連接器。 在連接器資源庫中,內建作業和服務提供者連接器會標示為 [在應用程式中],而受控連接器則會標示為 [共用]。
featuredConnections No <featured-connections-array> 根據預設,範本庫會顯示每個範本所使用 Azure Logic Apps 中預先建置作業和連接器的圖示。 若要包含任何其他作業的 featuredConnections 圖示,您可以使用 屬性。 每個作業都必須具有下列屬性:

- kind:作業種類

- type:作業類型

若要尋找這些值,請參閱 尋找 featuredConnections 的作業種類和類型一節

尋找連接器標識碼

若要尋找連接器標識碼,以用於manifest.json檔案中的連線,或workflow.json檔案中的連線參考,請遵循下列步驟:

  1. Azure 入口網站中,開啟您的邏輯應用程式資源。

  2. 在邏輯應用程式功能表上的 [工作流程] 底下,選取 [連線]。

  3. 選取 [JSON 檢視] 索引 標籤

  4. 根據連線類型,請遵循下列步驟:

    • 針對裝載並在 Azure 中執行的受控「共用」API 連線:

      1. 找出區段 managedApiConnections

      2. 在屬性中 connection ,複製並儲存 id 值,但以 取代任何個人或敏感數據,例如訂用帳戶標識碼、資源組名等 #<item>#

        /subscriptions/#subscription#/providers/Microsoft.Web/locations/#location#/managedApis/<connection-name>

        例如,下列文字會顯示 SharePoint 連接器的連接器識別碼:

        /subscriptions/#subscription#/providers/Microsoft.Web/locations/#location#/managedApis/sharepointonline

    • 針對裝載在單一租使用者 Azure Logic Apps 運行時間上的服務提供者連線:

      1. 找出區段 serviceProviderConnections

      2. 針對每個連線,請在屬性中serviceProvider尋找 id 屬性。

      3. 複製並儲存下列值:

        /serviceProviders/<connection-name>

        例如,下列文字顯示 Azure AI 搜尋連接器的連接器識別碼:

        /serviceProviders/azureaisearch.

尋找 featuredConnections 的作業 'kind' 和 'type' 属性

在manifest.json檔案中,區featuredConnections段可以包含您想要包含在 Azure 入口網站 範本庫的任何其他作業圖示。 針對這個區段,這是陣列,您需要為每個作業提供 kindtype 屬性。

若要取得這些屬性值,請使用開啟的工作流程,遵循 Azure 入口網站 中的下列步驟:

  1. 在工作流程功能表上的 [開發人員] 底下,選取 [程序代碼]。

  2. 在程式代碼檢視視窗中的 actions 區段中,尋找您想要的作業,然後尋找 kindtype 值。

將範本套件新增至 GitHub 存放庫

若要將範本發佈至 Azure 入口網站 中的範本資源庫,請設定 GitHub,並使用您的範本套件建立提取要求,以進行驗證和檢閱:

  1. 如果您沒有 GitHub 帳戶,請建立一個帳戶。

    如需詳細資訊,請參閱 開始使用 GitHub 帳戶

  2. 移至 GitHub 中 Azure Logic Apps 的工作流程範本存放庫,名為 LogicAppsTemplates

  3. 建立您自己的分支,這是 GitHub 中 LogicAppsTemplates 存放庫的遠端複本。

    如需詳細資訊,請參閱 分支存放庫

  4. 若要在本機運作,請將分叉複製到您的電腦。

    1. 請遵循下列步驟來下載、安裝及設定 Git

    2. 移至具有下列 URL 的分支:

      https://github.com/<your-username>/LogicAppsTemplates

    3. 在您的本機計算機上,如果您還沒有資料夾,請建立名為 GitHub 的資料夾。 請勿複製到 OneDrive 同步處理資料夾。

    4. 請遵循下列步驟來複製 分支 ,而不是生產存放庫

    5. 在您的本機存放庫中, 遵循下列步驟來建立工作分支

    6. 簽出工作分支之後,請移至本機存放庫中的根層級,然後建立範本套件資料夾。

    7. 將範本檔案新增至範本套件資料夾,並使用資料夾名稱更新根層級 manifest.json 檔案。

    8. 當您準備好將變更認可至本機存放庫時,就像儲存快照集一樣,請使用 Git 命令行工具或其他工具執行下列命令:

      git add .

      git commit -m "<commit-short-description>"

    9. 若要將快照集上傳至遠端分支,請執行下列命令:

      git push origin <your-working-branch>

  5. 在 GitHub 中,建立提取要求,以比較<您的工作分支>與 LogicAppsTemplates 存放庫中的主要分支。

    1. 移至存放庫的 [提取要求 ] 頁面,然後選取 [ 新增提取要求]。

    2. 在 [比較變更] 底下,選取 [跨分叉比較]。

    3. 請確定您的提取要求具有下列設定,然後選取 [ 建立提取要求]。

      基底存放庫 基本 前端存放庫 比較
      Azure/LogicAppsTemplates main <user-name>/LogicAppsTemplates <your-working-branch>

      顯示 GitHub 和提取要求設定的螢幕快照。

    4. 輸入提取要求的標題和描述。 若要完成,請選取 [ 建立提取要求]。

    5. 等候 Azure Logic Apps 小組檢閱您的提取要求。

    如需詳細資訊,請參閱 從分支建立提取要求。

名稱和樣式慣例

區域 慣例
敏感性資料 請勿在範本檔案、螢幕快照、描述或測試數據中包含或上傳個人和敏感數據。 例如,此數據報含訂用帳戶標識碼、使用者名稱、密碼等等。
資料夾名稱 為了更容易閱讀,請盡可能使用小寫和連字元。 請參閱 大寫 – Microsoft樣式指南
影像檔案名稱 使用 .png 作為擴展名、小寫和連字元,例如workflow-light.png
產品、服務、技術和品牌名稱 遵循官方拼字和大寫。 例如:

- 當您參考服務名稱或平臺時,請使用 “Azure Logic Apps”,而不是 “Logic Apps”。

- 當您參考資源或實例時,請使用「邏輯應用程式」或「邏輯應用程式」,而非「邏輯應用程式」或「Logic Apps」。

- 當您參考觸發程式和動作的順序時,請使用「邏輯應用程式工作流程」或「工作流程」。
縮寫和縮寫 使用產品、服務、技術、品牌名稱和不常見技術詞彙的擴充名稱,而不是縮寫或縮寫。 可接受的常見縮寫,例如 “HTTP” 和 “URL”。 例如,使用 “Visual Studio Code”,而不是 “VS Code”。 請參閱 縮略字 – Microsoft樣式指南
其他文字 - 針對標題、標題和本文內容使用句子大小寫,這表示除非您有產品、服務、技術或品牌名稱,否則只會將第一個字母大寫。

- 不要將一般名詞和文章大寫,例如 “a”、“an”、“and”、“or”、“the” 等。
語音 - 除非您需要參考特定角色,否則請使用第二人語音(您和您的),而不是第三人(使用者、開發人員、客戶)。 請參閱 人員 - Microsoft樣式指南

- 盡可能使用主動、直接但友好的語氣。 主動語音著重於文字的主旨和動詞,而被動語音則著重於文字中的物件。
詞彙 - 使用簡單、常見、日常的字詞,例如「使用」,而不是「利用」或「槓桿」。

- 請勿使用字詞、片語、行話、口語、口語或俚語,這些語氣無法跨語言翻譯。

- 僅適用於特定案例的「請」。 請參閱 – Microsoft樣式指南

- 使用 “for example” 或 “such”,而不是 “例如” 或 “i.e.”。

- 請勿使用方向詞彙,例如「這裡」、「上方」、「下方」、「右」和「左」,無法存取。
標點符號 - 針對一系列專案,請在結合之前包含最後一個逗號,例如 “and”。 例如,“apples、oranges 和 bananas”。 請參閱 逗號 – Microsoft樣式指南

- 以適當的標點符號結束完整句子。 請勿使用驚嘆號。 請參閱 標點符號 – Microsoft樣式指南
格式設定 - 針對程式代碼,請遵循該程式代碼語言的樣式慣例。

- 請勿使用硬式編碼的連結,如果 URL 變更,則會中斷。 在您的PR要求中,要求重新導向連結改用。

- 針對連結,請使用下列格式:

For more information, see [descriptive-link-text](URL)].”。

- 使用描述性連結文字,而不是泛型或模糊的連結文字,例如 “See [here](URL)”。

- 只針對程式中的步驟使用數位,而不是針對沒有特定順序的清單使用數位。 請參閱 清單 – Microsoft樣式指南

- 除非您正在縮排程式代碼,否則在標點符號之後只使用一個空格。

如需詳細資訊,請參閱 Microsoft樣式指南全域撰寫秘訣

從預先建置的範本建立標準邏輯應用程式工作流程