Nightly #786
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Nightly | |
| on: | |
| schedule: | |
| - cron: '0 2 * * *' | |
| workflow_dispatch: | |
| jobs: | |
| build: | |
| strategy: | |
| matrix: | |
| os: [ubuntu-latest] | |
| runs-on: ${{ matrix.os }} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Cache Cargo build | |
| uses: actions/cache/restore@v4 | |
| with: | |
| path: | | |
| ~/.cargo/registry | |
| ~/.cargo/git | |
| target | |
| key: ${{ runner.os }}-cargo-${{ hashFiles('Cargo.lock', 'prelude-generator/**') }} | |
| restore-keys: ${{ runner.os }}-cargo- | |
| - name: Cache Opam switch | |
| uses: actions/cache@v4 | |
| with: | |
| path: ~/.local/share/creusot/_opam | |
| key: ${{ runner.os }}-opam-${{ hashFiles('creusot-deps.opam') }} | |
| restore-keys: ${{ runner.os }}-opam- | |
| - run: sudo apt update && sudo apt install opam libzmq3-dev | |
| if: matrix.os == 'ubuntu-latest' | |
| - run: brew update && brew install opam autoconf zeromq zlib | |
| if: matrix.os == 'macos-latest' | |
| - name: Setup environment | |
| run: | | |
| opam init --bare | |
| opam --cli=2.1 var --global in-creusot-ci=true | |
| - name: Install Creusot | |
| # Use only 2 parallel provers, because more provers (4) makes replaying proofs unstable | |
| run: ./INSTALL --provers-parallelism 2 | |
| - run: cargo test --test why3 | |
| - name: Get current date | |
| run: echo "TODAY=$(date +'%Y-%m-%d')" >> $GITHUB_ENV | |
| - name: Save Why3find cache | |
| uses: actions/cache/save@v4 | |
| with: | |
| path: target/.why3find | |
| key: ${{ runner.os }}-why3find-${{ env.TODAY }}-${{ hashFiles('target/.why3find/**') }} | |
| - name: Minimize Opam cache | |
| run: opam clean --all-switches --download-cache --logs --repo-cache |