Skip to content

[EVFS] Dart VaultService streaming wrappers and integration tests #50

[EVFS] Dart VaultService streaming wrappers and integration tests

[EVFS] Dart VaultService streaming wrappers and integration tests #50

Workflow file for this run

name: CI
on:
push:
branches:
- main
- dev
pull_request:
branches:
- main
- dev
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
rust:
name: Rust (lint + test)
runs-on: ubuntu-latest
defaults:
run:
working-directory: rust
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
with:
components: clippy
- uses: Swatinem/rust-cache@v2
with:
workspaces: rust
- run: cargo clippy --all-targets -- -D warnings
- run: cargo test
dart:
name: Dart (codegen + analyze)
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: subosito/flutter-action@v2
with:
channel: stable
- uses: dtolnay/rust-toolchain@stable
- run: cargo install flutter_rust_bridge_codegen
- run: flutter pub get
- run: flutter_rust_bridge_codegen generate
- run: dart run build_runner build --delete-conflicting-outputs
- run: dart analyze lib/ integration_test/
build-android:
name: Android build
needs: [rust, dart]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: subosito/flutter-action@v2
with:
channel: stable
- uses: dtolnay/rust-toolchain@stable
with:
targets: aarch64-linux-android,armv7-linux-androideabi
- uses: nttld/setup-ndk@v1
with:
ndk-version: r27c
- run: cargo install flutter_rust_bridge_codegen
- run: flutter pub get
- run: flutter_rust_bridge_codegen generate
- run: dart run build_runner build --delete-conflicting-outputs
- run: cd example && flutter build apk --release
build-ios:
name: iOS build
needs: [rust, dart]
runs-on: macos-latest
steps:
- uses: actions/checkout@v4
- uses: subosito/flutter-action@v2
with:
channel: stable
- uses: dtolnay/rust-toolchain@stable
with:
targets: aarch64-apple-ios,aarch64-apple-ios-sim
- run: cargo install flutter_rust_bridge_codegen
- run: flutter pub get
- run: flutter_rust_bridge_codegen generate
- run: dart run build_runner build --delete-conflicting-outputs
- run: cd example && flutter build ios --simulator --debug
build-linux:
name: Linux build
needs: [rust, dart]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: subosito/flutter-action@v2
with:
channel: stable
- uses: dtolnay/rust-toolchain@stable
- run: sudo apt-get update && sudo apt-get install -y clang cmake ninja-build pkg-config libgtk-3-dev
- run: cargo install flutter_rust_bridge_codegen
- run: flutter pub get
- run: flutter_rust_bridge_codegen generate
- run: dart run build_runner build --delete-conflicting-outputs
- run: cd example && flutter build linux --release