From e441993a02b63c149c5e923cb1a6a3e619344047 Mon Sep 17 00:00:00 2001 From: F-WRunTime Date: Mon, 10 Mar 2025 12:05:56 -0600 Subject: [PATCH 01/10] modified: .github/workflows/test-pr.yml - Update the workflow to build locally on mac outside of nix --- .github/workflows/test-pr.yml | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/.github/workflows/test-pr.yml b/.github/workflows/test-pr.yml index 87217aec7..992361bdb 100644 --- a/.github/workflows/test-pr.yml +++ b/.github/workflows/test-pr.yml @@ -31,6 +31,8 @@ jobs: uses: actions/checkout@v4 - name: 'Install Poetry' uses: Gr1N/setup-poetry@v8 + - name: 'Run Build' + - name: 'Run unit tests' run: make cov-unit @@ -102,6 +104,34 @@ jobs: run: | docker stop --time=0 kontrol-ci-integration-${GITHUB_SHA} + mac-integration-tests: + needs: code-quality-checks + name: 'Integration Tests' + runs-on: [self-hosted, macos-13, MacM1] + strategy: + fail-fast: false + matrix: + backend: ['legacy', 'booster'] + timeout-minutes: 120 + steps: + - name: 'Check out code' + uses: actions/checkout@v4 + with: + fetch-depth: 0 + - name: 'Build KEVM' + run: | + poetry install' + CXX=clang++-14 poetry run kdist --verbose build -j`nproc` evm-semantics.haskell kontrol.foundry' + - name: 'Run integration tests' + run: | + TEST_ARGS='-vv --force-sequential -k "not (test_kontrol_cse or test_foundry_minimize_proof or test_kontrol_end_to_end)"' + if [ ${{ matrix.backend }} == 'legacy' ]; then + TEST_ARGS+=' --no-use-booster --numprocesses=6' + else + TEST_ARGS+=' --numprocesses=4' + fi + make cov-integration TEST_ARGS="${TEST_ARGS}" + cse-tests: needs: code-quality-checks name: 'CSE Tests' From e2f1ec35c1bb1554f5fe258e575d5e5886a9e382 Mon Sep 17 00:00:00 2001 From: Freeman <105403280+F-WRunTime@users.noreply.github.com> Date: Mon, 10 Mar 2025 12:08:03 -0600 Subject: [PATCH 02/10] Update test-pr.yml Change name of mac Integration Tests --- .github/workflows/test-pr.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-pr.yml b/.github/workflows/test-pr.yml index 992361bdb..eee264bbb 100644 --- a/.github/workflows/test-pr.yml +++ b/.github/workflows/test-pr.yml @@ -106,7 +106,7 @@ jobs: mac-integration-tests: needs: code-quality-checks - name: 'Integration Tests' + name: 'Mac Integration Tests' runs-on: [self-hosted, macos-13, MacM1] strategy: fail-fast: false From 3839d915a48dc3553882d573cfc6da6b9eae327d Mon Sep 17 00:00:00 2001 From: F-WRunTime Date: Mon, 10 Mar 2025 12:08:54 -0600 Subject: [PATCH 03/10] modified: .github/workflows/test-pr.yml - Remove unused run in unit-tests --- .github/workflows/test-pr.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/workflows/test-pr.yml b/.github/workflows/test-pr.yml index eee264bbb..9e9d2047f 100644 --- a/.github/workflows/test-pr.yml +++ b/.github/workflows/test-pr.yml @@ -31,8 +31,6 @@ jobs: uses: actions/checkout@v4 - name: 'Install Poetry' uses: Gr1N/setup-poetry@v8 - - name: 'Run Build' - - name: 'Run unit tests' run: make cov-unit From 592483f3cc4e1f4e94e65dd755b23bc3530a015d Mon Sep 17 00:00:00 2001 From: F-WRunTime Date: Mon, 10 Mar 2025 12:30:47 -0600 Subject: [PATCH 04/10] modified: .github/workflows/test-pr.yml - Just test it builds - drop integration tests - Specify we're on apple silicon --- .github/workflows/test-pr.yml | 19 +++---------------- 1 file changed, 3 insertions(+), 16 deletions(-) diff --git a/.github/workflows/test-pr.yml b/.github/workflows/test-pr.yml index 9e9d2047f..2f8a9fb3b 100644 --- a/.github/workflows/test-pr.yml +++ b/.github/workflows/test-pr.yml @@ -104,12 +104,8 @@ jobs: mac-integration-tests: needs: code-quality-checks - name: 'Mac Integration Tests' + name: 'Mac Build Test' runs-on: [self-hosted, macos-13, MacM1] - strategy: - fail-fast: false - matrix: - backend: ['legacy', 'booster'] timeout-minutes: 120 steps: - name: 'Check out code' @@ -118,17 +114,8 @@ jobs: fetch-depth: 0 - name: 'Build KEVM' run: | - poetry install' - CXX=clang++-14 poetry run kdist --verbose build -j`nproc` evm-semantics.haskell kontrol.foundry' - - name: 'Run integration tests' - run: | - TEST_ARGS='-vv --force-sequential -k "not (test_kontrol_cse or test_foundry_minimize_proof or test_kontrol_end_to_end)"' - if [ ${{ matrix.backend }} == 'legacy' ]; then - TEST_ARGS+=' --no-use-booster --numprocesses=6' - else - TEST_ARGS+=' --numprocesses=4' - fi - make cov-integration TEST_ARGS="${TEST_ARGS}" + poetry install + APPLE_SILICON=true CXX=clang++-14 poetry run kdist --verbose build -j`nproc` evm-semantics.haskell kontrol.foundry cse-tests: needs: code-quality-checks From 5745bb2d669fe2dc00a604fbd80de7946aca368b Mon Sep 17 00:00:00 2001 From: F-WRunTime Date: Mon, 10 Mar 2025 12:49:45 -0600 Subject: [PATCH 05/10] modified: .github/workflows/test-pr.yml - OS 13 discontinued --- .github/workflows/test-pr.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-pr.yml b/.github/workflows/test-pr.yml index 2f8a9fb3b..ebbbaf173 100644 --- a/.github/workflows/test-pr.yml +++ b/.github/workflows/test-pr.yml @@ -102,10 +102,10 @@ jobs: run: | docker stop --time=0 kontrol-ci-integration-${GITHUB_SHA} - mac-integration-tests: + mac-build-tests: needs: code-quality-checks name: 'Mac Build Test' - runs-on: [self-hosted, macos-13, MacM1] + runs-on: [self-hosted, MacM1] timeout-minutes: 120 steps: - name: 'Check out code' From 41af80077529769716f5ccc93ec40f6f1b621558 Mon Sep 17 00:00:00 2001 From: F-WRunTime Date: Mon, 10 Mar 2025 13:25:11 -0600 Subject: [PATCH 06/10] Adding setup for poetry and python --- .github/workflows/test-pr.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.github/workflows/test-pr.yml b/.github/workflows/test-pr.yml index ebbbaf173..b3261d8cd 100644 --- a/.github/workflows/test-pr.yml +++ b/.github/workflows/test-pr.yml @@ -112,6 +112,12 @@ jobs: uses: actions/checkout@v4 with: fetch-depth: 0 + - name: 'Set up Python' + uses: actions/setup-python@v4 + with: + python-version: '3.10' + - name: 'Install Poetry' + uses: Gr1N/setup-poetry@v8 - name: 'Build KEVM' run: | poetry install From cbcc7f05e4043edcde455586ae2156bd9cf71723 Mon Sep 17 00:00:00 2001 From: F-WRunTime Date: Mon, 10 Mar 2025 14:07:25 -0600 Subject: [PATCH 07/10] drop installing python, runner will provide this --- .github/workflows/test-pr.yml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/.github/workflows/test-pr.yml b/.github/workflows/test-pr.yml index b3261d8cd..b9a640635 100644 --- a/.github/workflows/test-pr.yml +++ b/.github/workflows/test-pr.yml @@ -112,10 +112,6 @@ jobs: uses: actions/checkout@v4 with: fetch-depth: 0 - - name: 'Set up Python' - uses: actions/setup-python@v4 - with: - python-version: '3.10' - name: 'Install Poetry' uses: Gr1N/setup-poetry@v8 - name: 'Build KEVM' From a75cfe50203cda12658b21aa2365394a78d7bdee Mon Sep 17 00:00:00 2001 From: F-WRunTime Date: Mon, 10 Mar 2025 14:42:37 -0600 Subject: [PATCH 08/10] modified: .github/workflows/test-pr.yml - Remove poetry --- .github/workflows/test-pr.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/workflows/test-pr.yml b/.github/workflows/test-pr.yml index b9a640635..ebbbaf173 100644 --- a/.github/workflows/test-pr.yml +++ b/.github/workflows/test-pr.yml @@ -112,8 +112,6 @@ jobs: uses: actions/checkout@v4 with: fetch-depth: 0 - - name: 'Install Poetry' - uses: Gr1N/setup-poetry@v8 - name: 'Build KEVM' run: | poetry install From 588e694b27883d27da8b1dfdf549de2d51084fe0 Mon Sep 17 00:00:00 2001 From: F-WRunTime Date: Mon, 10 Mar 2025 15:24:46 -0600 Subject: [PATCH 09/10] Set j build process to 5 --- .github/workflows/test-pr.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-pr.yml b/.github/workflows/test-pr.yml index ebbbaf173..6dada99f4 100644 --- a/.github/workflows/test-pr.yml +++ b/.github/workflows/test-pr.yml @@ -115,7 +115,7 @@ jobs: - name: 'Build KEVM' run: | poetry install - APPLE_SILICON=true CXX=clang++-14 poetry run kdist --verbose build -j`nproc` evm-semantics.haskell kontrol.foundry + APPLE_SILICON=true CXX=clang++-14 poetry run kdist --verbose build -j5 evm-semantics.haskell kontrol.foundry cse-tests: needs: code-quality-checks From 4938e523c10bc68236aad9c89ecd5013d4d38cbf Mon Sep 17 00:00:00 2001 From: F-WRunTime Date: Tue, 11 Mar 2025 10:24:16 -0600 Subject: [PATCH 10/10] modified: .github/workflows/test-pr.yml - Clang var set to just clang and use what is installed on host (16) --- .github/workflows/test-pr.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-pr.yml b/.github/workflows/test-pr.yml index 6dada99f4..3c652309b 100644 --- a/.github/workflows/test-pr.yml +++ b/.github/workflows/test-pr.yml @@ -115,7 +115,7 @@ jobs: - name: 'Build KEVM' run: | poetry install - APPLE_SILICON=true CXX=clang++-14 poetry run kdist --verbose build -j5 evm-semantics.haskell kontrol.foundry + APPLE_SILICON=true CXX=clang poetry run kdist --verbose build -j4 evm-semantics.haskell kontrol.foundry cse-tests: needs: code-quality-checks