Files
hexapoda/.github/workflows/publish.yml
T
2026-05-01 15:28:26 -05:00

36 lines
1.0 KiB
YAML

name: publish release
on:
workflow_dispatch:
push:
tags:
- "v*"
jobs:
publish:
runs-on: ubuntu-latest
permissions:
id-token: write # Required for OIDC token exchange
steps:
- uses: actions/checkout@v6
- name: check version
# cut off the v part of the tag to only search for the number
run: grep -q "$(echo "${{ github.ref_name }}" | cut -c2-)" Cargo.toml
- run: cargo test
- run: cargo build --release --locked
- name: package
# TODO: include completions/man page
run: tar -azcf hexapoda-linux-x86.zip -C "target/release/" hexapoda
- name: release
uses: softprops/action-gh-release@v2
with:
draft: true
name: "${{ github.ref_name }}"
files: hexapoda-linux-x86.zip
# TODO: should cargo releases be manual ? just in case it fails on another platform?
# - uses: rust-lang/crates-io-auth-action@v1
# id: auth
# - run: cargo publish
# env:
# CARGO_REGISTRY_TOKEN: ${{ steps.auth.outputs.token }}