Wiki source code of Release Plan for version 11.5-rc-1
Last modified by Thomas Mortagne on 2019/06/18 21:45
Show last authors
author | version | line-number | content |
---|---|---|---|
1 | {{velocity}} | ||
2 | #set ($object = $doc.getObject("ReleasePlans.ReleasePlanClass")) | ||
3 | #set ($version = $object.getProperty("version").getValue()) | ||
4 | #set ($versionPrefix = $stringtool.substringBefore($version, '-')) | ||
5 | #set ($versionParts = $stringtool.split($versionPrefix, '.')) | ||
6 | #set ($major = $numbertool.toNumber($versionParts[0])) | ||
7 | #set ($minor = $numbertool.toNumber($versionParts[1])) | ||
8 | #set ($shortVersion = $stringtool.replace($version, '.', '\.')) | ||
9 | #set ($shortVersion = $stringtool.replaceChars($shortVersion, '-', '')) | ||
10 | #set ($shortVersion = $stringtool.upperCase($shortVersion)) | ||
11 | #set ($isRC = $version.contains('rc')) | ||
12 | #set ($isMilestone = $version.contains('MILESTONE')) | ||
13 | #set ($shortVersion = $shortVersion.replace('MILESTONE', 'M')) | ||
14 | #set ($releaseNotesWikiLink = "xwiki:ReleaseNotes.Data.XWiki.${shortVersion}") | ||
15 | #set ($isFinal = !$isRC && !$isMilestone) | ||
16 | #set ($isFirstFinal = $versionParts.size() == 2 && $isFinal) | ||
17 | #set ($isBugfix = ($versionParts.size() == 3)) | ||
18 | #macro (findPreviousRCReleaseDate $major $resultVariableName) | ||
19 | #set ($xwql = "select rp.releaseDate from Document doc, doc.object(ReleasePlans.ReleasePlanClass) as rp where rp.version like :versionPattern and rp.releaseDate is not null order by rp.releaseDate desc") | ||
20 | #set ($query = $services.query.xwql($xwql).bindValue('versionPattern', "${major}.%-rc-%")) | ||
21 | #set ($results = $query.execute()) | ||
22 | #if ($results.size() > 0) | ||
23 | #setVariable($resultVariableName $results[0]) | ||
24 | #end | ||
25 | #end | ||
26 | #findPreviousRCReleaseDate($major, "previousRCReleaseDate") | ||
27 | #if ("$!previousRCReleaseDate" == '') | ||
28 | ## No previous RC version or first release of a cycle, find data for the last RC of the previous cycle (major) | ||
29 | #previousReleaseDate($mathtool.sub($major, 1), "previousRCReleaseDate") | ||
30 | #end | ||
31 | |||
32 | {{info}} | ||
33 | Use these icons to mark the release progress: (x) not done, (/) done, (!) not done for a good reason (explain reason) | ||
34 | {{/info}} | ||
35 | |||
36 | * (/) Verify that no tests are failing [[on the CI Server>>http://ci.xwiki.org]] (or that failures are understood, see [[known flickering tests>>https://jira.xwiki.org/issues/?filter=14240]]). | ||
37 | * (/) [[Verify>>ReleasePlans.ReleasePlanHelp||anchor="HInitialBackwardCompatibilityCheck"]] that the {{scm project="xwiki-commons" path="pom.xml"}}${escapetool.H}${escapetool.H}xwiki-commons${escapetool.H}${escapetool.H}'s top level POM{{/scm}} has a ${escapetool.H}${escapetool.H}xwiki.compatibility.previous.version${escapetool.H}${escapetool.H} property correctly pointing to the latest stable (non-milestone) release and if not, change it. | ||
38 | * (/) Verify that there are [[no JIRA issues with commits for this branch>>https://jira.xwiki.org/issues/?jql=category%20%3D%2010000%20and%20resolution%20%3D%20Unresolved%20and%20issue.property%5Bdevelopment%5D.commits%20%3E%200%20and%20updated%20%3E%20%22$datetool.format('yyyy-MM-dd', $previousRCReleaseDate)%22]] and that are not closed | ||
39 | * Make sure next version exists on [[jira>>https://jira.xwiki.org]] projects (JIRA releases are done automatically in the build): | ||
40 | ** (/) [[Commons JIRA>>https://jira.xwiki.org/plugins/servlet/project-config/XCOMMONS/versions]] | ||
41 | ** (/) [[Rendering JIRA>>https://jira.xwiki.org/plugins/servlet/project-config/XRENDERING/versions]] | ||
42 | ** (/) [[Platform JIRA>>https://jira.xwiki.org/plugins/servlet/project-config/XWIKI/versions]] | ||
43 | * (/) [[Verify>>ReleasePlanHelp||anchor="HVerifyJIRAissue"]] that there are no [[open issues on JIRA for version $version>>https://jira.xwiki.org/secure/IssueNavigator.jspa?reset=true&jqlQuery=Project+in+%28%22XWiki+Commons%22%2C+%22XWiki+Rendering%22%2C+%22XWiki+Platform%22%29+and+fixVersion+in+%28%22$version%22%29+and+resolution+in+%28%22Unresolved%22%29]] and that there are [[no open Blockers>>https://jira.xwiki.org/issues/?jql=priority%20%3D%20Blocker%20and%20resolution%20%3D%20Unresolved%20and%20category%20%3D%2010000]]. | ||
44 | * (/) Since the release is performed on ${escapetool.H}${escapetool.H}agent-1-1${escapetool.H}${escapetool.H} and since it shares memory with other ${escapetool.H}${escapetool.H}agent1-*${escapetool.H}${escapetool.H} agents, mark as offline [[agent1-1>>http://ci.xwiki.org/computer/agent-1-1/markOffline]], [[agent1-2>>http://ci.xwiki.org/computer/agent-1-2/markOffline]] and [[agent1-3>>http://ci.xwiki.org/computer/agent-1-3/markOffline]] to avoid using them in the CI. Put as comment {{code language="none"}}Temporarily marking agent-1-* offline for the release of $version{{/code}}. | ||
45 | * (/) [[Log on the release machine>>ReleasePlans.ReleasePlanHelp||anchor="HLogonReleasemachine"]], [[set up your identity>>ReleasePlans.ReleasePlanHelp||anchor="HSetupyouridentity"]], [[update the release scripts>>ReleasePlans.ReleasePlanHelp||anchor="HUpdateReleasescripts"]] and [[set the correct Java version>>dev:ReleasePlans.ReleasePlanHelp||anchor="HConfiguretheJavaVersion"]] | ||
46 | #if (!$isRC) | ||
47 | * (x) [[Update translations>>ReleasePlans.ReleasePlanHelp||anchor="HUpdateTranslations"]] | ||
48 | #end | ||
49 | * (/) [[Build the release>>ReleasePlans.ReleasePlanHelp||anchor="HBuildtherelease"]] | ||
50 | * (/) Publish [[code contributors list>>ReleasePlans.ReleasePlanHelp||anchor="HGenerateCodeContributorslist"]] in the [[Release Notes for version $version>>${releaseNotesWikiLink}||anchor="HCredits"]] | ||
51 | * (/) Publish [[backward compatibility reports>>ReleasePlans.ReleasePlanHelp||anchor="HUpdateBackwardCompatibilityinthereleasenote"]] in the [[Release Notes for version $version>>${releaseNotesWikiLink}]] | ||
52 | #if ($isFirstFinal) | ||
53 | * (x) [[Update backward compatibility setup in the build>>ReleasePlans.ReleasePlanHelp||anchor="HUpdatethebackwardcompatibilitysetupinthebuild"]] | ||
54 | #end | ||
55 | * (/) [[Clean up your identity>>ReleasePlans.ReleasePlanHelp||anchor="HCleanupidentity"]] | ||
56 | * (/) Mark [[agent-1-1>>http://ci.xwiki.org/computer/agent-1-1/]], [[agent-1-2>>http://ci.xwiki.org/computer/agent-1-2/]] and [[agent-1-3>>http://ci.xwiki.org/computer/agent-1-3/]] online again (button on the right). | ||
57 | * (/) Verify that there are no [[missing documentation for closed JIRA issues for version $version>>https://jira.xwiki.org/issues/?jql=Project%20in%20%28%22XWiki%20Commons%22%2C%20%22XWiki%20Rendering%22%2C%20%22XWiki%20Platform%22%29%20and%20fixVersion%20in%20%28%22$version%22%29%20and%20resolution%20in%20%28%22Fixed%22%29%20and%20%28%28Documentation%20is%20EMPTY%29%20or%20%28%22Documentation%20in%20Release%20Notes%22%20is%20EMPTY%29%29]] | ||
58 | * (/) Ensure that the [[Release Notes are complete and nice-looking for version $version>>${releaseNotesWikiLink}]] | ||
59 | * (/) Set the Release date + Release flag in the [[Release Notes for version $version>>${releaseNotesWikiLink}]] by editing with the object editor. | ||
60 | * (/) Force [[rebuild of the Debian repository index>>ReleasePlans.ReleasePlanHelp||anchor="HRebuildDebianDistribution"]] | ||
61 | * (/) Update the [[Download page>>https://www.xwiki.org/xwiki/bin/edit/Download/]] (Use bullets points for the major features to make it easy to read; Update/Bump the LTS if doing a final major version release, i.e. new cycle) | ||
62 | #if (!$isRC && !$isMilestone) | ||
63 | * (x) [[Force extensions update>>ReleasePlans.ReleasePlanHelp||anchor="HForceExtensionsUpdate"]] | ||
64 | #end | ||
65 | * (/) [[Create blog post on xwiki.org>>ReleasePlans.ReleasePlanHelp||anchor="HBlogpostonxwiki.org"]] | ||
66 | * (/) [[Update the API doc>>platform:DevGuide.API]], including [[Rendering>>rendering:Main.JavaDoc]] | ||
67 | * (/) Update [[Wikipedia (en)>>https://en.wikipedia.org/wiki/XWiki]], [[Wikipedia (fr)>>https://fr.wikipedia.org/wiki/XWiki]]#if (!$isRC && !$isMilestone)and [[Wikipedia (compare wiki software)>>https://en.wikipedia.org/wiki/Comparison_of_wiki_software]]#end only if this version is bigger than the existing one. | ||
68 | #if (!$isRC && !$isMilestone) | ||
69 | * (x) Update [[Wikimatrix>>http://www.wikimatrix.org/edit/XWiki]], with your own account, [[only if this version is bigger than the existing one>>ReleasePlans.ReleasePlanHelp||anchor="HUpdateWikimatrix"]]. | ||
70 | #end | ||
71 | * (/) [[Announcement Mail>>ReleasePlans.ReleasePlanHelp||anchor="HAnnouncementMail"]] and [[Forum Post>>ReleasePlans.ReleasePlanHelp||anchor="HForumAnnouncement"]] | ||
72 | * (/) [[Announce on Twitter>>ReleasePlans.ReleasePlanHelp||anchor="HAnnounceonTwitter"]] with the [[xwikiorg account>>https://twitter.com/xwikiorg/]] | ||
73 | * (/) Update the [[Release Plan page>>ReleasePlans.WebHome||anchor="HNextReleaseManagers"]] to move yourself to the bottom of the list for your next release. | ||
74 | * (/) Ensure that the [[release date in this Release Plan>>path:$doc.getURL("edit", "editor=object")]] corresponds to the date when the git release was done | ||
75 | #if (!$isBugfix) | ||
76 | * (/) Update the release date on the [[Roadmap page>>xwiki:Roadmaps.WebHome]] for non bugfix releases and move the roadmap items to the archive page (for final releases) | ||
77 | #end | ||
78 | #if ($isFinal) | ||
79 | * (x) [[Update the XWiki official Docker images>>ReleasePlans.ReleasePlanHelp||anchor="HUpdateDocker"]] | ||
80 | #end | ||
81 | #if ($isFirstFinal) | ||
82 | * Delete the "stable-XXX" branches before the "stable-${version}" ones on github and in Jenkins by using the "Delete branch" UI button when on the branch jobs: | ||
83 | ** (x) [[Commons>>https://github.com/xwiki/xwiki-commons/branches]] | ||
84 | ** (x) [[Rendering>>https://github.com/xwiki/xwiki-rendering/branches]] | ||
85 | ** (x) [[Platform>>https://github.com/xwiki/xwiki-platform/branches]] | ||
86 | #end | ||
87 | {{/velocity}} |