|
39 | 39 | - name: Install RefinedRust type system |
40 | 40 | run: eval $(opam env) && REFINEDRUST_ROOT=$PWD/verification/refinedrust ./verification/refinedrust/scripts/install-typesystem.sh |
41 | 41 | - name: Check cargo version |
42 | | - run: cargo --version |
| 42 | + run: cargo --version |
43 | 43 | - name: Install RefinedRust stdlib |
44 | 44 | run: eval $(opam env) && REFINEDRUST_ROOT=$PWD/verification/refinedrust ./verification/refinedrust/scripts/install-stdlib.sh |
45 | 45 | - name: Exclude RefinedRust from dune build |
|
55 | 55 | - name: make devtools |
56 | 56 | run: source "$HOME/.cargo/env" && eval $(opam env) && make devtools |
57 | 57 | - name: Translate specified files using RefinedRust and check proofs |
58 | | - run: source "$HOME/.cargo/env" && eval $(opam env) && DUNEFLAGS="-j 1" make verify |
| 58 | + run: | |
| 59 | + set -o pipefail |
| 60 | + (source "$HOME/.cargo/env" && eval $(opam env) && make generate_refinedrust_translation) 2>&1 | tee full-build.log |
| 61 | + - name: Patch dune modules to exclude big proofs from CI |
| 62 | + run: | |
| 63 | + python3 .github/workflows/prune_dune_modules.py verification/rust_proofs/ace/proofs/dune \ |
| 64 | + proof_core_page_allocator_allocator_PageAllocator_add_memory_region \ |
| 65 | + proof_core_page_allocator_allocator_PageStorageTreeNode_store_page_token \ |
| 66 | + proof_core_page_allocator_allocator_PageStorageTreeNode_divide_page_token_if_necessary \ |
| 67 | + proof_core_page_allocator_allocator_PageAllocator_find_largest_page_size \ |
| 68 | + proof_core_page_allocator_page_Page_T_write \ |
| 69 | + proof_core_page_allocator_page_Page_core_page_allocator_page_Allocated_read \ |
| 70 | + proof_core_page_allocator_allocator_PageStorageTreeNode_store_page_token \ |
| 71 | + proof_core_page_allocator_page_Page_core_page_allocator_page_UnAllocated_divide |
| 72 | + - name: Compile Rocq proofs |
| 73 | + run: | |
| 74 | + ( |
| 75 | + set -o pipefail |
| 76 | + source "$HOME/.cargo/env" |
| 77 | + eval "$(opam env)" |
| 78 | + cd verification |
| 79 | + DUNEFLAGS="-j 1 --display verbose" dune build |
| 80 | + ) 2>&1 | tee full-build.log |
| 81 | + - name: Upload full build log |
| 82 | + if: always() |
| 83 | + uses: actions/upload-artifact@v4 |
| 84 | + with: |
| 85 | + name: full-build-log |
| 86 | + path: full-build.log |
0 commit comments