Pre-Release tasks
The following tasks should be performed at least one day before starting the actual maven release!
- Check that the latest apache-parent pom is used from http://repo1.maven.org/maven2/org/apache/apache/
- Check that all maven plugins are used in the latest version
$> mvn versions:display-plugin-updates
- Check that all maven dependencies are used in the latest version
$> mvn versions:display-dependency-updates
Release Preparations
- Heads up on the mailing-lists
e.g.:
first steps for the next release hi @ all, if there are no objections, i'll start with the first steps for the next release (review, documentation,...). it would be great to start with the release procedure next week. regards, ...
- Check the documentation https://cwiki.apache.org/confluence/display/DeltaSpike/Temporary+Documentation
- Check https://analysis.apache.org/dashboard/index/org.apache.deltaspike:deltaspike-project
- Check diff with tag of version-1
- Check the Jenkins builds at https://builds.apache.org/view/A-F/view/DeltaSpike/
- Check the integration tests
- Create release notes and commit them to https://git-wip-us.apache.org/repos/asf?p=incubator-deltaspike.git;a=tree;f=deltaspike /readme/ (format READMEversion.txt)
- rat check
First Steps
mvn release:prepare -DdryRun=true //attention: use an useful tag-name (asked before the new version numbers) format [deltaspike-[version]] //important: check the generated javadoc //important: check if content was lost during release:prepare (especially license headers in pom.xml files) mvn release:clean mvn deploy //check http://repository.apache.org/content/repositories/snapshots/org/apache/deltaspike/* mvn release:prepare -Papache-release //attention: use an useful tag-name (asked before the new version numbers) //attention: invoke x2 (esp. in european countries) //check tag in svn // ATTENTION, THIS IS ONLY A WORKAROUND! // AND WILL NOT BE NEEDED AFTER THE NEW maven-release-plugin GOT RELEASED cp -r ../git . // DON'T FORGET TO DELETE deltaspike/deltaspike/.git AGAIN AFTER THE RELEASE! mvn release:perform -Papache-release //login to https://repository.apache.org/ and go to "Staging Repositories" //check the shadded configs and esp. ...-[version]-source-release.zip //close the repository
TODO - add GIT specific parts e.g. release branch,...
Start the Vote (PPMC)
[VOTE] Release of DeltaSpike [...] Hi, I'd like to call a VOTE on releasing Apache DeltaSpike [...]. Maven staging repository: [...] Source release: [...] Git release branch: [...] (The branch will be pushed after the required votes passed.) Please take a look at the [...] artifacts and vote! Please note: This vote is "majority approval" with a minimum of three +1 votes of PPMC (or IPMC) members. This vote is open for 72 hours. ------------------------------------------------ [ ] +1 for community members who have reviewed the bits [ ] +0 [ ] -1 for fatal flaws that should cause these bits not to be released, and why ... ------------------------------------------------ Thanks, ...
Close PPMC vote
Close the vote after 72 hours.
Result (was: Re: [VOTE] Release of Apache DeltaSpike ...-incubating) thank you for voting! ... binding +1 votes: - ... (ppmc, ipmc, mentor) ... non-binding +1 votes: - ... (committer) ... +0 votes ... -1 votes regards, ...
Steps after voting started
create a link to the release notes at http://s.apache.org (format DeltaSpike_version)
tweet about the vote via @DeltaSpikeTeam.
e.g.:
The #DeltaSpike community is currently voting on 0.1-incubating! http://s.apache.org/DeltaSpike_01incubating
Start the Vote (IPMC)
[VOTE] Release Apache DeltaSpike ...-incubating Hi, This is the ... incubator release for Apache DeltaSpike, with the artifacts being versioned as ...-incubating. We have received ... binding +1 votes (including ... votes of IPMC members) during the release voting on deltaspike-dev. Vote thread: ... Result: ... Git release branch: ... (It will be pushed to our Apache Git repository after this vote passed.) Git release tag: ... (It will be pushed to our Apache Git repository after this vote passed.) Release notes: ... Release artifacts: ... PGP release file: ... This vote is open for 72 hours. ------------------------------------------------ [ ] +1 approve [ ] +0 no opinion [ ] -1 disapprove (and reason why) ------------------------------------------------ Thanks, ...
Review the Release (IPMC)
See Reviewing a Release for more details.
//incubator.apache.org/guides/releasemanagement.html
Close IPMC vote
Close the vote after 72 hours.
[RESULT] [VOTE] Release DeltaSpike ...-incubating thank you for voting! ... binding +1 votes (ipmc): - ... ... +0 and ... -1 votes regards, ...
Perform the final release
If the binding majority approved the vote continue.
- Login to https://repository.apache.org/ and release the repository
- Create the release at jira (https://issues.apache.org/jira/plugins/servlet/project-config/DELTASPIKE/versions)
- Close the corresponding tickets of the version
- Wait some hours and check http://repo2.maven.org/maven2/org/apache/deltaspike
Announce the Release
[ANNOUNCE] Release of Apache DeltaSpike ... (incubating) The Apache DeltaSpike team is pleased to announce (v...-incubating). DeltaSpike consists of a number of portable CDI extensions that provide useful features for Java application developers. The goal of DeltaSpike is to create a de-facto standard of CDI-Extensions that is developed and maintained by the community. Apache DeltaSpike is available in the central Maven repository under Group ID "org.apache.deltaspike.*". Release Notes: http://s.apache.org/DeltaSpike_... We would be happy to receive your feedback to improve Apache DeltaSpike step by step. Enjoy! ...
Write the e-mails to:
- announce at apache dot org
- general at incubator dot apache dot org
- deltaspike-dev at incubator dot apache dot org and deltaspike-users at incubator dot apache at org
Further announcements
- Twitter the news
e.g.:
[ANNOUNCE] The Apache #DeltaSpike team is pleased to announce http://s.apache.org/DeltaSpike_01incubating. Feel free to test it! Feedback is very welcome!
- Write blog entries
Post release steps
- Update https://cwiki.apache.org/confluence/display/DeltaSpike/History
- Add the release to the DeltaSpike report
- Check all version numbers
Push release branch and tag
Example with v0.1
git remote add release_repo [release repo] git fetch release_repo git checkout master git pull --rebase git checkout -b deltaspike-0.1-incubating release_repo/deltaspike-0.1-incubating //now we are on the release branch git push origin deltaspike-0.1-incubating git push origin deltaspike-project-0.1-incubating
Merge back release branch
Example with v0.1
git checkout master git pull --rebase git merge deltaspike-0.1-incubating git push //origin master git remote rm release_repo