Skip to content

Merge pull request #278 from array2d/release-v0.2.13 #19

Merge pull request #278 from array2d/release-v0.2.13

Merge pull request #278 from array2d/release-v0.2.13 #19

Workflow file for this run

name: release-abi
on:
push:
tags: ['v*']
permissions:
contents: write
jobs:
publish:
runs-on: ubuntu-latest
env:
GH_TOKEN: ${{ github.token }}
steps:
- uses: actions/checkout@v4
- name: 下载 ABI 依赖
env: { GH_TOKEN: "${{ secrets.GITHUB_TOKEN }}" }
run: ./ci/deps.sh
- name: 构建 runtime + layout
run: |
make runtime
cargo build --release --manifest-path layout/Cargo.toml
- name: 打包 ABI 产物
run: |
set -euo pipefail
v="${GITHUB_REF_NAME}"
d="kvlang-abi-$v-linux-x86_64"
mkdir -p "$d/include" "$d/lib"
cp runtime/include/*.h "$d/include/"
cp bin/libkvlang_runtime.so "$d/lib/"
cp layout/target/release/libkvlanglayout.so "$d/lib/"
printf '{"abi":"%s"}\n' "$v" > "$d/abi-manifest.json"
tar czf "$d.tar.gz" "$d"
sha256sum "$d.tar.gz" > SHA256SUMS
- name: 发布 release
run: gh release create "${GITHUB_REF_NAME}" kvlang-abi-*.tar.gz SHA256SUMS --generate-notes