Skip to content

Parse log file of multi-threaded Kani run (terse output) into JSON #358

Parse log file of multi-threaded Kani run (terse output) into JSON

Parse log file of multi-threaded Kani run (terse output) into JSON #358

Workflow file for this run

name: VeriFast
on:
workflow_dispatch:
merge_group:
pull_request:
branches: [ main ]
push:
paths:
- 'library/**'
- '.github/workflows/verifast.yml'
- 'verifast-proofs/**'
defaults:
run:
shell: bash
jobs:
check-verifast-on-std:
name: Verify std library
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v4
- name: Install VeriFast
run: |
cd ~
curl -OL https://github.com/verifast/verifast/releases/download/25.02/verifast-25.02-linux.tar.gz
# https://github.com/verifast/verifast/attestations/4911733
echo '5d5c87d11b3d735f44c3f0ca52aebc89e3c4d1119d98ef25188d07cb57ad65e8 verifast-25.02-linux.tar.gz' | shasum -a 256 -c
tar xf verifast-25.02-linux.tar.gz
- name: Install the Rust toolchain used by VeriFast
run: rustup toolchain install nightly-2024-11-23
- name: Run VeriFast Verification
run: |
export PATH=~/verifast-25.02/bin:$PATH
cd verifast-proofs
bash check-verifast-proofs.sh
notify-btj:
name: Notify @btj
runs-on: ubuntu-latest
needs: check-verifast-on-std
if: failure()
permissions:
id-token: write
steps:
- name: Get GitHub OIDC token
id: get_token
uses: actions/github-script@v7
with:
script: |
const audience = 'notify-bart-jacobs';
return await core.getIDToken(audience);
result-encoding: string
- name: Call notification endpoint
run: |
curl -X POST "https://verify-rust-std-verifast-monitor.bart-jacobs.workers.dev/" \
-H "Authorization: Bearer ${{ steps.get_token.outputs.result }}" \
-H "Content-Type: application/json" \
-d '{}'