fix(deps): update dependency firebase-functions to v6 - autoclosed #996
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Pull Request | |
on: | |
workflow_dispatch: | |
pull_request: | |
workflow_call: | |
secrets: | |
FIREBASE_ADMIN_SDK_SERVICE_ACCOUNT_DEV: | |
required: true | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }}-pull_request | |
cancel-in-progress: true | |
jobs: | |
changed-files: | |
timeout-minutes: 30 | |
runs-on: ubuntu-latest | |
outputs: | |
app_pubspec_any_changed: ${{ steps.changed-files.outputs.app_pubspec_any_changed == 'true' }} | |
firebase_any_changed: ${{ steps.changed-files.outputs.firebase_any_changed == 'true' }} | |
update_si_any_changed: ${{ steps.changed-files.outputs.update_si_any_changed == 'true' }} | |
steps: | |
- uses: actions/[email protected] | |
with: | |
fetch-depth: 0 | |
- name: Get changed files | |
id: changed-files | |
uses: tj-actions/changed-files@v45 | |
with: | |
files_yaml: | | |
app_pubspec: | |
- packages/*/pubspec.yaml | |
firebase: | |
- firebase.json | |
- firebase/** | |
update_si: | |
- packages/*/assets/svg/* | |
- packages/*/assets/si/* | |
- packages/*/pubspec.yaml | |
generate: | |
timeout-minutes: 30 | |
runs-on: ubuntu-latest | |
permissions: # for KoheiKanagu/composite-actions/setup-firebase-cli@main | |
id-token: write | |
contents: read | |
steps: | |
- name: Collect Workflow Telemetry | |
uses: catchpoint/[email protected] | |
with: | |
comment_on_pr: false | |
### Set up ### | |
- uses: actions/[email protected] | |
- name: Setup Flutter | |
uses: subosito/[email protected] | |
with: | |
channel: beta | |
flutter-version-file: pubspec.yaml | |
cache: true | |
cache-key: "flutter-:os:-:channel:-:version:-:arch:" | |
pub-cache-key: "flutter-pub-:os:-:channel:-:version:-:arch:" | |
- name: Flutter bootstrap | |
run: | | |
.github/workflows/flutter_bootstrap.sh | |
- name: Setup Firebase CLI Dev | |
uses: KoheiKanagu/composite-actions/setup-firebase-cli@main | |
with: | |
workload_identity_provider: ${{ vars.WORKLOAD_IDENTITY_PROVIDER_DEV }} | |
service_account: ${{ vars.SERVICE_ACCOUNT_DEV }} | |
### Generate ### | |
- run: | | |
melos run generate | |
git diff --exit-code | |
build_runner: | |
timeout-minutes: 30 | |
runs-on: ubuntu-latest | |
steps: | |
- name: Collect Workflow Telemetry | |
uses: catchpoint/[email protected] | |
with: | |
comment_on_pr: false | |
### Set up ### | |
- uses: actions/[email protected] | |
- name: Setup Flutter | |
uses: subosito/[email protected] | |
with: | |
channel: beta | |
flutter-version-file: pubspec.yaml | |
cache: true | |
cache-key: "flutter-:os:-:channel:-:version:-:arch:" | |
pub-cache-key: "flutter-pub-:os:-:channel:-:version:-:arch:" | |
- name: Flutter bootstrap | |
run: | | |
.github/workflows/flutter_bootstrap.sh | |
### Build ### | |
- run: | | |
melos run build_runner:build --no-select | |
git diff --exit-code | |
update-si: | |
timeout-minutes: 30 | |
runs-on: ubuntu-latest | |
needs: | |
- changed-files | |
if: ${{ needs.changed-files.outputs.update_si_any_changed == 'true' }} | |
steps: | |
- name: Collect Workflow Telemetry | |
uses: catchpoint/[email protected] | |
with: | |
comment_on_pr: false | |
### Set up ### | |
- uses: actions/[email protected] | |
- name: Setup Flutter | |
uses: subosito/[email protected] | |
with: | |
channel: beta | |
flutter-version-file: pubspec.yaml | |
cache: true | |
cache-key: "flutter-:os:-:channel:-:version:-:arch:" | |
pub-cache-key: "flutter-pub-:os:-:channel:-:version:-:arch:" | |
- name: Flutter bootstrap | |
run: | | |
.github/workflows/flutter_bootstrap.sh | |
### Update si ### | |
- run: | | |
melos run update-si | |
git diff --exit-code | |
fix-format: | |
timeout-minutes: 30 | |
runs-on: ubuntu-latest | |
steps: | |
- name: Collect Workflow Telemetry | |
uses: catchpoint/[email protected] | |
with: | |
comment_on_pr: false | |
### Set up ### | |
- uses: actions/[email protected] | |
- name: Setup Flutter | |
uses: subosito/[email protected] | |
with: | |
channel: beta | |
flutter-version-file: pubspec.yaml | |
cache: true | |
cache-key: "flutter-:os:-:channel:-:version:-:arch:" | |
pub-cache-key: "flutter-pub-:os:-:channel:-:version:-:arch:" | |
- name: Flutter bootstrap | |
run: | | |
.github/workflows/flutter_bootstrap.sh | |
### fix and format ### | |
- name: Fix and Format | |
run: | | |
melos run pub:get | |
melos run dart:fix:format | |
git diff --exit-code | |
analyze: | |
timeout-minutes: 30 | |
runs-on: ubuntu-latest | |
steps: | |
- name: Collect Workflow Telemetry | |
uses: catchpoint/[email protected] | |
with: | |
comment_on_pr: false | |
### Set up ### | |
- uses: actions/[email protected] | |
- name: Setup Flutter | |
uses: subosito/[email protected] | |
with: | |
channel: beta | |
flutter-version-file: pubspec.yaml | |
cache: true | |
cache-key: "flutter-:os:-:channel:-:version:-:arch:" | |
pub-cache-key: "flutter-pub-:os:-:channel:-:version:-:arch:" | |
- name: Flutter bootstrap | |
run: | | |
.github/workflows/flutter_bootstrap.sh | |
### Analyze ### | |
- run: melos run pub:get | |
- run: melos run dart:analyze | |
custom_lint: | |
timeout-minutes: 30 | |
runs-on: ubuntu-latest | |
steps: | |
- name: Collect Workflow Telemetry | |
uses: catchpoint/[email protected] | |
with: | |
comment_on_pr: false | |
### Set up ### | |
- uses: actions/[email protected] | |
- name: Setup Flutter | |
uses: subosito/[email protected] | |
with: | |
channel: beta | |
flutter-version-file: pubspec.yaml | |
cache: true | |
cache-key: "flutter-:os:-:channel:-:version:-:arch:" | |
pub-cache-key: "flutter-pub-:os:-:channel:-:version:-:arch:" | |
- name: Flutter bootstrap | |
run: | | |
.github/workflows/flutter_bootstrap.sh | |
### Custom Lint ### | |
- run: melos run pub:get | |
- run: melos run dart:custom_lint | |
test: | |
timeout-minutes: 30 | |
runs-on: ubuntu-latest | |
steps: | |
- name: Collect Workflow Telemetry | |
uses: catchpoint/[email protected] | |
with: | |
comment_on_pr: false | |
### Set up ### | |
- uses: actions/[email protected] | |
- name: Setup Flutter | |
uses: subosito/[email protected] | |
with: | |
channel: beta | |
flutter-version-file: pubspec.yaml | |
cache: true | |
cache-key: "flutter-:os:-:channel:-:version:-:arch:" | |
pub-cache-key: "flutter-pub-:os:-:channel:-:version:-:arch:" | |
- name: Flutter bootstrap | |
run: | | |
.github/workflows/flutter_bootstrap.sh | |
### Test ### | |
- name: Test | |
run: | | |
melos run flutter:test --no-select | |
golden_test: | |
timeout-minutes: 30 | |
runs-on: macos-14 | |
steps: | |
- name: Collect Workflow Telemetry | |
uses: catchpoint/[email protected] | |
with: | |
comment_on_pr: false | |
### Set up ### | |
- uses: actions/[email protected] | |
- name: Setup Flutter | |
uses: subosito/[email protected] | |
with: | |
channel: beta | |
flutter-version-file: pubspec.yaml | |
cache: true | |
cache-key: "flutter-:os:-:channel:-:version:-:arch:" | |
pub-cache-key: "flutter-pub-:os:-:channel:-:version:-:arch:" | |
- name: Flutter bootstrap | |
run: | | |
.github/workflows/flutter_bootstrap.sh | |
### Test ### | |
- name: Test | |
run: | | |
melos run flutter:golden:test --no-select | |
- name: Upload a Build Artifact | |
if: always() | |
uses: actions/[email protected] | |
with: | |
name: golden_failures | |
path: packages/*/test/**/failures/ | |
pod_install: | |
timeout-minutes: 60 | |
runs-on: macos-14 | |
needs: changed-files | |
if: ${{ needs.changed-files.outputs.app_pubspec_any_changed == 'true' }} | |
steps: | |
- name: Collect Workflow Telemetry | |
uses: catchpoint/[email protected] | |
with: | |
comment_on_pr: false | |
### Set up ### | |
- uses: actions/[email protected] | |
- name: Setup Flutter | |
uses: subosito/[email protected] | |
with: | |
channel: beta | |
flutter-version-file: pubspec.yaml | |
cache: true | |
cache-key: "flutter-:os:-:channel:-:version:-:arch:" | |
pub-cache-key: "flutter-pub-:os:-:channel:-:version:-:arch:" | |
- name: Flutter bootstrap | |
run: | | |
.github/workflows/flutter_bootstrap.sh | |
- name: Pods Cache | |
uses: actions/[email protected] | |
with: | |
path: | | |
packages/*/ios/Pods | |
~/Library/Caches/CocoaPods/Pods | |
key: ${{ runner.os }}-pods-${{ hashFiles('**/Podfile.lock') }} | |
restore-keys: | | |
${{ runner.os }}-pods- | |
- name: Update CocoaPods | |
run: gem update cocoapods | |
### Build ### | |
- run: melos run pub:get | |
- run: melos run pod:install | |
- run: git diff --exit-code | |
firebase-test: | |
timeout-minutes: 30 | |
runs-on: ubuntu-latest | |
permissions: # for KoheiKanagu/composite-actions/setup-firebase-cli@main | |
id-token: write | |
contents: read | |
needs: changed-files | |
if: ${{ needs.changed-files.outputs.firebase_any_changed == 'true' }} | |
steps: | |
- name: Collect Workflow Telemetry | |
uses: catchpoint/[email protected] | |
with: | |
comment_on_pr: false | |
### Set up ### | |
- uses: actions/[email protected] | |
- name: Setup Firebase CLI Dev | |
uses: KoheiKanagu/composite-actions/setup-firebase-cli@main | |
with: | |
workload_identity_provider: ${{ vars.WORKLOAD_IDENTITY_PROVIDER_DEV }} | |
service_account: ${{ vars.SERVICE_ACCOUNT_DEV }} | |
### Test ### | |
- name: Test | |
run: | | |
# https://github.com/firebase/firebase-admin-node/issues/1377 | |
# Workaround for the issue above | |
echo ${{ secrets.FIREBASE_ADMIN_SDK_SERVICE_ACCOUNT_DEV }} | base64 --decode > service-account.json | |
# GOOGLE_APPLICATION_CREDENTIALS is only used in the current shell | |
export GOOGLE_APPLICATION_CREDENTIALS=$GITHUB_WORKSPACE/service-account.json | |
./firebase_emulators_test.sh | |
### Cleanup ### | |
- name: Cleanup | |
if: always() | |
run: | | |
rm -f service-account.json |