提取要求的網頁預覽 - AWS Amplify 託管

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

提取要求的網頁預覽

Web 預覽提供開發和品質保證 (QA) 團隊在將程式碼合併到生產或整合分支之前,預覽來自提取請求 (PR) 的變更的方法。提取要求可讓您告訴其他人您已推送至儲存庫中分支的變更。提取請求開啟後,您可以與協同合作者討論並檢閱潛在變更,並在將變更合併到基底分支之前新增後續提交。

Web 預覽會將對儲存庫發出的每個提取請求部署到唯一的預覽 URL,該 URL 與您的主網站使用的 URL 完全不同。對於使用 Amplify CLI 或 Amplify Studio 佈建後端環境的應用程式,每個提取要求 (僅限私人 Git 儲存庫) 都會建立一個臨時後端,並在 PR 關閉時刪除。

當您的應用程式開啟網頁預覽時,每個 PR 都會計入每個應用程式 50 個分支的 Amplify 配額。若要避免超出此配額,請務必關閉您的 PR。如需配額的詳細資訊,請參閱 Amplify 託管服務配額

注意

目前, AWS CodeCommit 作為存放庫提供者使用時,AWS_PULL_REQUEST_ID環境變數無法使用。

啟用網頁預覽

對於存儲在存儲 GitHub 庫中的應用程序,預覽使用 Amplify GitHub 應用程序進行存儲庫訪問。如果您要在先前使用 OAuth 存放 GitHub 庫部署的現有 Amplify 應用程式上啟用網頁預覽,則必須先移轉應用程式以使用 Amp GitHub lify 應用程式。如需移轉指示,請參閱將現有的OAuth應用程式移轉至 Amplify GitHub 應用程式

重要

基於安全性考量,您可以在所有具有私人儲存庫的應用程式上啟用網頁預覽,但不能在所有具有公開重新定義的應用程式上啟用 Web 如果您的 Git 儲存庫是公開的,您只能為不需要 IAM 服務角色的應用程式設定預覽。

例如,具有後端的應用程式和部署到WEB_COMPUTE主機平台的應用程式都需要 IAM 服務角色。因此,如果這些類型的應用程式存放庫是公開的,您就無法啟用 Web 預覽。

Amplify 會強制執行此限制,以防止第三方提交可使用您應用程式的 IAM 角色許可執行的任意程式碼。

啟用提取要求的網頁預覽
  1. 選擇託管,然後選擇預覽

    注意

    只有當應用程序設置為持續部署並連接到 git 存儲庫時,預覽才能在應用程序設置菜單中看到。如需有關此部署類型的指示,請參閱開始使用現有程式碼

  2. 僅對於 GitHub 存儲庫,請執行以下操作以在您的帳戶中安裝和授權 Amplify GitHub 應用程序:

    1. 安裝 GitHub 應用程式以啟用預覽視窗中,選擇安裝 GitHub 應用程式

    2. 選取您要在其中設定 Amplify GitHub 應用程式的 GitHub 帳戶。

    3. Github.com 上會開啟一個頁面,以設定您帳戶的儲存庫權限。

    4. 執行以下任意一項:

      • 若要將安裝套用至所有儲存庫,請選擇「所有儲存庫」。

      • 若要將安裝限制在您選取的特定儲存庫,請選擇僅選取儲存區域。確保在您選擇的存儲庫中包含要啟用 Web 預覽的應用程序的存儲庫。

    5. 選擇儲存

  3. 啟用存放庫的預覽後,請返回 Amplify 控制台以啟用特定分支的預覽。在「預覽」頁面上,從清單中選取分支,然後選擇「編輯設定」。

  4. 在 [管理預覽設定] 頁面上,開啟 [提取要求預覽]。然後選擇 Confirm (確認)。

  5. 對於完整堆疊應用程式,請執行下列任一項作業

    • 選擇,為每個提取請求創建新的後端環境。此選項可讓您在不影響生產環境的情況下測試變更。

    • 選擇將此分支的所有提取請求指向現有環境

  6. 選擇確認

下次您提交分支的提取請求時,Amplify 會構建您的 PR 並將其部署到預覽 URL。關閉提取請求後,預覽 URL 將被刪除,並刪除鏈接到提取請求的任何臨時後端環境。僅適用於 GitHub 儲存庫,您可以直接從 GitHub 帳戶中的提取要求存取 URL 的預覽。

使用子網域進行 Web 預覽存取

提取請求的網頁預覽可透過 Amplify 應用程式的子網域存取,該應用程式連接至 Amazon Route 53 所管理的自訂網域。當提取請求關閉時,與提取請求相關聯的分支和子網域會自動刪除。這是您為應用程式設定以模式為基礎的功能分支部署之後,網頁預覽的預設行為。如需設定自動子網域的指示,請參閱設定 Amazon Route 53 自訂網域的自動子網域