共用方式為


使用 Azure DevOps 自動化標準邏輯應用程式工作流程的建置和部署

針對在單一租使用者 Azure Logic Apps 中執行的標準邏輯應用程式工作流程,您可以使用 Visual Studio Code 搭配 Azure Logic Apps (Standard) 擴充功能,使用任何原始檔控制系統在本機開發、測試及儲存邏輯應用程式專案。 不過,若要獲得跨不同環境和平臺輕鬆且一致地部署工作流程的完整優點,您也必須將建置和部署程序自動化。

Azure Logic Apps (Standard) 延伸模組提供工具,可讓您使用 Azure DevOps 建立和維護自動化建置和部署程式。 不過,在您啟動此自動化之前,請考慮下列元素:

  • 您在其中建立工作流程的 Azure 邏輯應用程式資源

  • 工作流程使用的 Azure 裝載連線,並從Microsoft受控連接器建立。

    這些連線與直接和原生使用 Azure Logic Apps 執行時間執行的連線不同。

  • 您想要部署的不同環境的特定設定和參數

延伸模組可協助您完成下列必要工作,以自動化建置和部署:

  • 在設計時間參數化連接參考。 此工作可簡化在不同環境中更新參考的程式,而不需要中斷本機開發功能。

  • 產生腳本,以自動化標準邏輯應用程式資源的部署,包括所有相依資源。

  • 產生腳本,以自動化 Azure 裝載連線的部署。

  • 準備可在建置程式期間插入 Azure Logic Apps 套件的環境特定參數,而不需要中斷本機開發功能。

  • 使用 Azure DevOps 視需要產生管線,以支援基礎結構部署以及建置和發行程式。

本指南說明如何完成下列工作:

  1. 在 Visual Studio Code 中建立邏輯應用程式工作區和專案,其中包含建立基礎結構部署管線、持續整合 (CI) 和持續部署 (CD) 的檔案。

  2. 在 Azure DevOps 中建立工作區與 Git 存放庫之間的連線。

  3. 在 Azure DevOps 中建立管線。

如需詳細資訊,請參閱下列文件:

已知問題與限制

  • 此功能僅支援標準邏輯應用程式專案。 如果您的 Visual Studio Code 工作區同時包含標準邏輯應用程式專案和 Functions 自定義程式碼專案,則兩者都會產生部署腳本,但目前會忽略自定義程式代碼專案。 為自定義程式碼建立建置管線的功能位於藍圖中。

  • 延伸模組會建立基礎結構部署、持續整合 (CI) 和持續部署 (CD) 的管線。 不過,您必須負責將管線連線至 Azure DevOps,並建立相關的觸發程式。

  • 目前,此延伸模組僅支援基礎結構部署腳本的 Azure 資源管理範本(ARM 範本)。 其他範本正在規劃中。

必要條件

  • Azure 帳戶和訂用帳戶。 如果您沒有訂用帳戶,請註冊一個免費的 Azure 帳戶

  • 具有 Azure Logic Apps (標準) 延伸模組的 Visual Studio Code。 若要符合這些需求,請參閱使用Visual StudioCode建立標準工作流程的必要條件。

  • Azure Logic Apps (標準) Azure DevOps 工作的建置和發行工作。 您可以在 Azure DevOps Marketplace 中找到這些工作。

  • Azure DevOps 中現有的 Git 存放庫,您可以在其中儲存邏輯應用程式專案。

  • 現有服務主體的 Azure Resource Manager 服務連線。

  • 您想要在其中部署邏輯應用程式的現有 Azure 資源群組

建立邏輯應用程式工作區、專案和工作流程

  1. 在 Visual Studio Code 的 [活動] 列上,選取 Azure 圖示。

  2. 在 Azure 視窗中的 [工作區] 工具列上,開啟 [Azure Logic Apps] 功能表,然後選取 [建立新的邏輯應用程式工作區]。

    此螢幕快照顯示 Visual Studio Code、左側功能表上選取的 Azure 圖示、工作區區段,以及 [建立新邏輯應用程式工作區] 的選取選項。

  3. 請遵循提示來完成下列工作:

    1. 選取要建立工作區的資料夾。

    2. 輸入工作區名稱。

    3. 選取專案類型: 邏輯應用程式

    4. 輸入您的邏輯應用程式項目名稱。

    5. 選取工作流程範本。 輸入您的工作流程名稱。

    6. 選取是否要在目前的 Visual Studio Code 視窗中或新的視窗中開啟工作區。

      Visual Studio Code 會顯示新的工作區和邏輯應用程式專案。

  4. 請遵循下列步驟來開啟工作流程設計工具:

    1. 在您的邏輯應用程式專案中,使用您的工作流程名稱展開資料夾。

    2. 如果尚未開啟,請開啟 workflow.json 檔案、開啟檔案的快捷方式功能表,然後選取 [開啟設計工具]。

    3. 當系統提示您在專案載入時允許連線的參數化時,請選取 [ ]。

      此選取專案可讓您的專案在連線定義中使用參數,讓您可以針對不同的環境自動建置和部署。

    4. 請遵循提示來選取這些專案:

      • 使用來自 Azure 的連接器

        注意

        如果您略過此步驟,則只能 使用裝載運行時間的內建連接器。 若要在稍後啟用受Microsoft管理的 Azure 裝載連接器,請遵循下列步驟:

        1. 開啟workflow.json檔案的快捷方式功能表,然後從 Azure 選取 [使用連接器]。

        2. 選取您要用於邏輯應用程式的現有 Azure 資源群組。

        3. 重載工作流程設計工具。

      • 您想要用於邏輯應用程式的現有 Azure 資源群組

  5. 完成時,請重載工作流程設計工具。 如果出現提示,請登入 Azure。

    此螢幕快照顯示 Visual Studio Code、左側功能表上選取的 [總管] 圖示、邏輯應用程式專案和工作流程設計工具。

您現在可以以任何方式編輯工作流程,並在本機測試工作流程。 若要建立及測試範例工作流程,請參閱 使用Visual Studio Code 建立標準工作流程。

產生部署腳本

建立工作流程並在本機測試之後,請建立部署腳本。

  1. 從所有項目檔底下的空白區域,開啟專案的快捷方式功能表,然後選取 [ 產生部署腳本]。

    此螢幕快照顯示 Visual Studio Code、左側功能表上選取的 [總管] 圖示、邏輯應用程式專案、開啟的專案視窗快捷方式功能表,以及 [產生部署腳本] 的選取選項。

  2. 請遵循提示來完成下列步驟:

    1. 選取要用於邏輯應用程式的現有 Azure 資源群組。

    2. 輸入邏輯應用程式資源的唯一名稱。

    3. 輸入記憶體帳戶資源的唯一名稱。

    4. 輸入要用於App Service 方案的唯一名稱。

    5. 選取您要在其中產生檔案的工作區資料夾。

      部署資料夾位置 描述
      新增部署資料夾 (預設值) 在目前工作區中建立新的資料夾。
      選擇不同的資料夾 選取目前工作區中的不同資料夾。

    完成時,Visual Studio Code 會在工作區根目錄建立名為 deployment/{logic-app-name} 的資料夾。 此資料夾會使用您在這些步驟中提供的相同邏輯應用程式名稱。

    注意

    下列檔案中的變數、應用程式設定和參數值會根據您在這些步驟中提供的輸入預先填入。 當您以不同的環境為目標時,請確定您更新所建立參數和變數檔案的值。

    此螢幕快照顯示 Visual Studio Code、左側功能表上選取的 [總管] 圖示、邏輯應用程式專案,以及具有內容的醒目提示部署腳本資料夾。

    {logic-app-name} 資料夾下,您有下列結構:

    資料夾名稱 檔名和描述
    ADOPipelineScripts - CD-pipeline.yml:持續傳遞管線,其中包含將邏輯應用程式程式代碼部署至 Azure 中邏輯應用程式資源的指示。

    - CD-pipeline-variables.yml:YAML 檔案,其中包含CD-pipeline.yml檔案所使用的變數。

    - CI-pipeline.yml:持續整合管線,其中包含建置和產生將邏輯應用程式資源部署至 Azure 所需的成品的指示。

    - CI-pipeline-variables.yml:YAML 檔案,其中包含CI-pipeline.yml檔案所使用的變數。

    - infrastructure-pipeline.yml:YAML「基礎結構即程式代碼」管線,其中包含將所有ARM範本載入至 Azure 的指示,以及執行infrastructure-pipeline-template.yml檔案中的步驟。

    - infrastructure-pipeline-template.yml:YAML 管線檔案,其中包含部署具有所有必要相依性之邏輯應用程式資源的步驟,以及部署原始程式碼所需的每個受控連線。

    - infrastructure-pipeline-variables.yml:YAML 管線,其中包含執行infrastructure-pipeline-template.yml檔案中步驟所需的所有變數。
    ArmTemplates - {connection-type}.parameters.json:Resource Manager 參數檔案,其中包含將名為 {connection-type} 的 Azure 裝載連線部署至 Azure 所需的參數。 此檔案存在於工作流程中每個 Azure 裝載的連線。

    - {connection-type}.template.json:Resource Manager 範本檔案,代表名為 {connection-reference} 的 Azure 裝載連線,並包含用來將對應連線資源部署至 Azure 的資訊。 此檔案存在於工作流程中每個 Azure 裝載的連線。

    - {logic-app-name}.parameters.json:Resource Manager 參數檔案,其中包含將名為 {logic-app-name} 的標準邏輯應用程式資源部署至 Azure 所需的參數,包括所有相依性。

    - {logic-app-name}.template.json:Resource Manager 範本檔案,代表名為 {logic-app-name} 的標準邏輯應用程式資源,並包含用來將邏輯應用程式資源部署至 Azure 的資訊。
    WorkflowParameters parameters.json:此 JSON 檔案是本機參數檔案的複本,包含所有使用者定義參數的複本,以及擴充功能所建立之任何參數的雲端版本,以將 Azure 裝載的連線參數化。 此檔案可用來建置部署至 Azure 的套件。

將工作區連線至 Git 存放庫

  1. 請遵循下列步驟來初始化您的存放庫:

    1. 在 Visual Studio Code 的 [活動] 列上,選取 [原始檔控制 ] 圖示。

    2. 在 [ 原始檔控制] 視窗中,選取 [ 初始化存放庫]。

    3. 從提示功能表中,選取 [ 選擇資料夾]。 選取工作區根資料夾,然後選取 [ 初始化存放庫]。

      此螢幕快照顯示 Visual Studio Code、原始檔控制視窗,以及名為 [初始化存放庫] 的選取選項。

    4. 在 [ 原始檔控制] 視窗中,選取 [ 開啟存放庫]。

    5. 從提示功能表中,選取您剛才建立的存放庫。

    如需詳細資訊,請參閱 Visual Studio Code - 初始化本機資料夾中的存放庫。

  2. 請遵循下列步驟來取得 Git 存放庫的網址,以便您可以新增遠端:

    1. 在 Azure DevOps 中,開啟 Azure DevOps 組織的小組專案。

    2. 在左側功能表上,展開 [存放庫],然後選取 [ 檔案]。

    3. 在 [ 檔案 ] 窗格工具列上,選取 [ 複製]。

      此螢幕快照顯示 Azure DevOps 小組專案、Git 存放庫,以及名為 Clone 的選取選項。

    4. 在 [ 複製存放庫 ] 視窗中,複製複製品 URL 的 HTTPS 版本。

      如需詳細資訊,請參閱 在 Azure Repos 中取得 Git 存放庫的複製 URL。

  3. 請遵循下列步驟,為您的 Git 存放庫新增遠端:

    1. 返回 Visual Studio Code 和 [原始檔控制 ] 視窗。

    2. [原始檔控制存放庫] 底下,從存放庫的工具列中,開啟省略號 (...) 功能表,然後選取 [遠端>新增遠端]。

      此螢幕快照顯示 Visual Studio Code、原始檔控制視窗,以及名為 [新增遠端] 的選取選項。

  4. 在提示中,貼上您複製的URL,然後輸入遠端的名稱,通常是 原點

    您現在已建立 Visual Studio Code 與存放庫之間的連線。

  5. 在下一節中設定管線之前,請開啟 CD-pipeline.yml 檔案,並在屬性中source重新命名 CI 管線,以符合您想要使用的 CI 管線名稱。

    此螢幕快照顯示 Visual Studio Code、原始檔控制視窗、開啟CD-pipeline.yml檔案,以及醒目提示 CI 管線名稱的來源字段。

  6. 在 [ 原始檔控制] 視窗中,認可您的變更,並將其發佈至存放庫。

    如需詳細資訊,請參閱 階段和認可程式代碼變更

在 Azure DevOps 中建立管線

若要在 Azure DevOps 中建立基礎結構以及 CI 和 CD 管線,請針對下列每個管線檔案重複下列步驟:

  • infrastructure-pipeline.yml「基礎結構即程式代碼」管線。
  • 持續整合管線CI-pipeline.yml。
  • 持續 傳遞管線CD-pipeline.yml。

設定管線

  1. 在 Azure DevOps 中,返回您的小組專案和 [存放庫>檔案] 窗格。

  2. 在 [ 檔案] 窗格中,選取 [ 設定組建]。

    此螢幕快照顯示 Azure DevOps 小組專案、Git 存放庫,以及名為 [設定組建] 的選取選項。

  3. 在 [ 清查管線] 窗格中,確認存放庫資訊,然後選取 [ 設定管線]。

    顯示管線存放庫資訊的 [清查] 頁面螢幕快照。

  4. 在 [ 設定管線] 窗格中,選取 [現有的 Azure Pipelines YAML 檔案]。

    顯示 [設定] 頁面的螢幕快照,用於選取管線類型。

  5. 在 [ 選取現有的 YAML 檔案 ] 窗格中,遵循下列步驟來選取您的 Infrastructure-pipeline.yml 檔案:

    1. 針對 [分支],選取您認可變更的分支,例如 main 或發行分支。

    2. 針對 [路徑],選取要用於管線的路徑。 下列路徑是預設值:

      deployment/{logic-app-name}/ADOPipelineScripts/{infrastructure-pipeline-name}.yml

    3. 當您準備好時,請選取 [ 繼續]。

      顯示 [選取現有 YAML 檔案] 窗格的螢幕快照。

  6. 在 [ 設定管線] 窗格中,選取 [ 檢閱管線]。

  7. 在 [ 檢閱您控管的管線 ] 窗格中,提供下列資訊:

    • 管線名稱:輸入管線的名稱。
    • 管線資料夾:選取儲存管線的資料夾,其名稱為 ./deployment/{logic-app-name}/pipelines
  8. 完成時,選取 [儲存]

    此螢幕快照顯示名為 [檢閱受控管管線] 的窗格。

檢視和執行管線

若要尋找並執行管線,請遵循下列步驟:

  1. 在小組專案的左側功能表上,展開 [管線],然後選取 [ 管線]。

  2. 選取 [ 所有 ] 索引標籤以檢視所有可用的管線。 尋找並選取您的管線。

  3. 在管線的工具列上,選取 [ 執行管線]。

    此螢幕快照顯示已建立管線的窗格,以及 [執行管線] 的選取選項。

如需詳細資訊,請參閱 建立您的第一個管線

另請參閱