Files
configcenter/scripts/check-release.sh

18 lines
532 B
Bash

#!/usr/bin/env sh
set -eu
tag="${1:-}"
if ! printf '%s\n' "$tag" | grep -Eq '^v(0|[1-9][0-9]*)\.(0|[1-9][0-9]*)\.(0|[1-9][0-9]*)$'; then
printf 'release tag must use vMAJOR.MINOR.PATCH, got: %s\n' "$tag" >&2
exit 1
fi
version="${tag#v}"
if ! grep -Eq "^## \\[$version\\] - [0-9]{4}-[0-9]{2}-[0-9]{2}$" CHANGELOG.md; then
printf 'CHANGELOG.md must contain a dated release heading: ## [%s] - YYYY-MM-DD\n' "$version" >&2
exit 1
fi
sh scripts/check-migrations.sh
printf 'release policy check passed for %s\n' "$tag"