Update Expected Output #15
This file contains 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: 'Update Expected Output' | |
on: | |
workflow_dispatch: | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
jobs: | |
update-output: | |
if: github.ref != 'refs/heads/master' | |
name: 'Update Kontrol expected output' | |
runs-on: [self-hosted, linux, normal, fast] | |
timeout-minutes: 60 | |
steps: | |
- name: 'Check out code' | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
token: ${{ secrets.JENKINS_GITHUB_PAT }} | |
- name: 'Set up Docker' | |
uses: ./.github/actions/with-docker | |
with: | |
container-name: kontrol-ci-integration-${{ github.sha }} | |
- name: 'Build Kontrol' | |
run: | | |
docker exec -u github-user kontrol-ci-integration-${GITHUB_SHA} /bin/bash -c 'poetry install' | |
docker exec -u github-user kontrol-ci-integration-${GITHUB_SHA} /bin/bash -c 'CXX=clang++-14 poetry run kdist --verbose build -j`nproc` evm-semantics.haskell kontrol.foundry' | |
- name: 'Run integration tests' | |
run: | | |
TEST_ARGS="--maxfail=1000 --numprocesses=6 --update-expected-output --force-sequential -vv" | |
docker exec --user github-user kontrol-ci-integration-${GITHUB_SHA} bash -c "make cov-integration TEST_ARGS='${TEST_ARGS} -k \"not (test_kontrol_cse or test_foundry_minimize_proof or test_kontrol_end_to_end)\"' || true" | |
docker exec --user github-user kontrol-ci-integration-${GITHUB_SHA} bash -c "make cov-integration TEST_ARGS='${TEST_ARGS} -k \"test_kontrol_cse or test_foundry_minimize_proof\"' || true" | |
- name: 'Copy updated files to host' | |
run: | | |
docker cp kontrol-ci-integration-${GITHUB_SHA}:/home/github-user/workspace/src/tests/integration/test-data/show ./src/tests/integration/test-data/ | |
- name: 'Configure GitHub user' | |
run: | | |
git config user.name devops | |
git config user.email [email protected] | |
- name: 'Push golden files to branch' | |
run: | | |
git add ./src/tests/integration/test-data/show | |
git commit -m "Update expected output files" | |
git push | |
- name: 'Tear down Docker' | |
if: always() | |
run: | | |
docker stop --time=0 kontrol-ci-integration-${GITHUB_SHA} |