mirror of
https://github.com/open-telemetry/opentelemetry-python-contrib.git
synced 2025-07-28 20:52:57 +08:00
43 lines
1.3 KiB
Bash
Executable File
43 lines
1.3 KiB
Bash
Executable File
#!/bin/zsh
|
|
#
|
|
# This script:
|
|
# 1. parses the version number from the branch name
|
|
# 2. updates version.py files to match that version
|
|
# 3. iterates through CHANGELOG.md files and updates any files containing
|
|
# unreleased changes
|
|
# 4. sets the output variable 'version_updated' to determine whether
|
|
# the github action to create a pull request should run. this allows
|
|
# maintainers to merge changes back into the release branch without
|
|
# triggering unnecessary pull requests
|
|
#
|
|
|
|
VERSION=`echo $1 | awk -F "/" '{print $NF}'`
|
|
echo "Using version ${VERSION}"
|
|
|
|
# check the version matches expected versioning e.g
|
|
# 0.6, 0.6b, 0.6b0, 0.6.0
|
|
if [[ ! "${VERSION}" =~ ^([0-9])(\.*[0-9]{1,5}[a-b]*){1,3}$ ]]; then
|
|
echo "Version number invalid: $VERSION"
|
|
exit 1
|
|
fi
|
|
|
|
# create the release branch
|
|
git checkout -b release/${VERSION}
|
|
git push origin release/${VERSION}
|
|
|
|
# create a temporary branch to create a PR for updated version and changelogs
|
|
git checkout -b release/${VERSION}-auto
|
|
./scripts/eachdist.py release --version ${VERSION}
|
|
rc=$?
|
|
if [ $rc != 0 ]; then
|
|
echo "::set-output name=version_updated::0"
|
|
exit 0
|
|
fi
|
|
|
|
git add **/version.py **/setup.cfg **/CHANGELOG.md
|
|
|
|
git commit -m "updating changelogs and version to ${VERSION}"
|
|
|
|
echo "Time to create a release, here's a sample title:"
|
|
echo "[pre-release] Update changelogs, version [${VERSION}]"
|