diff --git a/scripts/release.sh b/scripts/release.sh new file mode 100755 index 0000000..a09b048 --- /dev/null +++ b/scripts/release.sh @@ -0,0 +1,42 @@ +#!/usr/bin/env bash +set -euo pipefail + +if [[ $# -ne 1 || ! $1 =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then + echo "usage: $0 VERSION" >&2 + exit 2 +fi + +release_version=$1 +release_tag="v${release_version}" +repo_root=$(git rev-parse --show-toplevel) +publisher="$HOME/.agents/skills/publish-gitea-release/scripts/gitea-publish-asset.sh" +release_dir=$(mktemp -d "${TMPDIR:-/tmp}/arrowvortex-wine-release.XXXXXX") +asset="$release_dir/arrowvortex-wine-${release_tag}-source.tar.gz" +notes="$release_dir/release-notes.md" + +cleanup() { + rm -rf "$release_dir" +} +trap cleanup EXIT + +cd "$repo_root" +git diff --check +nix build . +nix flake check + +git archive --format=tar.gz --prefix="arrowvortex-wine-${release_tag}/" HEAD >"$asset" + +cat >"$notes" <