From 16b16426a35e3db0698c659dbe1cdca132ad852c Mon Sep 17 00:00:00 2001 From: Hiddify <114227601+hiddify1@users.noreply.github.com> Date: Mon, 17 Jul 2023 23:47:18 +0200 Subject: [PATCH] Add CI --- .github/workflows/ci.yml | 75 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 75 insertions(+) create mode 100644 .github/workflows/ci.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 00000000..be7db561 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,75 @@ +# 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@9a04e6d73cca37bd455e0608d7e5092f881fd603 + + - 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