プルリクエストの Web プレビュー - AWS Amplify ホスティング

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

プルリクエストの Web プレビュー

Web プレビューは、開発チームや品質保証 (QA) チームに、コードをプロダクションブランチやインテグレーションブランチにマージする前に、プルリクエスト (PR) からの変更をプレビューする方法を提供します。プルリクエストを使うと、リポジトリ内のブランチにプッシュした変更を他の人に伝えることができます。プルリクエストが開かれたら、変更の可能性についてコラボレーターと話し合ったりレビューしたり、変更がベースブランチにマージされる前にフォローアップコミットを追加したりできます。

注記

現在、AmplifyのプレビューブランチはGitLab、BitBucket をサポートしており、またAWS CodeCommitはGitHub と同等の機能を完全に備えているわけではありません。AWS_PULL_REQUEST_ID環境変数は、GitHub をリポジトリプロバイダーとして使用する場合にのみ使用できます。

Web プレビューは、リポジトリに対して行われたすべてのプルリクエストを、メインサイトが使用している URL とはまったく異なる固有のプレビュー URL にデプロイします。Amplify CLI または Amplify Studio を使用してバックエンド環境をプロビジョニングしたアプリでは、プルリクエスト (プライベート Git リポジトリのみ) ごとにエフェメラルバックエンドを起動し、PR を閉じると削除されます。


         PR プレビューの段階。PR を開くと固有のプレビュー URL が作成され、PR がマージされるとプレビュー URL が削除されることがわかります。
重要

セキュリティ上の理由から、プライベートリポジトリを持つすべてのアプリで Web プレビューを有効にできますが、パブリックリポジトリを持つすべてのアプリでは有効にできません。Git リポジトリが公開されている場合、IAM サービスロールを必要としないアプリにのみプレビューを設定できます。

例えば、バックエンドを備えたアプリやWEB_COMPUTEホスティングプラットフォームにデプロイされるアプリには IAM サービスロールが必要です。そのため、これらの種類のアプリのリポジトリが公開されている場合、Web プレビューを有効にすることはできません。

Amplify はこの制限を適用して、アプリのIAMロール権限を使用して実行されるような任意のコードを第三者が送信することを防ぎます。

Web プレビューを有効にする

GitHub リポジトリに保存されているアプリの場合、プレビューでは Amplify GitHub App を使用してリポジトリにアクセスします。アクセス用に OAuth を使用して GitHub リポジトリからデプロイした既存の Amplify アプリのWeb プレビューを有効にする場合は、まず Amplify GitHub App を使用するようにアプリを移行する必要があります。移行手順については、既存の OAuth アプリを Amplify GitHub アプリに移行するを参照してください。

プルリクエストの Web プレビューを有効にするには
  1. [アプリ設定]、[プレビュー] を選択し、[プレビューを有効にする] を選択します。

    注記

    [プレビュー]は、アプリが継続的デプロイ用に設定され、Git リポジトリに接続されている場合にのみ[アプリ設定]メニューに表示されます。この種類のデプロイの手順については、「既存のコードを使い始める」を参照してください。

  2. GitHub リポジトリの場合のみ、次の手順を実行して Amplify GitHub App をアカウントにインストールして認証します。

    1. GitHub App をインストールしてプレビューを有効にする」ウィンドウで、「GitHub アプリをインストール」を選択します。

    2. Amplify GitHub アプリを設定したい GitHub アカウントを選択します。

    3. GitHub.com で、アカウントのリポジトリ権限を設定するページが開きます。

    4. 次のいずれかを実行します。

      • インストールをすべてのリポジトリに適用するには、「全てのリポジトリ」を選択します。

      • 選択した特定のリポジトリのみにインストールを制限するには、[リポジトリのみ選択] を選択します。Web プレビューを有効にするアプリのリポジトリを、選択するリポジトリに必ず含めてください。

    5. [Save] (保存) を選択します。

  3. リポジトリのプレビューを有効にしたら、Amplify コンソールに戻って特定のブランチのプレビューを有効にします。[プレビュー]ページで、リストからブランチを選択し、[管理] を選択します。

    
                  ブランチが選択され、右上に [管理] ボタンが表示された[プレビュー]ページ。
  4. ブランチのプレビュー設定を管理」ウィンドウで、「プルリクエストのプレビュー」をオンにしてください。

  5. フルスタックのアプリケーションでは、以下のいずれかを行ってください。

    • [プルリクエストごとに新しいバックエンド環境を作成] を選択します。このオプションを使うと、本番環境に影響を及ぼすことなく変更をテストできます。

    • [このブランチのすべてのプルリクエストを既存の環境に限定する] を選択します。

  6. [確認] を選択します。

次にブランチのプルリクエストを送信すると、Amplify はPRをビルドしてプレビューURLにデプロイします。


            [プレビュー]ページには、固有のプレビュー URL などの PR に関する情報が表示されます。

GitHub リポジトリの場合のみ、GitHub アカウントのプルリクエストから URL のプレビューに直接アクセスできます。


            「詳細」を選択してプレビュー URL を表示できる GitHub アカウントのプルリクエスト。

プルリクエストがクローズされると、プレビュー URL は削除され、プルリクエストにリンクされている一時的なバックエンド環境はすべて削除されます。

サブドメインによる Web プレビューアクセス

プルリクエストの Web プレビューには、Amazon Route 53 が管理するカスタムドメインに接続されている Amplify アプリのサブドメインでアクセスできます。プルリクエストがクローズされると、そのプルリクエストに関連するブランチとサブドメインは自動的に削除されます。これは、アプリにパターンベースの機能ブランチのデプロイを設定した後の Web プレビューのデフォルト動作です。自動サブドメインをセットアップする手順については、「Amazon Route 53 カスタムドメインに自動サブドメインを設定します。」を参照してください。