Skip to content
Merged
Show file tree
Hide file tree
Changes from 6 commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
a766ef1
.github/workflows/test-pr.yml: bump actions/checkout to v7, actions/s…
palinatolmach Aug 9, 2026
741eb4c
.github/workflows/test-pr.yml: pin astral-sh/setup-uv to v9.0.0
palinatolmach Aug 9, 2026
27c3009
.github/workflows/{master-push,release}.yml: remove secret-based CD
palinatolmach Aug 9, 2026
714e981
.github/workflows/update-version.yml: remove dependency-bump automation
palinatolmach Aug 9, 2026
09a35e9
.github/scripts/check-cachix-pin.sh: remove cachix-pin verification
palinatolmach Aug 9, 2026
a070e56
.github/workflows/release.yml: shorten header comment
palinatolmach Aug 9, 2026
a279462
release.yml: set cancel-in-progress to false
anvacaru Aug 10, 2026
42767ea
release.yml: drop the 'with:' block
anvacaru Aug 10, 2026
95fdf0f
version.sh: run uv --project kevm-pyk lock
anvacaru Aug 10, 2026
940a37c
workflows: pin commit SHA's instead of version numbers
anvacaru Aug 10, 2026
785673f
release.yml: refactor gh release create command
anvacaru Aug 10, 2026
d825b52
test-pr.yml: set read-only permissions
anvacaru Aug 10, 2026
4fcaf89
version.sh: cleanup
anvacaru Aug 10, 2026
48b6126
test-pr.yml: update docker invocation
anvacaru Aug 10, 2026
004f001
temporarily remove release.yml
anvacaru Aug 12, 2026
d577dc0
address zizmor findings
anvacaru Aug 12, 2026
d3bc3cb
action.yml: address review comments
anvacaru Aug 12, 2026
1bdce27
.github/actions/with-docker, workflows/Dockerfile: drop the unused di…
anvacaru Aug 12, 2026
d8e0c75
actionlint: fix findings
anvacaru Aug 12, 2026
1cd4b87
add workflow to run actionlint and zizmor
anvacaru Aug 12, 2026
6e75b7c
lint-workflows: use zizmor-action instead of uvx
anvacaru Aug 12, 2026
1d51acb
Update .github/workflows/lint-workflows.yml
anvacaru Aug 12, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
99 changes: 0 additions & 99 deletions .github/scripts/check-cachix-pin.sh

This file was deleted.

43 changes: 0 additions & 43 deletions .github/workflows/master-push.yml

This file was deleted.

176 changes: 23 additions & 153 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,166 +7,36 @@ concurrency:
group: ${{ github.workflow }}
cancel-in-progress: true
Comment thread
anvacaru marked this conversation as resolved.
Outdated

# Uses only the built-in GITHUB_TOKEN to cut a release on a push to the
# `release` branch: this bumps the version, then creates the v<version> release.
permissions:
contents: write

jobs:
draft-release:
name: 'Draft Release'
release:
name: 'Bump version and create release'
runs-on: ubuntu-latest
outputs:
version: ${{ steps.make-release.outputs.version }}
steps:
- name: 'Check out code'
uses: actions/checkout@v4
- name: 'Make release'
id: 'make-release'
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
set -x
VERSION=v$(cat package/version)
gh release create ${VERSION} \
--repo runtimeverification/evm-semantics \
--draft \
--title ${VERSION} \
--target ${{ github.sha }}
echo "version=${VERSION}" >> "$GITHUB_OUTPUT"

nix-cache:
name: 'Populate Nix Caches'
strategy:
matrix:
include:
- runner: normal
- runner: ARM64
runs-on: ${{ matrix.runner }}
needs: draft-release
steps:
- name: 'Check out code'
uses: actions/checkout@v4
- name: 'Check out release branch'
uses: actions/checkout@v7
with:
ref: ${{ github.event.push.head.sha }}
ref: release
fetch-depth: 0
Comment thread
anvacaru marked this conversation as resolved.
Outdated
- name: 'Build KEVM'
- name: 'Configure git identity'
run: |
GC_DONT_GC=1 nix build --extra-experimental-features 'nix-command flakes' --print-build-logs
- name: 'Push KEVM dependencies to nix cache'
uses: workflow/nix-shell-action@v3.0.3
env:
GC_DONT_GC: 1
CACHIX_AUTH_TOKEN: '${{ secrets.CACHIX_PUBLIC_TOKEN }}'
with:
packages: jq
script: |
kevm=$(nix build --extra-experimental-features 'nix-command flakes' .#kevm --json | jq -r '.[].outputs | to_entries[].value')
drv=$(nix-store --query --deriver ${kevm})
nix-store --query --requisites --include-outputs ${drv} | cachix push k-framework || true
- name: 'Publish KEVM to k-framework-binary cache'
uses: workflow/nix-shell-action@v3.0.3
env:
GC_DONT_GC: '1'
CACHIX_AUTH_TOKEN: '${{ secrets.CACHIX_PRIVATE_KFB_TOKEN }}'
OWNER_REPO: '${{ github.repository }}'
REV: '${{ github.sha }}'
with:
packages: jq
script: |
export PATH="$(nix build github:runtimeverification/kup --no-link --json | jq -r '.[].outputs | to_entries[].value')/bin:$PATH"
kup publish k-framework-binary .#kevm --keep-days 180 || true
# Cachix has not been responding to 'cachix pin' requests made under the hood by kup. Verify the push and pin manually.
.github/scripts/check-cachix-pin.sh
- name: 'On failure, delete drafted release'
if: failure()
git config user.name 'github-actions[bot]'
git config user.email 'github-actions[bot]@users.noreply.github.com'
- name: 'Bump version, commit, push, and create release'
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
set -x
VERSION=v$(cat package/version)
gh release delete ${VERSION} \
set -euxo pipefail
./package/version.sh bump
./package/version.sh sub
Comment thread
anvacaru marked this conversation as resolved.
Outdated
VERSION="v$(cat package/version)"
git commit --all --message "Set Version: ${VERSION}"
git push origin HEAD:release
gh release create "${VERSION}" \
--repo runtimeverification/evm-semantics \
--yes \
--cleanup-tag
- name: 'Post failure to channel'
if: failure()
uses: slackapi/slack-github-action@v1.24.0
with:
channel-id: "#kevm-notifications"
slack-message: "Failed to create KEVM release: https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}"
env:
SLACK_BOT_TOKEN: ${{ secrets.SLACK_BOT_TOKEN }}

make-release:
name: 'Cut Release'
runs-on: ubuntu-latest
needs: [draft-release, nix-cache]
steps:
- name: 'Check out code'
uses: actions/checkout@v4
with:
ref: ${{ github.event.push.head.sha }}
fetch-depth: 0
- name: 'Make release'
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
set -x
VERSION=v$(cat package/version)
gh release edit ${VERSION} \
--repo runtimeverification/evm-semantics \
--draft=false
- name: 'Update dependents'
run: |
set -x
VERSION=$(cat package/version)
curl --fail \
-X POST \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer ${{ secrets.JENKINS_GITHUB_PAT }}" \
-H "X-GitHub-Api-Version: 2022-11-28" \
https://api.github.com/repos/runtimeverification/devops/dispatches \
-d '{"event_type":"on-demand-test","client_payload":{"repo":"runtimeverification/evm-semantics","version":"'${VERSION}'"}}'

gh-pages:
name: 'Publish GH Pages'
runs-on: ubuntu-latest
needs: [make-release]
steps:
- name: 'Check out gh-pages'
uses: actions/checkout@v4
with:
fetch-depth: 0
submodules: true
ref: ${{ github.event.push.head.sha }}
- run: |
git config --global user.email 'devops@runtimeverification.com'
git config --global user.name 'rv-jenkins'
- name: 'Publish gh-pages'
run: |
git checkout -B gh-pages
cd web
npm install
npm run build
npm run build-sitemap
cd -
mv web/public_content ./
rm -rf $(find . -maxdepth 1 -not -name public_content -a -not -name .git -a -not -name .gitmodules -a -not -path . -a -not -path .. -a -not -name CNAME)
mv public_content/* ./
rm -rf public_content
git add ./
git commit -m 'gh-pages: Updated the website'
git merge --strategy ours origin/gh-pages --allow-unrelated-histories
git push origin gh-pages
- name: 'Post failure to channel'
if: failure()
uses: slackapi/slack-github-action@v1.24.0
with:
channel-id: "#kevm-notifications"
slack-message: "Failed to create KEVM release: https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}"
env:
SLACK_BOT_TOKEN: ${{ secrets.SLACK_BOT_TOKEN }}
- name: 'Post success to channel'
if: success()
uses: slackapi/slack-github-action@v1.24.0
with:
channel-id: "#kevm-notifications"
slack-message: "Created KEVM release: https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}"
env:
SLACK_BOT_TOKEN: ${{ secrets.SLACK_BOT_TOKEN }}
--title "${VERSION}" \
--target "$(git rev-parse HEAD)"
Comment thread
anvacaru marked this conversation as resolved.
Outdated
Loading
Loading