共用方式為


檢閱生產前環境中的提取要求

本文說明如何使用生產階段前環境來檢閱使用 Azure Static Web Apps 部署之應用程式的變更。 生產前環境是應用程式的完整功能預備版本,其中包含生產環境中無法使用的變更。

注意

Azure DevOps 不會自動支援提取要求環境,但您可以使用 具名環境 手動進行設定。

Azure Static Web Apps 會在存放庫中產生 YAML 工作流程。 針對工作流程監看的分支建立提取要求時,會建置生產前環境。 生產階段前環境會分階段應用程式,因此您可以在將變更推送至生產環境之前先檢閱變更。 生產前環境的生命週期會系結至提取要求。 提取要求關閉之後,系統就會自動刪除生產前環境。

您可以在生產前環境中執行下列工作:

  • 檢閱生產與預備環境之間的視覺變更,例如內容和版面配置的更新
  • 示範小組的變更
  • 比較應用程式的不同版本
  • 使用驗收測試驗證變更
  • 在部署至生產環境之前先執行理智檢查

必要條件

進行變更

直接在 GitHub 上變更存放庫,如下列步驟所示。

  1. 移至 GitHub 上的專案存放庫,然後選取 [分支]。

    Create new branch using GitHub interface

  2. 輸入分支名稱,然後選取 [ 建立分支]。

  3. 移至您的應用程式資料夾並變更某些文字內容,例如標題或段落。 選取 [編輯 ] 以在檔案中進行變更。

    Edit file button in GitHub interface

  4. 完成時,請選取 [ 認可變更 ]。

    Screenshot showing the Commit changes button in the GitHub interface.

建立提取要求

建立提取要求以發佈您的更新。

  1. 在 GitHub 上開啟您專案的 [ 提取要求 ] 索引標籤。

    Screenshot showing the pull request tab in a GitHub repo.

  2. 選取 [比較與提取要求]。

  3. 或者,輸入變更的詳細數據,然後選取 [ 建立提取要求]。

    Screenshot showing the pull request creation in GitHub.

視需要指派檢閱者並新增批注來討論您的變更。

當您使用 Azure Static Web Apps 時,多個生產前環境可以同時共存。 每次針對受監看的分支建立提取要求時,階段版本會隨著變更部署到不同的生產前環境而部署。

您可以進行多個變更,並將新的認可推送至您的分支。 提取要求會自動更新以反映所有變更。

檢閱變更

GitHub Actions 部署工作流程會執行,並將提取要求變更部署到生產前環境。

工作流程完成建置和部署應用程式之後,GitHub Bot 會將批註新增至提取要求,其中包含生產前環境的 URL。

  1. 選取生產階段前 URL 以查看暫存的變更。

    Screenshot of pull request comment with the pre-production URL.

    URL 的組成如下: https://<SUBDOMAIN-PULL_REQUEST_ID>.<AZURE_REGION>.azurestaticapps.net。 針對指定的提取要求,即使您推送新的更新,URL 仍會維持不變。 相同的生產前環境也會在提取要求生命週期中重複使用。

若要使用端對端測試將檢閱程式自動化, 部署 Azure Static Web Appsstatic_web_app_url GitHub Action 具有輸出變數。 您可以在工作流程的其餘部分參考此 URL,以針對生產前環境執行測試。

發行變更

合併提取要求以發佈至生產環境。

  1. 選取 [合併提取要求]

    Screenshot showing the Merge pull request button in GitHub interface.

    您的變更會複製到追蹤的分支(「生產」分支)。 然後,部署工作流程會在追蹤的分支上啟動,變更會在應用程式重建之後上線。

  2. 開啟您的生產 URL 以載入網站的即時版本並確認。

限制

  • 即使 GitHub 存放庫是私人的,任何人都可以透過其 URL 存取應用程式的分段版本。

    警告

    請小心敏感性內容,因為任何人都可以存取生產前環境。

  • 使用靜態 Web Apps 部署的每個應用程式可用的生產前環境數目取決於您 的裝載方案。 例如,使用 免費層 ,您可以有三個生產前環境以及生產環境。

  • 生產前環境不會分散到異地。

  • 只有 GitHub Actions 部署支援預先實際執行環境。

下一步