mirror of
https://github.com/aljazceru/turso.git
synced 2025-12-25 20:14:21 +01:00
gh workflow for dart (test, precompile, publish), only test is activated
This commit is contained in:
100
.github/workflows/dart.yml
vendored
Normal file
100
.github/workflows/dart.yml
vendored
Normal file
@@ -0,0 +1,100 @@
|
||||
name: Dart/Flutter
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
tags:
|
||||
- v*
|
||||
pull_request:
|
||||
branches:
|
||||
- main
|
||||
env:
|
||||
working-directory: bindings/dart
|
||||
jobs:
|
||||
test:
|
||||
defaults:
|
||||
run:
|
||||
working-directory: ${{ env.working-directory }}
|
||||
strategy:
|
||||
matrix:
|
||||
os:
|
||||
- blacksmith-4vcpu-ubuntu-2404
|
||||
- macos-latest
|
||||
- windows-latest
|
||||
runs-on: ${{ matrix.os }}
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v4
|
||||
- name: Install Rust (stable)
|
||||
uses: dtolnay/rust-toolchain@stable
|
||||
- name: Setup Dart
|
||||
uses: dart-lang/setup-dart@v1
|
||||
- name: Install Flutter
|
||||
uses: subosito/flutter-action@v2
|
||||
- name: Get flutter deps
|
||||
run: flutter pub get
|
||||
- name: Build test binaries
|
||||
run: cargo build --package turso_dart --target-dir=rust/test_build
|
||||
- name: Run tests
|
||||
run: flutter test
|
||||
precompile:
|
||||
if: ${{ false && startsWith(github.ref, 'refs/tags/') }}
|
||||
defaults:
|
||||
run:
|
||||
working-directory: ${{ env.working-directory }}
|
||||
runs-on: ${{ matrix.os }}
|
||||
permissions:
|
||||
contents: write
|
||||
strategy:
|
||||
matrix:
|
||||
os:
|
||||
- blacksmith-4vcpu-ubuntu-2404
|
||||
- macOS-latest
|
||||
- windows-latest
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v4
|
||||
- name: Install Rust (stable)
|
||||
uses: dtolnay/rust-toolchain@stable
|
||||
- name: Setup Dart
|
||||
uses: dart-lang/setup-dart@v1
|
||||
- name: Install Flutter
|
||||
uses: subosito/flutter-action@v2
|
||||
- name: Set up Android SDK
|
||||
if: (matrix.os == 'ubuntu-latest')
|
||||
uses: android-actions/setup-android@v2
|
||||
- name: Install specific NDK
|
||||
if: (matrix.os == 'ubuntu-latest')
|
||||
run: sdkmanager --install "ndk;25.1.8937393"
|
||||
- name: Get flutter deps
|
||||
run: flutter pub get
|
||||
- name: Precompile
|
||||
if: (matrix.os == 'macOS-latest') || (matrix.os == 'windows-latest')
|
||||
run: dart run build_tool precompile-binaries -v --manifest-dir=../../rust --repository=dikatok/libsql_dart
|
||||
working-directory: cargokit/build_tool
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
PRIVATE_KEY: ${{ secrets.CARGOKIT_PRIVATE_KEY }}
|
||||
- name: Precompile (with Android)
|
||||
if: (matrix.os == 'ubuntu-latest')
|
||||
run: dart run build_tool precompile-binaries -v --manifest-dir=../../rust --repository=dikatok/libsql_dart --android-sdk-location=/usr/local/lib/android/sdk --android-ndk-version=25.1.8937393 --android-min-sdk-version=23
|
||||
working-directory: cargokit/build_tool
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
PRIVATE_KEY: ${{ secrets.CARGOKIT_PRIVATE_KEY }}
|
||||
publish:
|
||||
if: ${{ false && startsWith(github.ref, 'refs/tags/') }}
|
||||
defaults:
|
||||
run:
|
||||
working-directory: ${{ env.working-directory }}
|
||||
runs-on: blacksmith-4vcpu-ubuntu-2404
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v4
|
||||
- name: "Publish libsql_dart"
|
||||
uses: k-paxian/dart-package-publisher@v.1.6.2
|
||||
with:
|
||||
accessToken: ${{ secrets.PUBDEV_ACCESS_TOKEN }}
|
||||
refreshToken: ${{ secrets.PUBDEV_REFRESH_TOKEN }}
|
||||
skipTests: true
|
||||
force: true
|
||||
Reference in New Issue
Block a user