建立及發佈 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 中裝載並執行。
請勿在觸發程式和動作定義中使用硬式編碼屬性及其值。
藉由新增描述性與有用的批注,提供觸發程式和動作定義的更多內容。
複製基礎工作流程定義
在 Azure 入口網站 的工作流程功能表上,於 [開發人員] 底下,選取 [程序代碼]。
從程式代碼檢視視窗中,複製整個工作流程定義,例如:
在名為 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 入口網站 中,每個工作流程範本都有工作流程範本資源庫中的概觀窗格。 此窗格包含範本所建立之工作流程的唯讀預覽影像,以及其他範本資訊。
若要建立此預覽映射,請遵循下列步驟:
在設計工具中,設定工作流程以建立兩個螢幕快照。
您必須為每個瀏覽器淺色主題和深色主題建立版本。
使用您慣用的螢幕快照工具建立工作流程螢幕快照。 請勿在工作流程周圍包含太多空格符。
依照名稱和樣式慣例,使用.png擴展名和您想要的任何名稱儲存每個映像。
在 工作流程範本套件的manifest.json 檔案中,將相同的映射名稱新增至
images
區段,而不 使用.png 擴展名,例如:"images": { "dark": "workflow-dark", "light": "workflow-light" }
建立manifest.json檔案
manifest.json檔案描述工作流程與相關元件之間的關聯性。 目前,您必須手動建立此檔案,或者您可以從 GitHub 中 Azure 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 :觸發程式類型,例如 、 Recurrence Event 或 Request 。 |
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 :參數的數據類型,例如 String 或 Int 。 - default :參數的預設值,如果有的話。 如果沒有,請將此值保留為空字串。 - description 參數的詳細數據和其他重要或有用的資訊。 - required : true 或 false |
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檔案中的連線參考,請遵循下列步驟:
在 Azure 入口網站中,開啟您的邏輯應用程式資源。
在邏輯應用程式功能表上的 [工作流程] 底下,選取 [連線]。
選取 [JSON 檢視] 索引 標籤 。
根據連線類型,請遵循下列步驟:
針對裝載並在 Azure 中執行的受控「共用」API 連線:
找出區段
managedApiConnections
。在屬性中
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 運行時間上的服務提供者連線:
找出區段
serviceProviderConnections
。針對每個連線,請在屬性中
serviceProvider
尋找id
屬性。複製並儲存下列值:
/serviceProviders/<connection-name>
例如,下列文字顯示 Azure AI 搜尋連接器的連接器識別碼:
/serviceProviders/azureaisearch
.
尋找 featuredConnections 的作業 'kind' 和 'type' 属性
在manifest.json檔案中,區featuredConnections
段可以包含您想要包含在 Azure 入口網站 範本庫的任何其他作業圖示。 針對這個區段,這是陣列,您需要為每個作業提供 kind
和 type
屬性。
若要取得這些屬性值,請使用開啟的工作流程,遵循 Azure 入口網站 中的下列步驟:
在工作流程功能表上的 [開發人員] 底下,選取 [程序代碼]。
在程式代碼檢視視窗中的
actions
區段中,尋找您想要的作業,然後尋找kind
和type
值。
將範本套件新增至 GitHub 存放庫
若要將範本發佈至 Azure 入口網站 中的範本資源庫,請設定 GitHub,並使用您的範本套件建立提取要求,以進行驗證和檢閱:
如果您沒有 GitHub 帳戶,請建立一個帳戶。
如需詳細資訊,請參閱 開始使用 GitHub 帳戶。
移至 GitHub 中 Azure Logic Apps 的工作流程範本存放庫,名為 LogicAppsTemplates。
建立您自己的分支,這是 GitHub 中 LogicAppsTemplates 存放庫的遠端複本。
如需詳細資訊,請參閱 分支存放庫。
若要在本機運作,請將分叉複製到您的電腦。
移至具有下列 URL 的分支:
https://github.com/<your-username>/LogicAppsTemplates
在您的本機計算機上,如果您還沒有資料夾,請建立名為 GitHub 的資料夾。 請勿複製到 OneDrive 同步處理資料夾。
在您的本機存放庫中, 遵循下列步驟來建立工作分支。
簽出工作分支之後,請移至本機存放庫中的根層級,然後建立範本套件資料夾。
將範本檔案新增至範本套件資料夾,並使用資料夾名稱更新根層級 manifest.json 檔案。
當您準備好將變更認可至本機存放庫時,就像儲存快照集一樣,請使用 Git 命令行工具或其他工具執行下列命令:
git add .
git commit -m "<commit-short-description>"
若要將快照集上傳至遠端分支,請執行下列命令:
git push origin <your-working-branch>
在 GitHub 中,建立提取要求,以比較<您的工作分支>與 LogicAppsTemplates 存放庫中的主要分支。
移至存放庫的 [提取要求 ] 頁面,然後選取 [ 新增提取要求]。
在 [比較變更] 底下,選取 [跨分叉比較]。
請確定您的提取要求具有下列設定,然後選取 [ 建立提取要求]。
基底存放庫 基本 前端存放庫 比較 Azure/LogicAppsTemplates main <user-name>/LogicAppsTemplates <your-working-branch> 輸入提取要求的標題和描述。 若要完成,請選取 [ 建立提取要求]。
等候 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樣式指南 和 全域撰寫秘訣。