main.yml 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. on: [push, pull_request]
  2. name: Rust CI
  3. jobs:
  4. check:
  5. name: Check
  6. runs-on: ubuntu-latest
  7. steps:
  8. - uses: actions/checkout@v2
  9. - uses: actions-rs/toolchain@v1
  10. with:
  11. profile: minimal
  12. toolchain: stable
  13. override: true
  14. - uses: Swatinem/rust-cache@v1
  15. - run: sudo apt-get update
  16. - run: sudo apt install libwebkit2gtk-4.0-dev libappindicator3-dev libgtk-3-dev
  17. - uses: actions-rs/cargo@v1
  18. with:
  19. command: check
  20. test:
  21. name: Test Suite
  22. runs-on: ubuntu-latest
  23. steps:
  24. - uses: actions/checkout@v2
  25. - uses: actions-rs/toolchain@v1
  26. with:
  27. profile: minimal
  28. toolchain: stable
  29. override: true
  30. - uses: Swatinem/rust-cache@v1
  31. - run: sudo apt-get update
  32. - run: sudo apt install libwebkit2gtk-4.0-dev libappindicator3-dev libgtk-3-dev
  33. - uses: davidB/rust-cargo-make@v1
  34. - uses: browser-actions/setup-firefox@latest
  35. - uses: jetli/wasm-pack-action@v0.3.0
  36. - uses: actions-rs/cargo@v1
  37. with:
  38. command: make
  39. args: tests
  40. fmt:
  41. name: Rustfmt
  42. runs-on: ubuntu-latest
  43. steps:
  44. - uses: actions/checkout@v2
  45. - uses: actions-rs/toolchain@v1
  46. with:
  47. profile: minimal
  48. toolchain: stable
  49. override: true
  50. - uses: Swatinem/rust-cache@v1
  51. - run: rustup component add rustfmt
  52. - uses: actions-rs/cargo@v1
  53. with:
  54. command: fmt
  55. args: --all -- --check
  56. clippy:
  57. name: Clippy
  58. runs-on: ubuntu-latest
  59. steps:
  60. - uses: actions/checkout@v2
  61. - uses: actions-rs/toolchain@v1
  62. with:
  63. profile: minimal
  64. toolchain: stable
  65. override: true
  66. - uses: Swatinem/rust-cache@v1
  67. - run: sudo apt-get update
  68. - run: sudo apt install libwebkit2gtk-4.0-dev libappindicator3-dev libgtk-3-dev
  69. - run: rustup component add clippy
  70. - uses: actions-rs/cargo@v1
  71. with:
  72. command: clippy
  73. args: -- -D warnings