mirror of
https://github.com/AppFlowy-IO/AppFlowy.git
synced 2024-08-30 18:12:39 +00:00
ci: use linux vm for dart unit test (#3991)
* chore: use the faster linux vm * chore: download artifact * chore: make it work --------- Co-authored-by: Lucas.Xu <lucas.xu@appflowy.io>
This commit is contained in:
parent
414bb26e56
commit
c475a5d960
64
.github/workflows/flutter_ci.yaml
vendored
64
.github/workflows/flutter_ci.yaml
vendored
@ -108,18 +108,15 @@ jobs:
|
|||||||
|
|
||||||
- name: Build AppFlowy
|
- name: Build AppFlowy
|
||||||
working-directory: frontend
|
working-directory: frontend
|
||||||
run: |
|
run: cargo make --profile ${{ matrix.flutter_profile }} appflowy-core-dev
|
||||||
cargo make --profile ${{ matrix.flutter_profile }} appflowy-core-dev
|
|
||||||
|
|
||||||
- name: Run code generation
|
- name: Run code generation
|
||||||
working-directory: frontend
|
working-directory: frontend
|
||||||
run: |
|
run: cargo make code_generation
|
||||||
cargo make code_generation
|
|
||||||
|
|
||||||
- name: Flutter Analyzer
|
- name: Flutter Analyzer
|
||||||
working-directory: frontend/appflowy_flutter
|
working-directory: frontend/appflowy_flutter
|
||||||
run: |
|
run: flutter analyze .
|
||||||
flutter analyze .
|
|
||||||
|
|
||||||
- name: Compress appflowy_flutter
|
- name: Compress appflowy_flutter
|
||||||
run: tar -czf appflowy_flutter.tar.gz frontend/appflowy_flutter
|
run: tar -czf appflowy_flutter.tar.gz frontend/appflowy_flutter
|
||||||
@ -135,11 +132,11 @@ jobs:
|
|||||||
strategy:
|
strategy:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
os: [macos-latest]
|
os: [ubuntu-latest]
|
||||||
include:
|
include:
|
||||||
- os: macos-latest
|
- os: ubuntu-latest
|
||||||
flutter_profile: development-mac-x86_64
|
flutter_profile: development-linux-x86_64
|
||||||
target: x86_64-apple-darwin
|
target: x86_64-unknown-linux-gnu
|
||||||
runs-on: ${{ matrix.os }}
|
runs-on: ${{ matrix.os }}
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
@ -176,19 +173,45 @@ jobs:
|
|||||||
- name: Install prerequisites
|
- name: Install prerequisites
|
||||||
working-directory: frontend
|
working-directory: frontend
|
||||||
run: |
|
run: |
|
||||||
if [ "$RUNNER_OS" == "macOS" ]; then
|
if [ "$RUNNER_OS" == "Linux" ]; then
|
||||||
cargo make appflowy-flutter-deps-tools
|
sudo wget -qO /etc/apt/trusted.gpg.d/dart_linux_signing_key.asc https://dl-ssl.google.com/linux/linux_signing_key.pub
|
||||||
|
sudo wget -qO /etc/apt/sources.list.d/dart_stable.list https://storage.googleapis.com/download.dartlang.org/linux/debian/dart_stable.list
|
||||||
|
sudo apt-get update
|
||||||
|
sudo apt-get install -y dart curl build-essential libssl-dev clang cmake ninja-build pkg-config libgtk-3-dev keybinder-3.0 libnotify-dev
|
||||||
fi
|
fi
|
||||||
shell: bash
|
shell: bash
|
||||||
|
|
||||||
|
- name: Enable Flutter Desktop
|
||||||
|
run: |
|
||||||
|
if [ "$RUNNER_OS" == "Linux" ]; then
|
||||||
|
flutter config --enable-linux-desktop
|
||||||
|
elif [ "$RUNNER_OS" == "macOS" ]; then
|
||||||
|
flutter config --enable-macos-desktop
|
||||||
|
elif [ "$RUNNER_OS" == "Windows" ]; then
|
||||||
|
git config --system core.longpaths true
|
||||||
|
flutter config --enable-windows-desktop
|
||||||
|
fi
|
||||||
|
shell: bash
|
||||||
|
|
||||||
|
- uses: actions/download-artifact@v3
|
||||||
|
with:
|
||||||
|
name: ${{ github.run_id }}-${{ matrix.os }}
|
||||||
|
|
||||||
|
- name: Uncompress appflowy_flutter
|
||||||
|
run: tar -xf appflowy_flutter.tar.gz
|
||||||
|
|
||||||
|
- name: Run flutter pub get
|
||||||
|
working-directory: frontend
|
||||||
|
run: cargo make pub_get
|
||||||
|
|
||||||
- name: Run Flutter unit tests
|
- name: Run Flutter unit tests
|
||||||
working-directory: frontend
|
working-directory: frontend
|
||||||
run: |
|
run: |
|
||||||
if [ "$RUNNER_OS" == "macOS" ]; then
|
if [ "$RUNNER_OS" == "macOS" ]; then
|
||||||
flutter config --enable-macos-desktop
|
|
||||||
cargo make --profile ${{ matrix.flutter_profile }} appflowy-dev
|
|
||||||
cargo make dart_unit_test
|
cargo make dart_unit_test
|
||||||
else
|
elif [ "$RUNNER_OS" == "Linux" ]; then
|
||||||
|
cargo make dart_unit_test_no_build
|
||||||
|
elif [ "$RUNNER_OS" == "Windows" ]; then
|
||||||
cargo make dart_unit_test_no_build
|
cargo make dart_unit_test_no_build
|
||||||
fi
|
fi
|
||||||
shell: bash
|
shell: bash
|
||||||
@ -277,10 +300,9 @@ jobs:
|
|||||||
- name: Uncompress appflowy_flutter
|
- name: Uncompress appflowy_flutter
|
||||||
run: tar -xf appflowy_flutter.tar.gz
|
run: tar -xf appflowy_flutter.tar.gz
|
||||||
|
|
||||||
- name: Run code generation
|
- name: Run flutter pub get
|
||||||
working-directory: frontend
|
working-directory: frontend
|
||||||
run: |
|
run: cargo make pub_get
|
||||||
cargo make code_generation
|
|
||||||
|
|
||||||
- name: Run Flutter integration tests
|
- name: Run Flutter integration tests
|
||||||
working-directory: frontend/appflowy_flutter
|
working-directory: frontend/appflowy_flutter
|
||||||
@ -384,12 +406,6 @@ jobs:
|
|||||||
- name: Uncompress appflowy_flutter
|
- name: Uncompress appflowy_flutter
|
||||||
run: tar -xf appflowy_flutter.tar.gz
|
run: tar -xf appflowy_flutter.tar.gz
|
||||||
|
|
||||||
- name: Run code generation
|
|
||||||
if: matrix.os == 'windows-latest'
|
|
||||||
working-directory: frontend
|
|
||||||
run: |
|
|
||||||
cargo make code_generation
|
|
||||||
|
|
||||||
- name: Build flutter product
|
- name: Build flutter product
|
||||||
working-directory: frontend
|
working-directory: frontend
|
||||||
run: |
|
run: |
|
||||||
|
@ -263,25 +263,33 @@ script = [
|
|||||||
]
|
]
|
||||||
script_runner = "@duckscript"
|
script_runner = "@duckscript"
|
||||||
|
|
||||||
[tasks.code_generation]
|
[tasks.pub_get]
|
||||||
script_runner = "@shell"
|
script_runner = "@shell"
|
||||||
script = ["""
|
script = ["""
|
||||||
cd appflowy_flutter
|
cd appflowy_flutter
|
||||||
flutter clean
|
flutter clean
|
||||||
flutter pub get
|
flutter pub get
|
||||||
flutter packages pub get
|
|
||||||
cd ../
|
cd ../
|
||||||
|
"""]
|
||||||
|
|
||||||
|
[tasks.pub_get.windows]
|
||||||
|
script_runner = "@duckscript"
|
||||||
|
script = ["""
|
||||||
|
cd ./appflowy_flutter/
|
||||||
|
exec cmd.exe /c flutter clean
|
||||||
|
exec cmd.exe /c flutter pub get
|
||||||
|
cd ../
|
||||||
|
"""]
|
||||||
|
|
||||||
|
[tasks.code_generation]
|
||||||
|
script_runner = "@shell"
|
||||||
|
script = ["""
|
||||||
sh scripts/code_generation/generate.sh
|
sh scripts/code_generation/generate.sh
|
||||||
"""]
|
"""]
|
||||||
|
|
||||||
[tasks.code_generation.windows]
|
[tasks.code_generation.windows]
|
||||||
script_runner = "@duckscript"
|
script_runner = "@duckscript"
|
||||||
script = ["""
|
script = ["""
|
||||||
cd ./appflowy_flutter/
|
|
||||||
exec cmd.exe /c flutter clean
|
|
||||||
exec cmd.exe /c flutter pub get
|
|
||||||
exec cmd.exe /c flutter packages pub get
|
|
||||||
cd ../
|
|
||||||
exec scripts/code_generation/generate.cmd
|
exec scripts/code_generation/generate.cmd
|
||||||
"""]
|
"""]
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user