Release Process
Right after the update release 8u<release before n> was branched from mercurial forest jdk8u-dev to jdk8u, the release cycle for release 8u<n> starts. As the very first step, the jdk8u-dev repository will be tagged with jdk8u<n>-b00. At about 6 weeks before its general availability (GA), an update release enters ramp down phase 2 (RDP2) and the current state of jdk8u-dev will be transported to jdk8u. From that point onwards, the update release is stabilized by only accepting very select fixes in jdk8u. Eligible candidates are fixes that Oracle has brought to their correspondent JDK8 update release, fixes for high priority issues or test fixes. Builds from jdk8u will be tagged on a weekly basis, when new changesets have been pushed. The tags will have the format of jdk8u<n>-b<build>, where <n> is the placeholder for the update release and <build> is the monotonically increasing build number. Each tag that gets set in jdk8u will be integrated back to jdk8u-dev in a timely manner. At about 2 weeks before GA, a complete freeze will be anounced for jdk8u, allowing the maintainers of the security changes (currently Red Hat) to integrate and test the collected fixes in a secure, internal environment. At the release day, these will be merged into jdk8u and the final tags jdk8u<n>-b<build> and jdk8u<n>-ga will be set.
Release engineers checklist
When | What |
---|---|
Very early, e.g. 6 months before GA | Publish timeline on Wiki page |
Create release specific JBS filters, e.g. for monitoring backports to keep in sync with Oracle | |
~ 6 weeks before GA | Merge jdk8u-dev to jdk8u: 1. On jdk8u-dev repository (and all its subrepositories):
2. On jdk8u repository (and all its subrepositories):
|
Announce (short) freeze of jdk8u-dev for preparation of release 8u<release after n>on the mailing list | |
Set status of jdk8u-dev to "closed" and jdk8u to "accepting fixes for 8u<n>" in Wiki | |
Tag jdk8u-dev (and all its subrepositories) with jdk8u<release after n>-b00:
| |
Request new JBS version openjdk8u<release after n> and change of hgupdater settings for jdk8u-dev codeline to honor new version on push | |
Update JBS filter https://bugs.openjdk.java.net/issues/?filter=36562 that shows eligible critical fixes Add version openjdk8u<n> to fixVersion | |
Await confirmation for hgupdater change, then update Wiki to set status of jdk8u-dev to "accepting changes for 8u<release after n>", announce opening of jdk8u-dev for new release on mailing list | |
Update https://bugs.openjdk.java.net/issues/?filter=36427 that shows eligible fixes for pushing Add version openjdk8u<release after n> to fixVersion | |
~6 weeks before GA until ~2 weeks before GA in a weekly rythm initial tag (b01) to be done right after merge from jdk8u-dev | Tag jdk8u and merge back to jdk8u-dev: 1. On jdk8u (and all its subrepositories):
2. On jdk8u-dev (and all its subrepositories):
|
release day, when security changes and jdk8u<n>-ga tag have been pushed | Sync ga tag back to jdk8u-dev: 1. On jdk8u (and all its subrepositories):
2. On jdk8u-dev (and all its subrepositories):
|
Set status of jdk8u to "closed" | |
Request new hgupdater setting for jdk8u codeline to honor version openjdk8u<release after n> on push |