Release plan for jdk16
lumpfish opened this issue · 8 comments
On the 3rd March 2021 Eclipse OpenJ9 community call the release plan for jdk16 was discussed - this was decided as the preferred plan. It is based on the premise that there will be no more code changes coming from openjdk before the release date (16th March). The openj9 code is ready now (built and tested in the milestone releases).
- On the 11th March start the release build pipelines.
- Triage and rerun build failures as required
- Do not promote the builds
- After openjdk announce jdk16 availability, promote the release builds to github
This plan is dependent on
- The release build test results showing no stop ship test failures
- The builds still being available in (attached to) the Jenkins pipeline so they can be promoted
- There being no more updates to the openjdk code
We have followed this process before, but hit an issue with the creation of the jdknnu repository which the hotspot builds were subsequently built from. So the openj9 build file names did not contain the 'u', but the hotspot filenames did. It was resolved by rebuilding the openj9 builds which of course delayed the release. We need to be sure we won't hit the same issue again.
Requesting feedback from others:
- Any reason this plan should not be adopted?
- Can someone please confirm that the builds will remain available (attached to the Jenkins pipleline job) until after openjdk jdk16 is released?
- Can someone confirm that the jdknn -> jdknnu issue no longer applies, or explain what needs to be done to handle it?
- Do we want a similar plan for the hotspot builds?
Other items:
- Documentation describing the elimination of the openj9 'XL' builds is needed
- The docker repositories will need the 'XL' versions removing
I like this plan and would like us to take this approach in general (for this and future releases, with any and all things we build and release). In best case, we can release sooner. In worst case, we are no farther behind than what we currently do.
It is good to call out the subsequent questions (will artifacts remain or do we have to change something to allow them to remain in this scenario, does the issue of jdknnu still remain).
So my responses:
- No
- Don't know
- Don't know
- Yes
Looking back over the jdk15 release I see the original GA file name contains the 'U' suffix
hotspot jdk15 GA: https://github.com/AdoptOpenJDK/openjdk15-binaries/releases//jdk-15%2B36/
openj9 jdk15 GA: https://github.com/AdoptOpenJDK/openjdk15-binaries/releases/jdk-15%2B36_openj9-0.22.0
I assume this means they were built from the jdk15u repository, not the jdk15 repository.
openjdk jdk16 is now in github. There is a jdk16 and a jdk16u repository. Latest tag in jdk16 is jdk-16+36, latest tag in jdk16u is jdk-16+29.
There is no adoptopenjdk/jdk16u clone at the moment.
Questions:
- Do we want to build the adoptopenjdk jdk16GA release from the jdk16u repository?
- If so we need to create an adoptopenjdk clone
- Do we have an expectation of what the jdk16 GA tag will be?
I agree with the plan to release from the 16 repo and not 16u repo. Let's fix any build script gotcha's to support that.
Do we have an expectation of what the jdk16 GA tag will be?
jdk-16+36
appears likely. See:
https://mail.openjdk.java.net/pipermail/jdk-dev/2021-February/005067.html
@jerboaa @lumpfish It looks like they've pushed all the remaining tags, Rob Mckenna did it yesterday in response to Aleksey's message... https://mail.openjdk.java.net/pipermail/jdk-updates-dev/2021-March/005262.html
yes.
Noting that this plan worked well and allowed us to release very soon after the tag was applied. Special thanks to @lumpfish @andrew-m-leonard and @sxa for guiding this release through!