85 lines
2.4 KiB
YAML
85 lines
2.4 KiB
YAML
# This workflow uses actions that are not certified by GitHub.
|
|
# They are provided by a third-party and are governed by
|
|
# separate terms of service, privacy policy, and support
|
|
# documentation.
|
|
|
|
name: Dart
|
|
|
|
on:
|
|
push:
|
|
branches: [ "main" ]
|
|
pull_request:
|
|
branches: [ "main" ]
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
|
|
# Note: This workflow uses the latest stable version of the Dart SDK.
|
|
# You can specify other versions if desired, see documentation here:
|
|
# https://github.com/dart-lang/setup-dart/blob/main/README.md
|
|
# - uses: dart-lang/setup-dart@v1
|
|
- uses: dart-lang/setup-dart@v1
|
|
- name: Install Flutter SDK
|
|
uses: mobiledevops/flutter-sdk-action@v1.0.0
|
|
with:
|
|
flutter-sdk-version: 3.7.7
|
|
- run: flutter --version
|
|
- run: flutter doctor
|
|
- run: flutter pub get
|
|
# - run: flutter test
|
|
# - run: flutter build ios --release --no-codesign
|
|
|
|
- name: Setup Go environment
|
|
uses: actions/setup-go@v4.0.1
|
|
|
|
- name: Setup Java
|
|
uses: actions/setup-java@v3
|
|
with:
|
|
distribution: "zulu"
|
|
java-version: 11
|
|
|
|
- name: Setup Android SDK
|
|
uses: android-actions/setup-android@v2
|
|
|
|
- name: Install dependencies
|
|
run: dart pub get
|
|
- name: gen
|
|
run: |
|
|
make gen
|
|
dart run slang
|
|
|
|
- name: make libs
|
|
run: |
|
|
make android-libs windows-libs
|
|
- name: Release Android
|
|
run: |
|
|
make release-android
|
|
cp "$(find . -name '*.apk')" .
|
|
- name: Release Windows
|
|
run: |
|
|
flutter_distributor package --platform windows --targets exe
|
|
cp "$(find . -name '*.exe')" .
|
|
|
|
# Uncomment this step to verify the use of 'dart format' on each commit.
|
|
# - name: Verify formatting
|
|
# run: dart format --output=none --set-exit-if-changed .
|
|
|
|
# # Consider passing '--fatal-infos' for slightly stricter analysis.
|
|
# - name: Analyze project source
|
|
# run: dart analyze
|
|
|
|
# # Your project will need to have tests in test/ and a dependency on
|
|
# # package:test for this step to succeed. Note that Flutter projects will
|
|
# # want to change this to 'flutter test'.
|
|
# - name: Run tests
|
|
# run: dart test
|
|
|
|
- uses: actions/upload-artifact@v3
|
|
with:
|
|
name: apk
|
|
path: ./*.apk
|