mirror of
https://github.com/open-policy-agent/opa.git
synced 2026-08-12 19:32:48 -06:00
a048970c95
The script was not searching for version numbers in YAML files in the docs. As a result the Kubernetes admission controller tutorial was out of date.
71 lines
1.2 KiB
Bash
Executable File
71 lines
1.2 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
set -e
|
|
|
|
OPA_DIR=/go/src/github.com/open-policy-agent/opa
|
|
|
|
usage() {
|
|
echo "gen-release-patch.sh --source-url=<git-url>"
|
|
echo " --version=<mj.mn.pt>"
|
|
}
|
|
|
|
for i in "$@"; do
|
|
case $i in
|
|
--source-url=*)
|
|
SOURCE_URL="${i#*=}"
|
|
shift
|
|
;;
|
|
--version=*)
|
|
VERSION="${i#*=}"
|
|
shift
|
|
;;
|
|
*)
|
|
usage
|
|
exit 1
|
|
;;
|
|
esac
|
|
done
|
|
|
|
if [ -z "$SOURCE_URL" ]; then
|
|
usage
|
|
exit 1
|
|
elif [ -z "$VERSION" ]; then
|
|
usage
|
|
exit 1
|
|
fi
|
|
|
|
git clone $SOURCE_URL $OPA_DIR
|
|
cd $OPA_DIR
|
|
|
|
LAST_VERSION=$(git describe --abbrev=0 --tags)
|
|
|
|
update_makefile() {
|
|
sed -i='' -e "s/^VERSION[ \t]*:=[ \t]*.\+$/VERSION := $VERSION/" Makefile
|
|
}
|
|
|
|
update_changelog() {
|
|
cat >_CHANGELOG.md <<EOF
|
|
$(awk '1;/## Unreleased/{exit}' CHANGELOG.md | sed '$d')
|
|
|
|
## $VERSION
|
|
|
|
$(./build/changelog.py $LAST_VERSION HEAD)
|
|
$(sed '1,/## Unreleased/d' CHANGELOG.md)
|
|
EOF
|
|
|
|
mv _CHANGELOG.md CHANGELOG.md
|
|
}
|
|
|
|
update_docs() {
|
|
find ./docs/ \( -name "*.md" -o -name "*.yaml" \) -exec sed -i='' s/${LAST_VERSION:1}/$VERSION/g {} \;
|
|
}
|
|
|
|
main() {
|
|
update_makefile
|
|
update_docs
|
|
update_changelog
|
|
git --no-pager diff --no-color
|
|
}
|
|
|
|
main
|