練習 - 使用您的代理程式建置應用程式

已完成

您的組建代理程式已在執行中,並準備好接收組建工作,現在我們將觀察其運作情形。 在本單元中,您將修改我們提供的基本組建組態,以使用您的代理程式而非 Microsoft 裝載的代理程式來建 置 Space Game 網站。

注意

執行上一個課程模組建立在 Azure 上執行的組建代理程式中的步驟之後,請立即執行下列步驟。

在本單元結束時,您可以選擇從您的 Microsoft Azure DevOps 組織中移除代理程式集區。

從 GitHub 擷取分支

在本節中,您會從 GitHub 擷取 build-agent 分支,並簽出或切換至該分支。

此分支包含您在先前課程模組中所使用的 Space Game 專案,以及您首先要進行的 Azure Pipelines 設定。

  1. 在 Visual Studio Code 中,開啟整合式終端。

  2. 執行下列 git fetchgit checkout 命令,以從 Microsoft 的存放庫下載名為 build-agent 的分支,並切換至該分支:

    git fetch upstream build-agent
    git checkout -B build-agent upstream/build-agent
    

    請回想一下,upstream 指的是 Microsoft GitHub 存放庫。 您專案的 Git 設定可辨識上游遠端存放庫,因為當您從 Microsoft 的存放庫派生專案並在本機加以複製時,便已為其設定了關聯性。

    不久後,您就會將此分支推送至自己的 GitHub 存放庫,名為 origin

  3. 或者,在 Visual Studio Code 中,開啟 azure-pipelines.yml 檔案,並熟悉初始設定。

    此設定類似於您在使用 Azure Pipelines 建立組建管線 (機器翻譯) 課程模組中所建立的基本設定。 它只會建置應用程式的發行設定。

修改組建組態

在本節中,您將修改組建組態,以從使用 Microsoft 裝載的代理程式切換至從組建集區使用代理程式。

  1. 在 Visual Studio Code 中 ,開啟 azure-pipelines.yml 檔案,然後尋找 區 pool 段。

    pool:
      vmImage: 'ubuntu-20.04'
      demands:
      - npm
    
  2. 修改 區 pool 段,如下所示:

    pool:
      name: 'MyAgentPool'
      demands:
      - npm
    

    此版本會使用 name 來指定您的代理程式集區 MyAgentPool。 它會維護 demands 區段,以指定組建代理程式必須安裝 npm (Node.js 套件管理員)。

  3. 在整合式終端中,將 azure-pipelines.yml 新增至索引、認可變更,然後將分支向上推送至 GitHub。

    git add azure-pipelines.yml
    git commit -m "Use private agent pool"
    git push origin build-agent
    

觀察 Azure Pipelines 使用您的組建代理程式

觀察組建使用您的組建代理程式在管線中執行。

  1. 在 Azure DevOps 中,前往 Space Game - web - Agent 專案。

  2. 在 [專案] 頁面上,或在左側窗格中,選取 [管線]

  3. 從 [最近執行的管線] 中選取您的管線,然後選擇您更新管線以使用 MyAgentPool 集區時啟動的最近執行。

  4. 選擇 [作業] 並追蹤每個步驟的執行。

    您可以在 [初始化作業] 工作中,看到組建使用您的組建代理程式。

    A screenshot of Azure Pipelines running the build. The Initialize job task shows that it's running the build on the private agent named MyLinxuAgent.

選擇性:移除您的組建集區

如需未來的參考,您可以在 Azure DevOps 組織中保留組建集區組態,但請記住,在您在此課程模組結束時執行清除步驟之後,裝載代理程式的 VM 將不再可供您使用。

事實上,Azure DevOps 會偵測到代理程式已離線。 Azure Pipelines 會在下次有組建排入佇列時,使用 MyAgentPool 集區檢查是否有可用的代理程式。

A screenshot of the agent pool in Azure DevOps showing that the build agent is offline.

您可以選擇從 Azure DevOps 移除組建集區設定。 方法如下:

  1. 在 Azure DevOps 中,前往 Space Game - web - Agent 專案。

  2. 選取 [專案設定]

  3. 在 [管線] 下方,選取 [代理程式集區]

    A screenshot of the project settings in Azure DevOps showing the location of the Agent pools menu item.

  4. 在 [MyAgentPool ] 底 下,選取垃圾桶圖示,然後選取 [ 刪除 ]。

    A screenshot of Azure DevOps showing the location of where to remove the agent from the agent pool.