本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Web 預覽提供開發和品質保證 (QA) 團隊一種方式,在將程式碼合併到生產或整合分支之前,預覽提取請求 (PRs的變更。提取請求可讓您告訴其他人您已推送到儲存庫中分支的變更。提取請求開啟後,您可以與協作者討論和檢閱潛在變更,並在變更合併到基礎分支之前新增後續遞交。
Web 預覽會將對儲存庫提出的每個提取請求部署到唯一的預覽 URL,這與主要網站使用的 URL 完全不同。對於使用 Amplify CLI 或 Amplify Studio 佈建後端環境的應用程式,每個提取請求 (僅限私有 Git 儲存庫) 都會建立臨時後端,並在 PR 關閉時刪除。
為您的應用程式開啟 Web 預覽時,每個 PR 都會計入每個應用程式的 50 個分支的 Amplify 配額。若要避免超過此配額,請務必關閉您的 PRs。如需配額的詳細資訊,請參閱 Amplify Hosting 服務配額。
注意
目前,使用 AWS CodeCommit 做為儲存庫提供者時,環境AWS_PULL_REQUEST_ID
變數無法使用。
Web 預覽安全性
為了安全起見,您可以在所有具有私有儲存庫的應用程式上啟用 Web 預覽,但並非所有具有公有儲存庫的應用程式上都啟用。如果您的 Git 儲存庫是公有的,您只能為不需要 IAM 服務角色的應用程式設定預覽。例如,具有後端的應用程式和部署到WEB_COMPUTE
託管平台的應用程式需要 IAM 服務角色。因此,如果這些類型的應用程式儲存庫是公有的,則您無法啟用這些類型的 Web 預覽。Amplify 會強制執行此限制,以防止第三方提交使用您應用程式的 IAM 角色許可執行的任意程式碼。
為公有儲存庫中的應用程式啟用 Web 預覽時,使用 SSR Compute 角色時,您需要小心管理哪些分支可以存取角色。建議您不要使用應用程式層級角色。反之,您應該在分支層級連接運算角色。這可讓您僅將許可授予需要存取特定資源的分支。如需詳細資訊,請參閱 新增 SSR 運算角色以允許存取 AWS 資源。
啟用提取請求的 Web 預覽
對於存放在 GitHub 儲存庫中的應用程式,Web 預覽會使用 Amplify GitHub 應用程式進行儲存庫存取。如果您要在先前使用 OAuth 從 GitHub 儲存庫部署的現有 Amplify 應用程式上啟用 Web 預覽,您必須先遷移應用程式以使用 Amplify GitHub 應用程式。如需遷移說明,請參閱 將現有OAuth應用程式遷移至 Amplify GitHub 應用程式。
啟用提取請求的 Web 預覽
-
選擇託管,然後選擇預覽。
注意
只有當應用程式設定為持續部署並連接到 git 儲存庫時,預覽才會顯示於應用程式設定選單中。如需此部署類型的指示,請參閱現有程式碼的入門。
-
僅針對 GitHub 儲存庫,執行下列動作,在您的帳戶中安裝並授權 Amplify GitHub 應用程式:
-
在安裝 GitHub 應用程式以啟用預覽視窗中,選擇安裝 GitHub 應用程式。
-
選取您要設定 Amplify GitHub 應用程式的 GitHub 帳戶。
-
在 Github.com 上開啟頁面,以設定帳戶的儲存庫許可。
-
執行以下任意一項:
-
若要將安裝套用至所有儲存庫,請選擇所有儲存庫。
-
若要將安裝限制為您選取的特定儲存庫,請選擇僅選取儲存庫。請務必在您選取的儲存庫中包含您要為之啟用 Web 預覽的應用程式儲存庫。
-
-
選擇儲存
-
-
啟用儲存庫的預覽之後,請返回 Amplify 主控台,以啟用特定分支的預覽。在預覽頁面上,從清單中選擇分支,然後選擇編輯設定。
-
在管理預覽設定頁面上,開啟提取請求預覽。然後選擇 Confirm (確認)。
-
對於完整堆疊應用程式,請執行下列其中一項操作:
-
選擇,為每個提取請求建立新的後端環境。此選項可讓您測試變更,而不會影響生產。
-
選擇將此分支的所有提取請求指向現有環境。
-
-
選擇確認。
下次提交分支的提取請求時,Amplify 會建置您的 PR 並將其部署至預覽 URL。關閉提取請求後,會刪除預覽 URL,並刪除與提取請求連結的任何暫時後端環境。僅適用於 GitHub 儲存庫,您可以直接從 GitHub 帳戶中的提取請求存取 URL 預覽。
具有子網域的 Web 預覽存取
提取請求的 Web 預覽可透過 Amplify 應用程式的子網域存取,該應用程式連接到 Amazon Route 53 管理的自訂網域。關閉提取請求時,會自動刪除與提取請求相關聯的分支和子網域。這是您為應用程式設定模式型特徵分支部署後 Web 預覽的預設行為。如需設定自動子網域的指示,請參閱 設定 Amazon Route 53 自訂網域的自動子網域。