Using KaaS in CI
---
name: 'Proof Runner'
on:
workflow_dispatch:
inputs:
branch_name:
description: 'Branch Name of Specific Code to Test'
required: true
org:
description: 'Organization Name'
required: true
vault:
description: 'Vault Name (Connected Github Repository)'
required: true
pull_request:
branches:
- main
# Stop in progress workflows on the same branch and same workflow to use latest committed code
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}-${{ github.event.inputs.branch_name }}
cancel-in-progress: true
jobs:
test-proofs:
name: 'Test Proofs'
runs-on: [ubuntu-latest]
steps:
- name: 'Check out code'
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: "Install KaaS"
uses: runtimeverification/install-kaas@v0.2.1
# This mode will run proofs on Runtime Verification Servers using dedicated hardware built for proof execution.
# A kontrol.toml and foundry.tom file are still requried to be present in the root of the test directory.
# Github App installation of "KaaS Storage & Compute" is required to use this mode to support access to test source code.
- name: 'Run KaaS in Remote Mode'
shell: bash
run: |
kaas-cli run -m remote --watch -t ${{ secrets.KAAS_TOKEN }} --branch ${{ github.event.inputs.branch_name }} -vs ${{ github.event.inputs.org }}/${{ github.event.inputs.vault }}
# This is the default mode, and will run the proofs in a containerized environment. Depends on DOCKER being installed and will fail if it is not.
# A kontrol.toml and foundry.tom file are still requried to be present in the root of the test directory.
# Logs and output are streamed to stdout, and saved to file on completion. Any kcfg data produced is pulled back to the host at the test root (where kontrol.toml is defined).
- name: 'Run KaaS in Container Mode'
shell: bash
run: |
kaas-cli run -m container
# This is an advanced mode, and expects the user understands their kontrol installation and setup.
# A kontrol.toml and foundry.tom file are still requried to be present in the root of the test directory.
- name: 'run KaaS in Local Mode'
shell: bash
run: |
kaas-cli run -m local
Last updated