flakebox-ci.yml 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. # THIS FILE IS AUTOGENERATED FROM FLAKEBOX CONFIGURATION
  2. jobs:
  3. build:
  4. name: Build
  5. runs-on: ${{ matrix.runs-on }}
  6. steps:
  7. - uses: actions/checkout@v4
  8. - name: Install Nix
  9. uses: DeterminateSystems/nix-installer-action@v4
  10. - name: Magic Nix Cache
  11. uses: DeterminateSystems/magic-nix-cache-action@v2
  12. - name: Build on ${{ matrix.host }}
  13. run: 'nix flake check -L .#
  14. '
  15. strategy:
  16. matrix:
  17. host:
  18. - macos-x86_64
  19. - macos-aarch64
  20. - linux
  21. include:
  22. - host: linux
  23. runs-on: ubuntu-latest
  24. timeout: 60
  25. - host: macos-x86_64
  26. runs-on: macos-12
  27. timeout: 60
  28. - host: macos-aarch64
  29. runs-on: macos-14
  30. timeout: 60
  31. timeout-minutes: ${{ matrix.timeout }}
  32. flake:
  33. name: Flake self-check
  34. runs-on: ubuntu-latest
  35. steps:
  36. - uses: actions/checkout@v4
  37. - name: Check Nix flake inputs
  38. uses: DeterminateSystems/flake-checker-action@v5
  39. with:
  40. fail-mode: true
  41. lint:
  42. name: Lint
  43. runs-on: ubuntu-latest
  44. steps:
  45. - uses: actions/checkout@v4
  46. - name: Install Nix
  47. uses: DeterminateSystems/nix-installer-action@v4
  48. - name: Magic Nix Cache
  49. uses: DeterminateSystems/magic-nix-cache-action@v2
  50. - name: Cargo Cache
  51. uses: actions/cache@v3
  52. with:
  53. key: ${{ runner.os }}-${{ hashFiles('Cargo.lock') }}
  54. path: ~/.cargo
  55. - name: Commit Check
  56. run: '# run the same check that git `pre-commit` hook does
  57. nix develop --ignore-environment .#lint --command ./misc/git-hooks/pre-commit
  58. '
  59. name: CI
  60. 'on':
  61. merge_group:
  62. branches:
  63. - master
  64. - main
  65. pull_request:
  66. branches:
  67. - master
  68. - main
  69. push:
  70. branches:
  71. - master
  72. - main
  73. tags:
  74. - v*
  75. workflow_dispatch: {}
  76. # THIS FILE IS AUTOGENERATED FROM FLAKEBOX CONFIGURATION