From feceb430cfc111ab6a889155cf7034e96cf9d7fc Mon Sep 17 00:00:00 2001 From: "Lucas.Xu" Date: Thu, 22 Jun 2023 21:22:46 +0800 Subject: [PATCH] chore: optimize CI (#2875) --- .github/workflows/docker_ci.yml | 7 ++++--- .github/workflows/flutter_ci.yaml | 6 +++++- .github/workflows/integration_test.yml | 17 ++++++++++------- .github/workflows/tauri_ci.yaml | 8 +++++++- frontend/scripts/makefile/flutter.toml | 2 +- frontend/scripts/makefile/tests.toml | 2 +- 6 files changed, 28 insertions(+), 14 deletions(-) diff --git a/.github/workflows/docker_ci.yml b/.github/workflows/docker_ci.yml index 07b4e32c99..c3b8e7c20e 100644 --- a/.github/workflows/docker_ci.yml +++ b/.github/workflows/docker_ci.yml @@ -21,12 +21,13 @@ on: - unlocked - ready_for_review +concurrency: + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} + cancel-in-progress: true + jobs: build-app: if: github.event.pull_request.draft != true - concurrency: - group: docker_ci-${{ github.event.pull_request.number || github.ref }} - cancel-in-progress: true runs-on: ubuntu-latest steps: - name: Checkout source code diff --git a/.github/workflows/flutter_ci.yaml b/.github/workflows/flutter_ci.yaml index 37b62a11aa..6cc1967ade 100644 --- a/.github/workflows/flutter_ci.yaml +++ b/.github/workflows/flutter_ci.yaml @@ -25,8 +25,13 @@ env: FLUTTER_VERSION: "3.10.1" RUST_TOOLCHAIN: "1.70" +concurrency: + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} + cancel-in-progress: true + jobs: build: + if: github.event.pull_request.draft != true strategy: fail-fast: false matrix: @@ -102,7 +107,6 @@ jobs: git config --system core.longpaths true flutter config --enable-windows-desktop fi - dart pub global activate protoc_plugin 20.0.1 shell: bash - name: Build AppFlowy diff --git a/.github/workflows/integration_test.yml b/.github/workflows/integration_test.yml index 7014a3cbfd..5117dcc0af 100644 --- a/.github/workflows/integration_test.yml +++ b/.github/workflows/integration_test.yml @@ -6,7 +6,7 @@ on: - "main" - "release/*" paths: - - ".github/workflows/flutter_ci.yaml" + - ".github/workflows/integration_test.yml" - "frontend/**" - "!frontend/appflowy_tauri/**" @@ -15,7 +15,7 @@ on: - "main" - "release/*" paths: - - ".github/workflows/flutter_ci.yaml" + - ".github/workflows/integration_test.yml" - "frontend/**" - "!frontend/appflowy_tauri/**" @@ -24,8 +24,13 @@ env: FLUTTER_VERSION: "3.10.1" RUST_TOOLCHAIN: "1.70" +concurrency: + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} + cancel-in-progress: true + jobs: tests: + if: github.event.pull_request.draft != true strategy: matrix: os: [ubuntu-latest] @@ -43,7 +48,6 @@ jobs: uses: actions-rs/toolchain@v1 with: toolchain: ${{ env.RUST_TOOLCHAIN }} - target: ${{ matrix.target }} override: true profile: minimal @@ -92,7 +96,6 @@ jobs: elif [ "$RUNNER_OS" == "Windows" ]; then flutter config --enable-windows-desktop fi - dart pub global activate protoc_plugin 20.0.1 shell: bash - name: Build Test lib @@ -114,11 +117,11 @@ jobs: export DISPLAY=:99 sudo Xvfb -ac :99 -screen 0 1280x1024x24 > /dev/null 2>&1 & sudo apt-get install network-manager - flutter test integration_test/runner.dart -d Linux --coverage --verbose + flutter test integration_test/runner.dart -d Linux --coverage elif [ "$RUNNER_OS" == "macOS" ]; then - flutter test integration_test/runner.dart -d macOS --coverage --verbose + flutter test integration_test/runner.dart -d macOS --coverage elif [ "$RUNNER_OS" == "Windows" ]; then - flutter test integration_test/runner.dart -d Windows --coverage --verbose + flutter test integration_test/runner.dart -d Windows --coverage fi shell: bash diff --git a/.github/workflows/tauri_ci.yaml b/.github/workflows/tauri_ci.yaml index a69df60ad5..318ed6b5b6 100644 --- a/.github/workflows/tauri_ci.yaml +++ b/.github/workflows/tauri_ci.yaml @@ -2,6 +2,7 @@ name: Tauri-CI on: pull_request: paths: + - ".github/workflows/tauri_ci.yaml" - "frontend/rust-lib/**" - "frontend/appflowy_tauri/**" @@ -10,8 +11,13 @@ env: PNPM_VERSION: "8.5.0" RUST_TOOLCHAIN: "1.70" +concurrency: + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} + cancel-in-progress: true + jobs: tauri-build: + if: github.event.pull_request.draft != true strategy: fail-fast: false matrix: @@ -38,7 +44,7 @@ jobs: with: prefix-key: 'ubuntu-latest-tauri' workspaces: | - frontend/rust-lib + frontend/rust-lib frontend/appflowy_tauri/src-tauri - name: install dependencies (windows only) diff --git a/frontend/scripts/makefile/flutter.toml b/frontend/scripts/makefile/flutter.toml index b84020353d..ca501ca7a3 100644 --- a/frontend/scripts/makefile/flutter.toml +++ b/frontend/scripts/makefile/flutter.toml @@ -169,7 +169,7 @@ script = [""" cd appflowy_flutter/ flutter clean flutter pub get - flutter build ${TARGET_OS} --${BUILD_FLAG} --verbose + flutter build ${TARGET_OS} --${BUILD_FLAG} """] script_runner = "@shell" diff --git a/frontend/scripts/makefile/tests.toml b/frontend/scripts/makefile/tests.toml index 3f3e41a722..3d150ea120 100644 --- a/frontend/scripts/makefile/tests.toml +++ b/frontend/scripts/makefile/tests.toml @@ -33,7 +33,7 @@ dependencies = ["inner_build_test_backend"] description = "Run flutter unit tests" script = ''' cd appflowy_flutter -flutter test --dart-define=RUST_LOG=${RUST_LOG} -j, --concurrency=1 --coverage --verbose +flutter test --dart-define=RUST_LOG=${RUST_LOG} -j, --concurrency=1 --coverage ''' [tasks.rust_unit_test]