4343 strategy :
4444 fail-fast : false
4545 matrix :
46- os : [ubuntu-latest]
46+ os : [ubuntu-latest, ubuntu-24.04-arm, macos-13, macos-latest ]
4747
4848 steps :
4949 - name : Checkout repository
@@ -52,10 +52,12 @@ jobs:
5252 ref : ${{ github.event.pull_request.head.sha }}
5353
5454 - name : Stand up docker services
55+ if : matrix.os == 'ubuntu-latest' || matrix.os == 'ubuntu-24.04-arm' || github.event_name == 'push'
5556 run : |
5657 docker compose up -d
5758
5859 - name : Wait for containers to be ready
60+ if : matrix.os == 'ubuntu-latest' || matrix.os == 'ubuntu-24.04-arm' || github.event_name == 'push'
5961 run : |
6062 for _ in {1..10}; do
6163 if curl --silent --fail http://minio:9000/minio/health/live; then
@@ -87,10 +89,11 @@ jobs:
8789 key : ${{ env.RUST_CHANNEL }}
8890
8991 - name : Install cargo-deny
92+ if : matrix.os == 'ubuntu-latest' || matrix.os == 'ubuntu-24.04-arm' || github.event_name == 'push'
9093 run : cargo install --locked cargo-deny
9194
9295 - name : Check
93- if : matrix.os == 'ubuntu-latest' || github.event_name == 'push'
96+ if : matrix.os == 'ubuntu-latest' || matrix.os == 'ubuntu-24.04-arm' || github.event_name == 'push'
9497 env :
9598 R2_BUCKET : ${{ secrets.R2_BUCKET }}
9699 R2_ACCESS_KEY_ID : ${{ secrets.R2_ACCESS_KEY_ID }}
@@ -110,6 +113,11 @@ jobs:
110113 run : |
111114 just pre-commit
112115
116+ - name : Run unit tests only
117+ if : matrix.os != 'ubuntu-latest' && matrix.os != 'ubuntu-24.04-arm'
118+ run : |
119+ cargo test --lib
120+
113121 - name : Run integration tests against object stores
114122 if : github.event_name == 'cron'
115123 env :
0 commit comments