GitHub Action を介して Firebase Hosting にデプロイを統合できます。この GitHub Action でできることは次のとおりです。
GitHub リポジトリのすべての PR に対して新しいプレビュー チャネル (およびそれに関連付けられたプレビュー URL) を作成します。
プレビュー URL を含む PR にコメントを追加して、アプリの「プレビュー」バージョンで PR の変更を表示およびテストできるようにします。
関連するプレビュー チャネルに自動的にデプロイすることにより、各コミットからの変更でプレビュー URL を更新します。 URL は、新しいコミットごとに変更されません。
(オプション) PR がマージされたときに、GitHub リポジトリの現在の状態をライブ チャネルにデプロイします。
注意: プレビュー URL を使用すると、アプリは Firebase プロジェクトの実際のバックエンド リソースとやり取りします。
GitHub Action をセットアップして Firebase Hosting にデプロイする
GitHub リポジトリ (パブリックまたはプライベート) を作成するか、既存のものを使用します。リポジトリの管理者権限が必要です。
リポジトリのローカル バージョンで、
firebase init
コマンドを使用して Firebase Hosting をセットアップします。Hosting をセットアップしていない場合は、ローカル ディレクトリのルートから次のバージョンのコマンドを実行します。
firebase init hosting
すでに Hosting をセットアップしている場合は、Hosting の GitHub Action 部分をセットアップするだけです。ローカル ディレクトリのルートから、このバージョンのコマンドを実行します。
firebase init hosting:github
CLI プロンプトに従うと、コマンドが自動的に GitHub アクションのセットアップを処理します。
Firebase Hosting にデプロイする権限を持つサービス アカウントを Firebase プロジェクトに作成します。
そのサービス アカウントの JSON キーを暗号化し、指定された GitHub リポジトリにGitHub シークレットとしてアップロードします。
新しく作成されたシークレットを参照する GitHub ワークフロー
yaml
構成ファイルを書き込みます。これらのファイルは、Firebase Hosting にデプロイするように GitHub アクションを構成します。
GitHub で、新しいブランチを作成し、CLI によって作成されたワークフロー
yaml
ファイルをコミットします。ブランチを GitHub リポジトリに公開します。
ブランチをマージします。
それでおしまい!この GitHub リポジトリでの後続の PR では、独自の「プレビュー URL」が自動的に取得されます。
GitHub アクションの詳細
Firebase は、「Deploy to Firebase Hosting」GitHub アクションをオープンソース プロジェクトとして維持しています。ソースコードを表示します。
「Firebase Hosting にデプロイ」GitHub アクションを使用すると、プレビュー チャネルの有効期限をカスタマイズしたり、PR がマージされたときにデプロイする非ライブ チャネルを設定したりするなど、さらに構成を行うことができます。利用可能な構成オプションについて学びます。
一般的なGitHub Actionsの詳細をご覧ください。