ci.yaml 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  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-ubuntu:
  20. runs-on: ubuntu-latest
  21. steps:
  22. - name: Checkout
  23. uses: actions/checkout@v2
  24. - name: Packages
  25. run: |
  26. sudo wget -qO /etc/apt/trusted.gpg.d/dart_linux_signing_key.asc https://dl-ssl.google.com/linux/linux_signing_key.pub
  27. sudo wget -qO /etc/apt/sources.list.d/dart_stable.list https://storage.googleapis.com/download.dartlang.org/linux/debian/dart_stable.list
  28. sudo apt-get update
  29. sudo apt-get install -y dart curl build-essential libsqlite3-dev libssl-dev clang cmake ninja-build pkg-config libgtk-3-dev
  30. - name: Rust
  31. run: |
  32. curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
  33. source $HOME/.cargo/env
  34. rustup toolchain install nightly
  35. rustup default nightly
  36. - name: Flutter
  37. run: |
  38. git clone https://github.com/flutter/flutter.git
  39. cd flutter
  40. echo `pwd`"/bin" >> $GITHUB_PATH
  41. export PATH="$PATH:`pwd`/bin"
  42. flutter channel dev
  43. flutter config --enable-linux-desktop
  44. flutter doctor
  45. - name: Deps
  46. run: |
  47. cd frontend
  48. cargo install --force cargo-make
  49. cargo install --force duckscript_cli
  50. cargo make flowy_dev
  51. cargo make -p development-linux-x86 appflowy-linux-dev