From e7601a182b0fee8303a219fb0f75ec54b586dcb9 Mon Sep 17 00:00:00 2001 From: Chris Blackburn Date: Fri, 25 Jul 2025 17:47:32 -0400 Subject: [PATCH] move tag creation above goreleaser --- .github/workflows/release.yml | 4 ++-- scripts/release/prepare-release.sh | 3 +++ scripts/release/{create-tag.sh => push-to-origin.sh} | 10 +++++----- 3 files changed, 10 insertions(+), 7 deletions(-) rename scripts/release/{create-tag.sh => push-to-origin.sh} (69%) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index aff8deb97..234b1c3c6 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -65,8 +65,8 @@ jobs: run: | git show -p ls -1a "$ARTIFACT_DIRECTORY" - - name: create tag - run: ./scripts/release/create-tag.sh + - name: push to origin + run: ./scripts/release/push-to-origin.sh - name: create Github release uses: ncipollo/release-action@v1.14.0 if: ${{ !inputs.dryRun }} diff --git a/scripts/release/prepare-release.sh b/scripts/release/prepare-release.sh index 20952b2ff..4764566f2 100755 --- a/scripts/release/prepare-release.sh +++ b/scripts/release/prepare-release.sh @@ -37,13 +37,16 @@ update_changelog() ( sed -i "4r /dev/stdin" CHANGELOG.md <<< "$changelog_entry"$'\n' ) +# update metadata files and CHANGELOG update_go update_orb update_gha update_bitbucket update_changelog +# commit changes and create tag git config user.name "LaunchDarklyReleaseBot" git config user.email "releasebot@launchdarkly.com" git add . git commit -m "Prepare release ${release_tag}" +git tag "${release_tag}" diff --git a/scripts/release/create-tag.sh b/scripts/release/push-to-origin.sh similarity index 69% rename from scripts/release/create-tag.sh rename to scripts/release/push-to-origin.sh index 796d86ec7..015b39d17 100755 --- a/scripts/release/create-tag.sh +++ b/scripts/release/push-to-origin.sh @@ -9,21 +9,21 @@ tag_exists() ( git rev-parse "${release_tag}" >/dev/null 2>&1 ) -create_tag() ( +push_to_origin() ( if tag_exists; then echo "Tag $release_tag already exists. Aborting." exit 1 fi - git tag "${release_tag}" git push origin HEAD git push origin "${release_tag}" ) if [[ "$DRY_RUN" == "true" ]]; then - git reset --hard HEAD^ - echo "Dry run mode: skipping tag and push" + git tag -d "$release_tag" # defensive + git reset --hard HEAD^ # defensive + echo "Dry run mode: skipping push" else - create_tag + push_to_origin fi