chore: bump FlutterFire dependencies to latest #528
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: e2e | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
on: | |
pull_request: | |
paths-ignore: | |
- "docs/**" | |
- "**/example/**" | |
- "**.md" | |
- "**.png" | |
- "**.jpg" | |
push: | |
branches: | |
- main | |
paths-ignore: | |
- "docs/**" | |
- "**/example/**" | |
- "**.md" | |
- "**.png" | |
- "**.jpg" | |
workflow_dispatch: | |
jobs: | |
android: | |
runs-on: ubuntu-latest | |
timeout-minutes: 45 | |
steps: | |
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 | |
- uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 | |
name: Install Node.js | |
with: | |
node-version: "18" | |
- uses: actions/setup-java@b36c23c0d998641eff861008f374ee103c25ac73 | |
with: | |
distribution: "temurin" | |
java-version: "17" | |
- name: Enable KVM | |
run: | | |
echo 'KERNEL=="kvm", GROUP="kvm", MODE="0666", OPTIONS+="static_node=kvm"' | sudo tee /etc/udev/rules.d/99-kvm4all.rules | |
sudo udevadm control --reload-rules | |
sudo udevadm trigger --name-match=kvm | |
- name: Gradle cache | |
uses: gradle/actions/setup-gradle@v3 | |
- name: AVD cache | |
uses: actions/cache@v3 | |
id: avd-cache | |
with: | |
path: | | |
~/.android/avd/* | |
~/.android/adb* | |
key: avd-ubuntu | |
- uses: subosito/flutter-action@48cafc24713cca54bbe03cdc3a423187d413aafa | |
with: | |
channel: "stable" | |
cache: true | |
- name: "Install Tools" | |
run: sudo npm i -g firebase-tools | |
- name: Firebase Emulator Cache | |
uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 | |
with: | |
path: ~/.cache/firebase/emulators | |
key: firebase-emulators-v2-${{ github.run_id }} | |
restore-keys: firebase-emulators-v2 | |
- uses: bluefireteam/melos-action@720a109b686f61979b4f9f0d14f582ab1637647e | |
with: | |
run-bootstrap: false | |
melos-version: "3.0.1" | |
- name: "Bootstrap package" | |
run: melos bootstrap --scope tests | |
- name: Start Firebase Emulator | |
run: | | |
cd functions/ | |
npm i | |
npm run build | |
../scripts/start-firebase-emulator.sh | |
- name: E2E Tests | |
uses: reactivecircus/android-emulator-runner@v2 | |
with: | |
working-directory: tests | |
api-level: 31 | |
target: google_apis | |
arch: x86_64 | |
profile: pixel_5 | |
script: flutter test integration_test/firebase_ui_test.dart --dart-define=CI=true -d emulator-5554 | |
ios: | |
runs-on: macos-latest | |
timeout-minutes: 45 | |
steps: | |
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 | |
- uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 | |
name: Install Node.js | |
with: | |
node-version: "18" | |
- uses: actions/setup-java@b36c23c0d998641eff861008f374ee103c25ac73 | |
with: | |
distribution: "temurin" | |
java-version: "11" | |
- name: 'Free up space' | |
run: | | |
sudo rm -rf \ | |
/usr/local/share/.cache \ | |
/Users/runner/Library/Caches \ | |
/Users/runner/Library/Developer/Xcode/DerivedData \ | |
/Users/runner/Library/Developer/CoreSimulator/Caches \ | |
/opt/microsoft/msedge \ | |
/opt/microsoft/powershell \ | |
/opt/pipx \ | |
/usr/lib/mono \ | |
/usr/local/julia* \ | |
/usr/local/lib/android \ | |
/usr/local/share/chromium \ | |
/usr/local/share/powershell \ | |
/usr/share/dotnet | |
df -h / | |
- uses: hendrikmuhs/ccache-action@ed74d11c0b343532753ecead8a951bb09bb34bc9 | |
name: Xcode Compile Cache | |
with: | |
key: ${{ runner.os }}-ios-v3 | |
max-size: 700M | |
- uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 | |
name: Pods Cache | |
id: pods-cache | |
with: | |
path: tests/ios/Pods | |
key: ${{ runner.os }}-pods-v3-${{ hashFiles('tests/ios/Podfile.lock') }} | |
restore-keys: ${{ runner.os }}-ios-pods-v2 | |
- name: "Install Tools" | |
run: sudo npm i -g firebase-tools | |
- name: Firebase Emulator Cache | |
uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 | |
with: | |
path: ~/.cache/firebase/emulators | |
key: firebase-emulators-v1-${{ github.run_id }} | |
restore-keys: firebase-emulators-v1 | |
- uses: subosito/flutter-action@48cafc24713cca54bbe03cdc3a423187d413aafa | |
with: | |
channel: "stable" | |
cache: true | |
- uses: bluefireteam/melos-action@720a109b686f61979b4f9f0d14f582ab1637647e | |
with: | |
run-bootstrap: false | |
melos-version: "3.0.1" | |
- name: "Bootstrap package" | |
run: melos bootstrap --scope tests | |
- name: Clean up previous build artifacts | |
run: | | |
rm -rf build | |
rm -rf .dart_tool | |
- name: "Build Application" | |
working-directory: tests | |
run: | | |
export PATH="/usr/lib/ccache:/usr/local/opt/ccache/libexec:$PATH" | |
export CCACHE_SLOPPINESS=clang_index_store,file_stat_matches,include_file_ctime,include_file_mtime,ivfsoverlay,pch_defines,modules,system_headers,time_macros | |
export CCACHE_FILECLONE=true | |
export CCACHE_DEPEND=true | |
export CCACHE_INODECACHE=true | |
ccache -s | |
flutter build ios --no-codesign --simulator --debug --target=./integration_test/firebase_ui_test.dart --dart-define=CI=true | |
ccache -s | |
- name: Start Firebase Emulator and proxy | |
run: | | |
sudo chown -R 501:20 "/Users/runner/.npm" | |
cd functions/ | |
npm i | |
npm run build | |
../scripts/start-firebase-emulator.sh | |
- name: "E2E Tests" | |
working-directory: tests | |
run: | | |
# Boot simulator and wait for System app to be ready. | |
# List of available simulators: https://github.com/actions/runner-images/blob/main/images/macos/macos-13-Readme.md#installed-simulators | |
SIMULATOR="iPhone 14" | |
xcrun simctl bootstatus "$SIMULATOR" -b | |
xcrun simctl logverbose "$SIMULATOR" enable | |
# Sleep to allow simulator to settle. | |
sleep 15 | |
# Uncomment following line to have simulator logs printed out for debugging purposes. | |
# xcrun simctl spawn booted log stream --predicate 'eventMessage contains "flutter"' & | |
flutter test ./integration_test/firebase_ui_test.dart -d "$SIMULATOR" --dart-define=CI=true | |
macos: | |
runs-on: macos-latest | |
timeout-minutes: 45 | |
steps: | |
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 | |
- uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 | |
name: Install Node.js | |
with: | |
node-version: "18" | |
- uses: actions/setup-java@b36c23c0d998641eff861008f374ee103c25ac73 | |
with: | |
distribution: "temurin" | |
java-version: "11" | |
- uses: hendrikmuhs/ccache-action@ed74d11c0b343532753ecead8a951bb09bb34bc9 | |
name: Xcode Compile Cache | |
with: | |
key: ${{ runner.os }}-macos-v2 | |
max-size: 700M | |
- uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 | |
name: Pods Cache | |
id: pods-cache | |
with: | |
path: tests/macos/Pods | |
key: ${{ runner.os }}-pods-v2-${{ hashFiles('tests/macos/Podfile.lock') }} | |
restore-keys: ${{ runner.os }}-macos-pods-v1 | |
- name: "Install Tools" | |
run: sudo npm i -g firebase-tools | |
- name: Cache Firebase Emulator | |
uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 | |
with: | |
path: ~/.cache/firebase/emulators | |
key: firebase-emulators-v1-${{ github.run_id }} | |
restore-keys: firebase-emulators-v1 | |
- uses: subosito/flutter-action@48cafc24713cca54bbe03cdc3a423187d413aafa | |
with: | |
channel: "stable" | |
cache: true | |
- uses: bluefireteam/melos-action@720a109b686f61979b4f9f0d14f582ab1637647e | |
with: | |
run-bootstrap: false | |
melos-version: "3.0.1" | |
- name: "Bootstrap package" | |
run: melos bootstrap --scope tests | |
- name: "Build Application" | |
working-directory: tests | |
run: | | |
export PATH="/usr/lib/ccache:/usr/local/opt/ccache/libexec:$PATH" | |
export CCACHE_SLOPPINESS=clang_index_store,file_stat_matches,include_file_ctime,include_file_mtime,ivfsoverlay,pch_defines,modules,system_headers,time_macros | |
export CCACHE_FILECLONE=true | |
export CCACHE_DEPEND=true | |
export CCACHE_INODECACHE=true | |
ccache -s | |
flutter build macos --debug --target=./integration_test/firebase_ui_test.dart --device-id=macos --dart-define=CI=true | |
ccache -s | |
- name: Start Firebase Emulator and proxy | |
run: | | |
sudo chown -R 501:20 "/Users/runner/.npm" | |
cd functions/ | |
npm i | |
npm run build | |
../scripts/start-firebase-emulator.sh | |
- name: "E2E Tests" | |
working-directory: tests | |
run: flutter test ./integration_test/firebase_ui_test.dart -d macos --dart-define=CI=true | |
web: | |
runs-on: ubuntu-latest | |
timeout-minutes: 15 | |
steps: | |
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 | |
- uses: subosito/flutter-action@2783a3f08e1baf891508463f8c6653c258246225 | |
with: | |
channel: 'stable' | |
cache: true | |
- uses: bluefireteam/melos-action@720a109b686f61979b4f9f0d14f582ab1637647e | |
with: | |
melos-version: "3.0.1" | |
- name: 'Build Test Applications' | |
run: | | |
cd packages/firebase_ui_auth/example | |
flutter build web | |
cd ../../firebase_ui_database/example | |
flutter build web | |
cd ../../firebase_ui_firestore/example | |
flutter build web | |
cd ../../firebase_ui_storage/example | |
flutter build web |