From 20c4f361828d58b53d154d991dd0cd674e2803cb Mon Sep 17 00:00:00 2001 From: Hannah Stepanek Date: Wed, 18 Dec 2024 15:38:48 -0800 Subject: [PATCH 1/8] Move init container release from lambda to GHA --- .github/workflows/publish_release.yml | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/.github/workflows/publish_release.yml b/.github/workflows/publish_release.yml index 097582045d..0f3f2fa6f7 100644 --- a/.github/workflows/publish_release.yml +++ b/.github/workflows/publish_release.yml @@ -53,3 +53,14 @@ jobs: ORG_GRADLE_PROJECT_signingKeyId: ${{ secrets.SIGNING_KEY_ID }} ORG_GRADLE_PROJECT_signingPassword: ${{ secrets.SIGNING_PASSWORD }} run: ./gradlew $GRADLE_OPTIONS :newrelic-opentelemetry-agent-extension:publish -Prelease=true + + - name: Create release tags for K8s Init Container + uses: dev-hanz-ops/install-gh-cli-action@c78dbed4be2f8d6133a14a9a597ee12fd4ed5c93 # v3 + with: + gh-cli-version: 2.63.2 + run: | + gh auth login --with-token <<< $GH_RELEASE_TOKEN + echo "newrelic/newrelic-agent-init-container - Releasing New Relic Java Agent ${GITHUB_REF}.0 with tag ${GITHUB_REF}.0_java" + gh create release "${GITHUB_REF}.0_java" -t "New Relic Java Agent ${GITHUB_REF}.0" --repo=newrelic/newrelic-agent-init-container + env: + GH_RELEASE_TOKEN: ${{ secrets.GH_RELEASE_TOKEN }} From 33b4d633cb6e07a474ed5c41039ae231e887072b Mon Sep 17 00:00:00 2001 From: Hannah Stepanek Date: Tue, 14 Jan 2025 16:08:41 -0800 Subject: [PATCH 2/8] Fixup --- .github/workflows/publish_release.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/publish_release.yml b/.github/workflows/publish_release.yml index 0f3f2fa6f7..6d2e801664 100644 --- a/.github/workflows/publish_release.yml +++ b/.github/workflows/publish_release.yml @@ -55,12 +55,12 @@ jobs: run: ./gradlew $GRADLE_OPTIONS :newrelic-opentelemetry-agent-extension:publish -Prelease=true - name: Create release tags for K8s Init Container - uses: dev-hanz-ops/install-gh-cli-action@c78dbed4be2f8d6133a14a9a597ee12fd4ed5c93 # v3 - with: - gh-cli-version: 2.63.2 run: | + RELEASE_TITLE="New Relic Java Agent ${GITHUB_REF}.0" + RELEASE_TAG="${GITHUB_REF}.0_java" + RELEASE_NOTES="Automated release for [Java Agent ${GITHUB_REF}](https://github.com/newrelic/newrelic-java-agent/releases/tag/${GITHUB_REF})" gh auth login --with-token <<< $GH_RELEASE_TOKEN - echo "newrelic/newrelic-agent-init-container - Releasing New Relic Java Agent ${GITHUB_REF}.0 with tag ${GITHUB_REF}.0_java" - gh create release "${GITHUB_REF}.0_java" -t "New Relic Java Agent ${GITHUB_REF}.0" --repo=newrelic/newrelic-agent-init-container + echo "newrelic/newrelic-agent-init-container - Releasing ${RELEASE_TITLE} with tag ${RELEASE_TAG}" + gh release create "${RELEASE_TAG}" --title=${RELEASE_TITLE} --repo=newrelic/newrelic-agent-init-container --notes=${RELEASE_NOTES} env: GH_RELEASE_TOKEN: ${{ secrets.GH_RELEASE_TOKEN }} From 2b6d1cc69bdc83ccba1ff18eb3aea662ad8bf63e Mon Sep 17 00:00:00 2001 From: Hannah Stepanek Date: Mon, 27 Jan 2025 12:53:31 -0800 Subject: [PATCH 3/8] Fixup: add quotes --- .github/workflows/publish_release.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/publish_release.yml b/.github/workflows/publish_release.yml index 6d2e801664..190304bc17 100644 --- a/.github/workflows/publish_release.yml +++ b/.github/workflows/publish_release.yml @@ -60,7 +60,7 @@ jobs: RELEASE_TAG="${GITHUB_REF}.0_java" RELEASE_NOTES="Automated release for [Java Agent ${GITHUB_REF}](https://github.com/newrelic/newrelic-java-agent/releases/tag/${GITHUB_REF})" gh auth login --with-token <<< $GH_RELEASE_TOKEN - echo "newrelic/newrelic-agent-init-container - Releasing ${RELEASE_TITLE} with tag ${RELEASE_TAG}" - gh release create "${RELEASE_TAG}" --title=${RELEASE_TITLE} --repo=newrelic/newrelic-agent-init-container --notes=${RELEASE_NOTES} + echo "newrelic/newrelic-agent-init-container - Releasing \"${RELEASE_TITLE}\" with tag ${RELEASE_TAG}" + gh release create "${RELEASE_TAG}" --title="${RELEASE_TITLE}" --repo=newrelic/newrelic-agent-init-container --notes="${RELEASE_NOTES}" env: GH_RELEASE_TOKEN: ${{ secrets.GH_RELEASE_TOKEN }} From 26e89e5811edc442d880e10ef18f888052b95b55 Mon Sep 17 00:00:00 2001 From: Hannah Stepanek Date: Tue, 28 Jan 2025 16:14:38 -0800 Subject: [PATCH 4/8] Make separate manual trigger workflow --- .github/workflows/Create-Release-Tags.yml | 18 ++++++++++++++++++ .github/workflows/publish_release.yml | 11 ----------- 2 files changed, 18 insertions(+), 11 deletions(-) create mode 100644 .github/workflows/Create-Release-Tags.yml diff --git a/.github/workflows/Create-Release-Tags.yml b/.github/workflows/Create-Release-Tags.yml new file mode 100644 index 0000000000..d5e1aca3d9 --- /dev/null +++ b/.github/workflows/Create-Release-Tags.yml @@ -0,0 +1,18 @@ +name: Create release tags +on: + workflow_dispatch: # Allow manual trigger +jobs: + create_release_tags: + runs-on: ubuntu-20.04 + steps: + - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # pin@v4 + - name: Create release tags for K8s Init Container + run: | + RELEASE_TITLE="New Relic Java Agent ${GITHUB_REF}.0" + RELEASE_TAG="${GITHUB_REF}.0_java" + RELEASE_NOTES="Automated release for [Java Agent ${GITHUB_REF}](https://github.com/newrelic/newrelic-java-agent/releases/tag/${GITHUB_REF})" + gh auth login --with-token <<< $GH_RELEASE_TOKEN + echo "newrelic/newrelic-agent-init-container - Releasing \"${RELEASE_TITLE}\" with tag ${RELEASE_TAG}" + gh release create "${RELEASE_TAG}" --title="${RELEASE_TITLE}" --repo=newrelic/newrelic-agent-init-container --notes="${RELEASE_NOTES}" + env: + GH_RELEASE_TOKEN: ${{ secrets.GH_RELEASE_TOKEN }} diff --git a/.github/workflows/publish_release.yml b/.github/workflows/publish_release.yml index 190304bc17..097582045d 100644 --- a/.github/workflows/publish_release.yml +++ b/.github/workflows/publish_release.yml @@ -53,14 +53,3 @@ jobs: ORG_GRADLE_PROJECT_signingKeyId: ${{ secrets.SIGNING_KEY_ID }} ORG_GRADLE_PROJECT_signingPassword: ${{ secrets.SIGNING_PASSWORD }} run: ./gradlew $GRADLE_OPTIONS :newrelic-opentelemetry-agent-extension:publish -Prelease=true - - - name: Create release tags for K8s Init Container - run: | - RELEASE_TITLE="New Relic Java Agent ${GITHUB_REF}.0" - RELEASE_TAG="${GITHUB_REF}.0_java" - RELEASE_NOTES="Automated release for [Java Agent ${GITHUB_REF}](https://github.com/newrelic/newrelic-java-agent/releases/tag/${GITHUB_REF})" - gh auth login --with-token <<< $GH_RELEASE_TOKEN - echo "newrelic/newrelic-agent-init-container - Releasing \"${RELEASE_TITLE}\" with tag ${RELEASE_TAG}" - gh release create "${RELEASE_TAG}" --title="${RELEASE_TITLE}" --repo=newrelic/newrelic-agent-init-container --notes="${RELEASE_NOTES}" - env: - GH_RELEASE_TOKEN: ${{ secrets.GH_RELEASE_TOKEN }} From 0989caa66281eaa3faf6e32d1f45946982cf7ed1 Mon Sep 17 00:00:00 2001 From: Hannah Stepanek Date: Tue, 28 Jan 2025 16:26:20 -0800 Subject: [PATCH 5/8] Add release tag as input to workflow --- .github/workflows/Create-Release-Tags.yml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/.github/workflows/Create-Release-Tags.yml b/.github/workflows/Create-Release-Tags.yml index d5e1aca3d9..f50834ae1d 100644 --- a/.github/workflows/Create-Release-Tags.yml +++ b/.github/workflows/Create-Release-Tags.yml @@ -1,11 +1,18 @@ name: Create release tags on: workflow_dispatch: # Allow manual trigger + inputs: + releaseTag: + description: 'Agent release tag to create init containers for' + required: true + type: string jobs: create_release_tags: runs-on: ubuntu-20.04 steps: - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # pin@v4 + with: + ref: ${{ inputs.releaseTag }} - name: Create release tags for K8s Init Container run: | RELEASE_TITLE="New Relic Java Agent ${GITHUB_REF}.0" From f442bf293214309238e732f40cf4ece6e3891a6d Mon Sep 17 00:00:00 2001 From: Hannah Stepanek Date: Tue, 28 Jan 2025 16:28:49 -0800 Subject: [PATCH 6/8] Rename release tag as input to workflow --- .github/workflows/Create-Release-Tags.yml | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/.github/workflows/Create-Release-Tags.yml b/.github/workflows/Create-Release-Tags.yml index f50834ae1d..66a9be1ea1 100644 --- a/.github/workflows/Create-Release-Tags.yml +++ b/.github/workflows/Create-Release-Tags.yml @@ -2,9 +2,10 @@ name: Create release tags on: workflow_dispatch: # Allow manual trigger inputs: - releaseTag: - description: 'Agent release tag to create init containers for' - required: true + agent-ref: + description: 'The ref (release tag) to create init containers for' + required: false + default: 'main' type: string jobs: create_release_tags: @@ -12,7 +13,7 @@ jobs: steps: - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # pin@v4 with: - ref: ${{ inputs.releaseTag }} + ref: ${{ inputs.agent-ref }} - name: Create release tags for K8s Init Container run: | RELEASE_TITLE="New Relic Java Agent ${GITHUB_REF}.0" From 0a8add28f5d14345c64314f11589d004b5dc5274 Mon Sep 17 00:00:00 2001 From: Hannah Stepanek Date: Wed, 29 Jan 2025 10:36:20 -0800 Subject: [PATCH 7/8] Remove checkout --- .github/workflows/Create-Release-Tags.yml | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/.github/workflows/Create-Release-Tags.yml b/.github/workflows/Create-Release-Tags.yml index 66a9be1ea1..0f7ba0b14a 100644 --- a/.github/workflows/Create-Release-Tags.yml +++ b/.github/workflows/Create-Release-Tags.yml @@ -11,14 +11,11 @@ jobs: create_release_tags: runs-on: ubuntu-20.04 steps: - - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # pin@v4 - with: - ref: ${{ inputs.agent-ref }} - name: Create release tags for K8s Init Container run: | - RELEASE_TITLE="New Relic Java Agent ${GITHUB_REF}.0" - RELEASE_TAG="${GITHUB_REF}.0_java" - RELEASE_NOTES="Automated release for [Java Agent ${GITHUB_REF}](https://github.com/newrelic/newrelic-java-agent/releases/tag/${GITHUB_REF})" + RELEASE_TITLE="New Relic Java Agent ${{ inputs.agent-ref }}.0" + RELEASE_TAG="${{ inputs.agent-ref }}.0_java" + RELEASE_NOTES="Automated release for [Java Agent ${{ inputs.agent-ref }}](https://github.com/newrelic/newrelic-java-agent/releases/tag/${{ inputs.agent-ref }})" gh auth login --with-token <<< $GH_RELEASE_TOKEN echo "newrelic/newrelic-agent-init-container - Releasing \"${RELEASE_TITLE}\" with tag ${RELEASE_TAG}" gh release create "${RELEASE_TAG}" --title="${RELEASE_TITLE}" --repo=newrelic/newrelic-agent-init-container --notes="${RELEASE_NOTES}" From c491a9514fcc4d02ef6f00a171f588c1ae069269 Mon Sep 17 00:00:00 2001 From: Hannah Stepanek Date: Wed, 29 Jan 2025 10:39:27 -0800 Subject: [PATCH 8/8] Rename to agent-version per code review Co-authored-by: Kate Anderson <90657569+kanderson250@users.noreply.github.com> --- .github/workflows/Create-Release-Tags.yml | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/.github/workflows/Create-Release-Tags.yml b/.github/workflows/Create-Release-Tags.yml index 0f7ba0b14a..560109b4b1 100644 --- a/.github/workflows/Create-Release-Tags.yml +++ b/.github/workflows/Create-Release-Tags.yml @@ -2,10 +2,9 @@ name: Create release tags on: workflow_dispatch: # Allow manual trigger inputs: - agent-ref: - description: 'The ref (release tag) to create init containers for' - required: false - default: 'main' + agent-version: + description: 'The release tag to create init containers for, including the v. Eg v8.12.0’. ' + required: true type: string jobs: create_release_tags: @@ -13,9 +12,9 @@ jobs: steps: - name: Create release tags for K8s Init Container run: | - RELEASE_TITLE="New Relic Java Agent ${{ inputs.agent-ref }}.0" - RELEASE_TAG="${{ inputs.agent-ref }}.0_java" - RELEASE_NOTES="Automated release for [Java Agent ${{ inputs.agent-ref }}](https://github.com/newrelic/newrelic-java-agent/releases/tag/${{ inputs.agent-ref }})" + RELEASE_TITLE="New Relic Java Agent ${{ inputs.agent-version }}.0" + RELEASE_TAG="${{ inputs.agent-version }}.0_java" + RELEASE_NOTES="Automated release for [Java Agent ${{ inputs.agent-version }}](https://github.com/newrelic/newrelic-java-agent/releases/tag/${{ inputs.agent-version }})" gh auth login --with-token <<< $GH_RELEASE_TOKEN echo "newrelic/newrelic-agent-init-container - Releasing \"${RELEASE_TITLE}\" with tag ${RELEASE_TAG}" gh release create "${RELEASE_TAG}" --title="${RELEASE_TITLE}" --repo=newrelic/newrelic-agent-init-container --notes="${RELEASE_NOTES}"