Open3
GitHub Actions で secrets の内容をファイルに書き出す際、改行コードが含まれる場合は base64 encode/decode する
VueFire を使用したアプリケーションを GitHub Actions でデプロイしていたら、Firebase Admin 用のサービスアカウントの取り扱いが分からず試行錯誤…
結論的には、改行コードが含まれるため base64 で処理するとよい
サービスアカウント作成後 JSON ファイルの内容を base64 encode して GitHub Secrets に登録する
クリップボードにコピー
base64 -i service-account.json | pbcopy
GitHub Secrets に登録
settings/secrets/actions
FIREBASE_ADMIN_SERVICE_ACCOUNT
等
末尾の改行文字は消す
GitHub Actions を修正
デコードしてからファイルに書き出す
- name: Build for hosting
run: npm run build
- name: Set up Firebase Admin for SSR service account
run: |
echo -n ${{ secrets.FIREBASE_ADMIN_SERVICE_ACCOUNT }} | base64 --decode > .output/server/service-account.json
env:
FIREBASE_ADMIN_SERVICE_ACCOUNT: ${{ secrets.FIREBASE_ADMIN_SERVICE_ACCOUNT }}
試行錯誤中の僕へひとこと
base64 するのを面倒がらずにとっととやりましょう