37 lines
1.2 KiB
Bash
Executable File
37 lines
1.2 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
#
|
|
# Usage (run from root of project):
|
|
# TEST_INFRA_BRANCH=release/2.1 RELEASE_BRANCH=release/2.1 RELEASE_VERSION=2.1.0 packaging/cut_release.sh
|
|
#
|
|
# TEST_INFRA_BRANCH: The release branch of test-infra that houses all reusable
|
|
# workflows
|
|
#
|
|
# RELEASE_BRANCH: The name of the release branch for this repo
|
|
#
|
|
# RELEASE_VERSION: Version of this current release
|
|
|
|
set -eou pipefail
|
|
|
|
# Create and Check out to Release Branch
|
|
git checkout -b "${RELEASE_BRANCH}"
|
|
|
|
# Change all GitHub Actions to reference the test-infra release branch
|
|
# as opposed to main.
|
|
for i in .github/workflows/*.yml; do
|
|
if [[ "$OSTYPE" == "darwin"* ]]; then
|
|
sed -i '' -e s#@main#@"${TEST_INFRA_BRANCH}"# $i;
|
|
sed -i '' -e s#test-infra-ref:[[:space:]]main#"test-infra-ref: ${TEST_INFRA_BRANCH}"# $i;
|
|
else
|
|
sed -i -e s#@main#@"${TEST_INFRA_BRANCH}"# $i;
|
|
sed -i -e s#test-infra-ref:[[:space:]]main#"test-infra-ref: ${TEST_INFRA_BRANCH}"# $i;
|
|
fi
|
|
done
|
|
|
|
# Update the Release Version in version.txt
|
|
echo "${RELEASE_VERSION}" >version.txt
|
|
|
|
# Optional
|
|
# git add ./github/workflows/*.yml version.txt
|
|
# git commit -m "[RELEASE-ONLY CHANGES] Branch Cut for Release {RELEASE_VERSION}"
|
|
# git push origin "${RELEASE_BRANCH}"
|