Skip to content
This repository has been archived by the owner on Feb 11, 2024. It is now read-only.

Commit

Permalink
31 インフラfirebaseにデプロイして動作しない不具合 (#33)
Browse files Browse the repository at this point in the history
  • Loading branch information
sey323 authored Oct 14, 2023
1 parent b3e0eac commit 7d28b17
Show file tree
Hide file tree
Showing 3 changed files with 43 additions and 28 deletions.
28 changes: 18 additions & 10 deletions .github/workflows/firebase-hosting-merge.yml
Original file line number Diff line number Diff line change
@@ -1,20 +1,28 @@
# This file was auto-generated by the Firebase CLI
# https://github.com/firebase/firebase-tools

name: Deploy to Firebase Hosting on merge
'on':
name: Deploy to Firebase Hosting/Function on merge
"on":
push:
branches:
- main
jobs:
build_and_deploy:
deploy-firebase-hosting-functions:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- run: npm ci && npm run build
- uses: FirebaseExtended/action-hosting-deploy@v0
with:
repoToken: '${{ secrets.GITHUB_TOKEN }}'
firebaseServiceAccount: '${{ secrets.FIREBASE_SERVICE_ACCOUNT_KEY3_GLOBAL_HACKATHON }}'
channelId: live
projectId: key3-global-hackathon

- name: Create env file
run: |
echo "${{ secrets.CONFIG_VALUES }}" >> .env
echo ${{ secrets.FIREBASE_SERVICE_ACCOUNT }} | base64 --decode > ./firebase-service-account.json
- name: Install npm packages
run: |
npm ci && npm run build
- name: Deploy to Firebase
run: |
npx firebase-tools deploy
env:
GOOGLE_APPLICATION_CREDENTIALS: ./firebase-service-account.json
17 changes: 0 additions & 17 deletions .github/workflows/firebase-hosting-pull-request.yml

This file was deleted.

26 changes: 25 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

### 1. 必要情報の取得

はじめに下記のサービスにアクセスし、利用に必要な情報を取得する。
はじめに下記のサービスにアクセスし、利用に必要な情報を取得する。API キーやアカウントが存在しない場合は作成する。

| サービス名 | URL | 必要な情報 |
| ------------ | --------------------------------- | ---------------------------------- |
Expand All @@ -23,6 +23,7 @@ OPENAI_API_KEY=${OpenAIのAPIキー}

# GCPの設定
GOOGLE_APPLICATION_CREDENTIALS=${GCPのサービスアカウントキーのパス}
FIRE_STORAGE_BUCKET=${GCPのサービスアカウントキーのパス}
```

### 2. サーバの起動
Expand All @@ -46,3 +47,26 @@ npm run dev
```bash
npm run preview
```

## デプロイ

本アプリケーションは、Firebase Hosting と Function にデプロイされている。Github のリポジトリのシークレットに以下の環境変数を設定する。

| 環境変数名 | 説明 |
| ------------------------ | ------------------------- |
| FIREBASE_SERVICE_ACCOUNT | サービスアカウントを json |
| CONFIG_VALUES | 以下 |

Firebase のコンソールからサービスアカウントを発行した場合、発行したサービスアカウントに以下の権限を追加で付与する。

- Cloud Functions Developer
- Firebase Hosting Admin
- Service Account User

CONFIG_VALUES には、アプリの起動に必要な環境変数を、半角スペース区切りで設定する。

```
open_api_key=${OpenAPI のキー} fire_storage_bucket=${バケット名}
```

設定が完了後、Github Actions により自動的に検証環境にデプロイされる。

0 comments on commit 7d28b17

Please sign in to comment.