|
1 | 1 | version: 2.1
|
2 | 2 |
|
| 3 | +orbs: |
| 4 | + |
| 5 | + |
3 | 6 | jobs:
|
4 | 7 | # All checks on the codebase that can run in parallel to build_shared_library
|
5 | 8 | libwasmvm_sanity:
|
|
65 | 68 | - libwasmvm/target/release/deps
|
66 | 69 | key: cargocache-v3-libwasmvm_sanity-rust:1.60.0-{{ checksum "libwasmvm/Cargo.lock" }}
|
67 | 70 |
|
| 71 | + # This performs all the Rust debug builds on Windows. Similar to libwasmvm_sanity |
| 72 | + # but avoids duplicating things that are not platform dependent. |
| 73 | + libwasmvm_sanity_windows: |
| 74 | + executor: |
| 75 | + name: win/default |
| 76 | + shell: bash.exe |
| 77 | + steps: |
| 78 | + - checkout |
| 79 | + - run: |
| 80 | + name: Reset git config set by CircleCI to make Cargo work |
| 81 | + command: git config --global --unset url.ssh://[email protected] |
| 82 | + - run: |
| 83 | + name: Install Rust |
| 84 | + command: | |
| 85 | + set -o errexit |
| 86 | + curl -sS --output rustup-init.exe https://static.rust-lang.org/rustup/dist/x86_64-pc-windows-msvc/rustup-init.exe |
| 87 | + ./rustup-init.exe --no-modify-path --profile minimal --default-toolchain 1.60.0 -y |
| 88 | + echo 'export PATH="$PATH;$USERPROFILE/.cargo/bin"' >> "$BASH_ENV" |
| 89 | + - run: |
| 90 | + name: Show Rust version information |
| 91 | + command: rustc --version; cargo --version; rustup --version |
| 92 | + - restore_cache: |
| 93 | + keys: |
| 94 | + - cachev4-libwasmvm_sanity_windows-rust:1.60.0-{{ checksum "libwasmvm/Cargo.lock" }} |
| 95 | + - cachev4-libwasmvm_sanity_windows-rust:1.60.0- |
| 96 | + - run: |
| 97 | + name: Run unit tests |
| 98 | + working_directory: libwasmvm |
| 99 | + command: cargo test |
| 100 | + - save_cache: |
| 101 | + paths: |
| 102 | + # ".." is the easiest way to get $HOME here (pwd is $HOME\project) |
| 103 | + - ../.cargo/registry |
| 104 | + - libwasmvm/target/debug/.fingerprint |
| 105 | + - libwasmvm/target/debug/build |
| 106 | + - libwasmvm/target/debug/deps |
| 107 | + key: cachev4-libwasmvm_sanity_windows-rust:1.60.0-{{ checksum "libwasmvm/Cargo.lock" }} |
| 108 | + |
68 | 109 | libwasmvm_audit:
|
69 | 110 | docker:
|
70 | 111 | # The audit tool might use a more modern Rust version than the build jobs. See
|
@@ -327,6 +368,7 @@ workflows:
|
327 | 368 | build_and_test:
|
328 | 369 | jobs:
|
329 | 370 | - libwasmvm_sanity
|
| 371 | + - libwasmvm_sanity_windows |
330 | 372 | - libwasmvm_audit
|
331 | 373 | - format-go
|
332 | 374 | - wasmvm_no_cgo
|
|
0 commit comments