🥴

Flutterプロジェクトでgithub acitiosを使用しFirebase hostingにdeployしてみた

2023/07/16に公開

やりたかったこと

giuhubのdevelopにマージされたタイミングでdeployされるようにCI/CDを構築したい

やったこと

そもそもfirebaseと連嶺しないといけないのでまずはそれを連携しました。
firebaseの連携に関しては下記の方の記事を参考してもらえるとわかりやすいかなと思います

https://www.flutter-study.dev/host-web-app/hosting

やらなかったこと

テスト、カバレッジの作成などは作成していません🙇‍♂️

コード

name: Deploy to Firebase Hosting

on:
  push:
    branches:
      - develop

jobs:
  deploy:
    runs-on: ubuntu-latest

    steps:
      - name: Checkout code
        uses: actions/checkout@v3

      - name: Set up Flutter SDK
        uses: subosito/flutter-action@v2

        with:
          flutter-version: '3.10.5'  # Flutterのバージョンを指定してください
          channel: 'stable'
          cache: true

      - name: Verify Flutter version
        run: flutter --version

      - name: Install dependencies
        run: flutter pub get

      - name: Print Flutter SDK path
        run: echo $PATH

      - name: Build Flutter web
        run: flutter build web

      - name: Deploy to Firebase Hosting
        uses: FirebaseExtended/action-hosting-deploy@v0
        with:
          repoToken: ${{ secrets.GITHUB_TOKEN }}
          firebaseServiceAccount: ${{ secrets.FIREBASE_SERVICE_ACCOUNT_POOL_A2005 }}
          channelId: live
          projectId: 自分のfirebaseのprojectId

まとめ

基本的にgithub actionsを使用すれば自動deployとかは簡単に実装することができます。
ただ業務となるとコストやセキュリティに注意する必要なのかなと思いました。
↑あんまりわかってない

Discussion