feat(core): Remaining secure storage bindings #61
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: celest_core | |
on: | |
pull_request: | |
paths: | |
- ".github/workflows/celest_core.yaml" | |
- "packages/celest_core/**" | |
# Prevent duplicate runs due to Graphite | |
# https://graphite.dev/docs/troubleshooting#why-are-my-actions-running-twice | |
concurrency: | |
group: ${{ github.repository }}-${{ github.workflow }}-${{ github.ref }}-${{ github.ref == 'refs/heads/main' && github.sha || ''}} | |
cancel-in-progress: true | |
jobs: | |
analyze_and_format: | |
runs-on: ubuntu-latest | |
timeout-minutes: 10 | |
steps: | |
- name: Git Checkout | |
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # 4.1.1 | |
- name: Setup Flutter | |
uses: subosito/flutter-action@62f096cacda5168a3bd7b95793373be14fa4fbaf # 2.13.0 | |
with: | |
cache: true | |
- name: Get Packages | |
working-directory: packages/celest_core | |
run: dart pub get | |
- name: Analyze | |
working-directory: packages/celest_core | |
run: dart analyze | |
- name: Format | |
working-directory: packages/celest_core | |
run: dart format --set-exit-if-changed . | |
test_darwin: | |
needs: analyze_and_format | |
runs-on: macos-latest-xlarge | |
timeout-minutes: 20 | |
steps: | |
- name: Git Checkout | |
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # 4.1.1 | |
- name: Setup Flutter | |
uses: subosito/flutter-action@62f096cacda5168a3bd7b95793373be14fa4fbaf # 2.13.0 | |
with: | |
cache: true | |
- name: Get Packages | |
working-directory: packages/celest_core | |
run: dart pub get | |
- name: Test | |
working-directory: packages/celest_core | |
run: dart test | |
- name: Get Packages (Example) | |
working-directory: packages/celest_core/example | |
run: flutter pub get | |
- name: Setup iOS Simulator | |
run: | | |
RUNTIME=$(xcrun simctl list runtimes | grep 'iOS 17' | tail -n 1 | cut -d' ' -f 7) | |
echo "Using runtime: $RUNTIME" | |
xcrun simctl create ios 'iPhone 15 Pro Max' $RUNTIME | |
echo "Booting simulator" | |
xcrun simctl boot ios | |
echo "Booted simulator" | |
- name: Test (iOS) | |
working-directory: packages/celest_core/example | |
run: flutter test -d ios integration_test/secure_storage_test.dart | |
- name: Test (macOS) | |
working-directory: packages/celest_core/example | |
run: flutter test -d macos integration_test/secure_storage_test.dart | |
test_android: | |
needs: analyze_and_format | |
runs-on: | |
group: public | |
labels: linux | |
timeout-minutes: 15 | |
steps: | |
- name: Git Checkout | |
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # 4.1.1 | |
- name: Setup Flutter | |
uses: subosito/flutter-action@62f096cacda5168a3bd7b95793373be14fa4fbaf # 2.13.0 | |
with: | |
cache: true | |
- name: Get Packages | |
working-directory: packages/celest_core/example | |
run: flutter pub get | |
- 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: Test (Android) | |
uses: ReactiveCircus/android-emulator-runner@6b0df4b0efb23bb0ec63d881db79aefbc976e4b2 # 2.30.1 | |
with: | |
# Matches `package:jni` compileSdkVersion | |
# https://github.com/dart-lang/native/blob/001910c9f40d637cb25c19bb500fb89cebdf7450/pkgs/jni/android/build.gradle#L57C23-L57C25 | |
api-level: 31 | |
arch: x86_64 | |
script: cd packages/celest_core/example && flutter test -d emulator integration_test/secure_storage_test.dart |