|
16 | 16 |
|
17 | 17 | jobs:
|
18 | 18 | tests:
|
| 19 | + # Very generic tests, we don't verify whether the envs are discovered correctly or not. |
| 20 | + # However we do ensure that envs that are discovered are valid. |
| 21 | + # See other jobs for specific tests. |
19 | 22 | name: Tests
|
20 | 23 | runs-on: ${{ matrix.os }}
|
21 | 24 | strategy:
|
22 | 25 | fail-fast: false
|
23 | 26 | matrix:
|
24 | 27 | include:
|
25 |
| - # - os: windows-latest |
26 |
| - # target: x86_64-pc-windows-msvc |
27 |
| - # run_cli: "yes" |
28 |
| - # - os: windows-latest |
29 |
| - # target: aarch64-pc-windows-msvc |
30 |
| - # run_cli: "no" |
| 28 | + - os: windows-latest |
| 29 | + target: x86_64-pc-windows-msvc |
| 30 | + run_cli: "yes" |
| 31 | + - os: windows-latest |
| 32 | + target: aarch64-pc-windows-msvc |
| 33 | + run_cli: "no" |
31 | 34 | - os: ubuntu-latest
|
32 | 35 | target: x86_64-unknown-linux-musl
|
33 | 36 | run_cli: "yes"
|
34 |
| - # - os: macos-latest |
35 |
| - # target: x86_64-apple-darwin |
36 |
| - # run_cli: "yes" |
37 |
| - # - os: macos-14 |
38 |
| - # target: aarch64-apple-darwin |
39 |
| - # run_cli: "yes" |
| 37 | + - os: macos-latest |
| 38 | + target: x86_64-apple-darwin |
| 39 | + run_cli: "yes" |
| 40 | + - os: macos-14 |
| 41 | + target: aarch64-apple-darwin |
| 42 | + run_cli: "yes" |
40 | 43 | steps:
|
41 | 44 | - name: Checkout
|
42 | 45 | uses: actions/checkout@v4
|
@@ -190,7 +193,10 @@ jobs:
|
190 | 193 | RUST_LOG: trace
|
191 | 194 | shell: bash
|
192 | 195 |
|
193 |
| - specific-tests: |
| 196 | + isolated-tests: |
| 197 | + # Some of these tests are very specific and need to be run in isolation. |
| 198 | + # E.g. we need to ensure we have a poetry project setup correctly (without .venv created using `pip -m venv .venv`). |
| 199 | + # We can try to use the previous `tests` job, but that gets very complicated. |
194 | 200 | name: Other Tests
|
195 | 201 | runs-on: ${{ matrix.os }}
|
196 | 202 | strategy:
|
@@ -317,6 +323,8 @@ jobs:
|
317 | 323 | shell: bash
|
318 | 324 |
|
319 | 325 | container-tests:
|
| 326 | + # These tests are required as its not easy/possible to use the previous jobs. |
| 327 | + # E.g. we need to test against the jupyter container, as we found some issues specific to that env. |
320 | 328 | name: Tests in Containers
|
321 | 329 | container:
|
322 | 330 | image: ${{ matrix.image }}
|
@@ -365,60 +373,60 @@ jobs:
|
365 | 373 | run: cargo test --frozen --features ${{ matrix.feature }} -- --nocapture
|
366 | 374 | shell: bash
|
367 | 375 |
|
368 |
| - # builds: |
369 |
| - # name: Builds |
370 |
| - # runs-on: ${{ matrix.os }} |
371 |
| - # strategy: |
372 |
| - # fail-fast: false |
373 |
| - # matrix: |
374 |
| - # include: |
375 |
| - # - os: windows-latest |
376 |
| - # target: x86_64-pc-windows-msvc |
377 |
| - # - os: windows-latest |
378 |
| - # target: aarch64-pc-windows-msvc |
379 |
| - # - os: ubuntu-latest |
380 |
| - # target: x86_64-unknown-linux-musl |
381 |
| - # run_cli: "yes" |
382 |
| - # # - os: ubuntu-latest |
383 |
| - # # target: aarch64-unknown-linux-gnu |
384 |
| - # # - os: ubuntu-latest |
385 |
| - # # target: arm-unknown-linux-gnueabihf |
386 |
| - # - os: macos-latest |
387 |
| - # target: x86_64-apple-darwin |
388 |
| - # run_cli: "yes" |
389 |
| - # - os: macos-14 |
390 |
| - # target: aarch64-apple-darwin |
391 |
| - # run_cli: "yes" |
392 |
| - # # - os: ubuntu-latest |
393 |
| - # # target: x86_64-unknown-linux-gnu |
394 |
| - # # - os: ubuntu-latest |
395 |
| - # # target: aarch64-unknown-linux-musl |
396 |
| - # steps: |
397 |
| - # - name: Checkout |
398 |
| - # uses: actions/checkout@v4 |
399 |
| - |
400 |
| - # - name: Rust Tool Chain setup |
401 |
| - # uses: dtolnay/rust-toolchain@stable |
402 |
| - # with: |
403 |
| - # toolchain: stable |
404 |
| - # targets: ${{ matrix.target }} |
405 |
| - |
406 |
| - # - name: Cargo Fetch |
407 |
| - # run: cargo fetch |
408 |
| - # shell: bash |
409 |
| - |
410 |
| - # - name: Run Tests |
411 |
| - # # We do not want to run all features, CI is only for tests with Python |
412 |
| - # # Thats a separate job. |
413 |
| - # run: cargo test --frozen |
414 |
| - # shell: bash |
415 |
| - |
416 |
| - # - name: Build |
417 |
| - # run: cargo build --release --target ${{ matrix.target }} |
418 |
| - # shell: bash |
419 |
| - |
420 |
| - # - name: Upload Artifact |
421 |
| - # uses: actions/upload-artifact@v4 |
422 |
| - # with: |
423 |
| - # name: pet-${{ matrix.target }} |
424 |
| - # path: target/${{ matrix.target }}/release/pet* |
| 376 | + builds: |
| 377 | + name: Builds |
| 378 | + runs-on: ${{ matrix.os }} |
| 379 | + strategy: |
| 380 | + fail-fast: false |
| 381 | + matrix: |
| 382 | + include: |
| 383 | + - os: windows-latest |
| 384 | + target: x86_64-pc-windows-msvc |
| 385 | + - os: windows-latest |
| 386 | + target: aarch64-pc-windows-msvc |
| 387 | + - os: ubuntu-latest |
| 388 | + target: x86_64-unknown-linux-musl |
| 389 | + run_cli: "yes" |
| 390 | + # - os: ubuntu-latest |
| 391 | + # target: aarch64-unknown-linux-gnu |
| 392 | + # - os: ubuntu-latest |
| 393 | + # target: arm-unknown-linux-gnueabihf |
| 394 | + - os: macos-latest |
| 395 | + target: x86_64-apple-darwin |
| 396 | + run_cli: "yes" |
| 397 | + - os: macos-14 |
| 398 | + target: aarch64-apple-darwin |
| 399 | + run_cli: "yes" |
| 400 | + # - os: ubuntu-latest |
| 401 | + # target: x86_64-unknown-linux-gnu |
| 402 | + # - os: ubuntu-latest |
| 403 | + # target: aarch64-unknown-linux-musl |
| 404 | + steps: |
| 405 | + - name: Checkout |
| 406 | + uses: actions/checkout@v4 |
| 407 | + |
| 408 | + - name: Rust Tool Chain setup |
| 409 | + uses: dtolnay/rust-toolchain@stable |
| 410 | + with: |
| 411 | + toolchain: stable |
| 412 | + targets: ${{ matrix.target }} |
| 413 | + |
| 414 | + - name: Cargo Fetch |
| 415 | + run: cargo fetch |
| 416 | + shell: bash |
| 417 | + |
| 418 | + - name: Run Tests |
| 419 | + # We do not want to run all features, CI is only for tests with Python |
| 420 | + # Thats a separate job. |
| 421 | + run: cargo test --frozen |
| 422 | + shell: bash |
| 423 | + |
| 424 | + - name: Build |
| 425 | + run: cargo build --release --target ${{ matrix.target }} |
| 426 | + shell: bash |
| 427 | + |
| 428 | + - name: Upload Artifact |
| 429 | + uses: actions/upload-artifact@v4 |
| 430 | + with: |
| 431 | + name: pet-${{ matrix.target }} |
| 432 | + path: target/${{ matrix.target }}/release/pet* |
0 commit comments