@@ -200,11 +200,35 @@ jobs:
200200 group-id : ' co.elastic.otel'
201201 artifact-id : ' elastic-otel-javaagent'
202202 version : ${{ inputs.version }}
203+
204+ generate-release-notes :
205+ runs-on : ubuntu-latest
206+ name : Generate the changelog for this release
207+ outputs :
208+ notes : ${{ steps.print_release_notes.outputs.notes }}
209+ steps :
210+ - uses : actions/checkout@v4
211+ with :
212+ ref : ${{ inputs.ref }}
213+ - name : Setup Gradle
214+ uses : ./.github/workflows/gradle-goal
215+ with :
216+ command : " "
217+ - name : Print Release Notes
218+ id : print_release_notes
219+ run : |
220+ echo 'notes<<RELNOTESEOF' >> $GITHUB_OUTPUT
221+ cat CHANGELOG.next-release.md >> $GITHUB_OUTPUT
222+ printf '\nThis release is based on the following upstream versions:\n\n' >> $GITHUB_OUTPUT
223+ ./gradlew -q printUpstreamDependenciesMarkdown >> $GITHUB_OUTPUT
224+ echo 'RELNOTESEOF' >> $GITHUB_OUTPUT
225+
203226
204227 post-release :
205228 name : " Bump versions and create PR"
206229 needs :
207230 - await-maven-central-artifact
231+ - generate-release-notes
208232 uses : ./.github/workflows/pre-post-release.yml
209233 permissions :
210234 contents : write
@@ -215,12 +239,14 @@ jobs:
215239 phase : ' post'
216240 pr_title : " [release] release-step-4 ${{ inputs.version }}"
217241 pr_body : " Step 4 of the release process for version ${{ inputs.version }}: review & merge"
242+ changelog : ${{needs.generate-release-notes.outputs.notes}}
218243 secrets : inherit
219244
220245 create-github-release :
221246 name : " Create GitHub Release"
222247 needs :
223248 - post-release
249+ - generate-release-notes
224250 runs-on : ubuntu-latest
225251 if : ${{ ! inputs.dry_run }}
226252 permissions :
@@ -236,4 +262,4 @@ jobs:
236262 gh release create ${{ env.RELEASE_VERSION_TAG }} \
237263 --verify-tag \
238264 --title="Release ${{ env.RELEASE_VERSION }}" \
239- --notes=""
265+ --notes='${{needs.generate-release-notes.outputs.notes}}'
0 commit comments