ci.yaml 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. name: CI
  2. on:
  3. push:
  4. branches: [main]
  5. pull_request:
  6. branches: [main]
  7. jobs:
  8. build-macos:
  9. runs-on: macOS-latest
  10. steps:
  11. - name: Checkout
  12. uses: actions/checkout@v2
  13. - name: Env install
  14. run: cd frontend && make install_rust && make install_cargo_make && cargo make install_targets
  15. - name: Run frontend tests
  16. run: cd frontend/rust-lib && cargo test
  17. - name: Run shared-lib tests
  18. run: cd shared-lib && cargo test
  19. build-linux:
  20. runs-on: linux-latest
  21. steps:
  22. - name: Checkout
  23. uses: actions/checkout@v2
  24. - name: Packages
  25. run: sudo apt-get install -y curl build-essential libsqlite3-dev libssl-dev clang cmake ninja-build pkg-config libgtk-3-dev
  26. - name: Rust
  27. run: |
  28. curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
  29. source $HOME/.cargo/env
  30. rustup toolchain install nightly
  31. rustup default nightly
  32. - name: Flutter
  33. run: |
  34. git clone https://github.com/flutter/flutter.git
  35. cd flutter
  36. echo "export PATH=\$PATH:"`pwd`"/bin" >> ~/.profile
  37. export PATH="$PATH:`pwd`/bin"
  38. flutter channel dev
  39. flutter config --enable-linux-desktop
  40. flutter doctor
  41. - name: Deps
  42. run: cargo install --force cargo-make && cargo install --force duckscript_cli && cargo make flowy_dev && cargo make -p development-linux-x86 pb && cargo make -p development-linux-x86 appflowy-linux-dev