Skip to content

Commit decd63b

Browse files
committed
Automate post-release step
1 parent 1176300 commit decd63b

File tree

2 files changed

+47
-14
lines changed

2 files changed

+47
-14
lines changed

.github/workflows/release.yml

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -233,3 +233,47 @@ jobs:
233233
gh pr create --title "$message" \
234234
--body "$body" \
235235
--base main
236+
237+
update-apidiff-baseline-to-released-version:
238+
runs-on: ubuntu-latest
239+
needs:
240+
- release
241+
steps:
242+
- uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1
243+
with:
244+
ref: main
245+
246+
- name: Update apidiff baseline
247+
run: sed -Ei "1 s/(Comparing source compatibility of .* against [a-z-]+)-[0-9]+\.[0-9]+\.[0-9]+.jar/\1-$VERSION.jar/" docs/apidiffs/current_vs_latest/*.txt
248+
249+
- name: Use CLA approved github bot
250+
run: .github/scripts/use-cla-approved-github-bot.sh
251+
252+
- name: Wait for release to be available in maven central
253+
run: |
254+
until curl --silent \
255+
--show-error \
256+
--output /dev/null \
257+
--head \
258+
--fail \
259+
https://repo1.maven.org/maven2/io/opentelemetry/javaagent/opentelemetry-javaagent/$VERSION/opentelemetry-javaagent-$VERSION.jar
260+
do
261+
sleep 60
262+
done
263+
264+
- name: Create pull request against main
265+
env:
266+
VERSION: ${{ needs.release.outputs.version }}
267+
# not using secrets.GITHUB_TOKEN since pull requests from that token do not run workflows
268+
GH_TOKEN: ${{ secrets.OPENTELEMETRYBOT_GITHUB_TOKEN }}
269+
run: |
270+
message="Update apidiff baseline to released version $VERSION"
271+
body="Update apidiff baseline to released version \`$version\`."
272+
branch="opentelemetrybot/update-apidiff-baseline-to-released-version-${VERSION}"
273+
274+
git checkout -b $branch
275+
git commit -a -m "$message"
276+
git push --set-upstream origin $branch
277+
gh pr create --title "$message" \
278+
--body "$body" \
279+
--base main

RELEASING.md

Lines changed: 3 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -65,24 +65,13 @@ and deadlocks.
6565
e.g. `release/v1.9.x`, and click the "Run workflow" button below that.
6666
- This workflow will publish the artifacts to maven central and will publish a GitHub release
6767
with release notes based on the change log and with the javaagent jar attached.
68+
- Review and merge the pull request that it creates for updating the apidiff baseline version
69+
to the newly released version (note that this pull request won't be made until after the release
70+
is available in maven central).
6871
- Review and merge the pull request that it creates for updating the change log in main
6972
(note that if this is not a patch release then the change log on main may already be up-to-date,
7073
in which case no pull request will be created).
7174

72-
## Update release versions in documentations
73-
74-
After releasing is done, you need to first update the docs. This needs to happen after artifacts have propagated
75-
to Maven Central so should probably be done an hour or two after the release workflow finishes.
76-
77-
```sh
78-
./gradlew japicmp -PapiBaseVersion=a.b.c -PapiNewVersion=x.y.z
79-
./gradlew --refresh-dependencies japicmp
80-
```
81-
82-
Where `x.y.z` is the version just released and `a.b.c` is the previous version.
83-
84-
Create a PR to mark the new release in docs on the main branch.
85-
8675
## Credentials
8776

8877
Same as the core repo, see [opentelemetry-java/RELEASING.md#credentials](https://github.com/open-telemetry/opentelemetry-java/blob/main/RELEASING.md#credentials).

0 commit comments

Comments
 (0)