Define beta and RC release maturity

This commit is contained in:
rcourtman 2026-08-31 11:37:25 +01:00
parent 70c1d0a178
commit f47ac1f020
24 changed files with 528 additions and 152 deletions

View file

@ -17,10 +17,23 @@ echo "Pre-flight checks for Release Dry Run v${VERSION}..."
echo ""
IS_PRERELEASE="false"
if [[ "$VERSION" =~ -rc\.[0-9]+$ ]] || [[ "$VERSION" =~ -alpha\.[0-9]+$ ]] || [[ "$VERSION" =~ -beta\.[0-9]+$ ]]; then
RELEASE_STAGE="stable"
if [[ "$VERSION" =~ ^[0-9]+\.[0-9]+\.[0-9]+-(alpha|beta|rc)\.([1-9][0-9]*)$ ]]; then
IS_PRERELEASE="true"
RELEASE_STAGE="${BASH_REMATCH[1]}"
elif [[ ! "$VERSION" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
echo "❌ Unsupported release version: ${VERSION}"
echo "Use X.Y.Z, X.Y.Z-alpha.N, X.Y.Z-beta.N, or X.Y.Z-rc.N."
exit 1
fi
case "$RELEASE_STAGE" in
alpha) echo "Maturity: alpha (incomplete internal evaluation build)" ;;
beta) echo "Maturity: beta (user-testing build that is not yet release-ready)" ;;
rc) echo "Maturity: release candidate (believed capable of becoming stable without product changes)" ;;
stable) echo "Maturity: stable (general production release)" ;;
esac
FILE_VERSION=$(cat VERSION | tr -d '\n')
if [ "$FILE_VERSION" != "$VERSION" ]; then
echo "❌ VERSION file mismatch"