From f801ed5560782d29f50509b0c24889876483c7d5 Mon Sep 17 00:00:00 2001 From: Omkar Salpekar Date: Thu, 31 Aug 2023 19:12:11 -0700 Subject: [PATCH 1/2] Automate Release-Only Changes --- packaging/cut_release.sh | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100755 packaging/cut_release.sh diff --git a/packaging/cut_release.sh b/packaging/cut_release.sh new file mode 100755 index 0000000000..09f9cb5cd0 --- /dev/null +++ b/packaging/cut_release.sh @@ -0,0 +1,36 @@ +#!/usr/bin/env bash +# +# Usage: +# TEST_INFRA_BRANCH=release/2.1 RELEASE_BRANCH=release/2.1 RELEASE_VERSION=2.1.0 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}" From 39756e1be00e91aae38e4743c42f5d654773b8b7 Mon Sep 17 00:00:00 2001 From: Omkar Salpekar Date: Thu, 31 Aug 2023 19:13:19 -0700 Subject: [PATCH 2/2] update usage --- packaging/cut_release.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packaging/cut_release.sh b/packaging/cut_release.sh index 09f9cb5cd0..91e0e5ff15 100755 --- a/packaging/cut_release.sh +++ b/packaging/cut_release.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash # -# Usage: -# TEST_INFRA_BRANCH=release/2.1 RELEASE_BRANCH=release/2.1 RELEASE_VERSION=2.1.0 cut_release.sh +# 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