-
ci(beta): auto-publish native packages on every main push, versioned like docker
Release / version (push) Canceled after 0sRelease / frontend (push) Canceled after 0sRelease / linux (amd64) (push) Canceled after 0sRelease / linux (arm64) (push) Canceled after 0sRelease / windows (push) Canceled after 0sRelease / macos (push) Canceled after 0sRelease / release (push) Canceled after 0sBuild and Push Docker Image / build-and-push (push) Canceled after 0sreleased this
2026-06-20 20:43:09 +03:00 | 135 commits to main since this releaseBeta now tracks main for ALL install types in one shot. A push to main builds
the rolling :beta Docker image AND (via release.yml) auto-publishes a GitHub
prerelease with the native packages (.deb/.tar.gz/.zip/SHA256SUMS), so
native/LXC/macOS installs on the beta channel self-update straight from main —
no manual tagging.- scripts/ci-version.sh: single source of truth for the CI version. v* tag →
clean release version; main push → v..<patch+1>-beta. where the
base is the latest STABLE tag (beta tags are filtered out so the base can't
drift) and N = commits since it. docker.yml and release.yml both call it, so
the image and the binaries from one commit get the identical version. - release.yml: also triggers on push to main; a
versionjob resolves the
version + prerelease flag for all build jobs and the publish step; prunes old
beta prereleases (keeps newest 10); concurrency cancels superseded beta builds
but never a stable tag release. - docker.yml: :latest can no longer attach to a prerelease tag.
- installers: the .deb asset uses Debian's '
' prerelease separatorbeta.14), so install.sh/proxmox-lxc.sh translate '-'→'~' when building
(0.8.3
the .deb filename (the tag/URL keep '-', the .tar.gz keeps '-'). - docs: ARCHITECTURE describes the per-push native beta.
Co-Authored-By: Claude Opus 4.8 noreply@anthropic.com
Claude-Session: https://claude.ai/code/session_01BemAAwXorxyTYXS3kVxA67Downloads
- scripts/ci-version.sh: single source of truth for the CI version. v* tag →