Deploying snapshots
There is no need to manually deploy snapshots.
Snapshots are automatically deployed by Hudson build job to the Nexus snapshot repository at https://repository.apache.org/content/repositories/snapshots/org/apache/wink
Performing a release
For the most part, we follow the same instructions that the maven team uses. http://maven.apache.org/developers/release/releasing.html
Basically, setup your settings.xml file as they described.
After that is setup, you need to update the release_notes.txt in the src/doc, and run the below commands.
mvn release:prepare mvn release:perform -PCIBuild
Notice: CIBuild profile is responsible to generate javadocs and build Wink sources/binaries archives.
JIRA http://jira.codehaus.org/browse/MRELEASE-459 prevents us from setting this profile inside maven-release-plugin configuration. The workaround is to path this profile as command line parameter.
After the JIRA is closed the maven-release-plugin should be configured as follows
<plugin> <artifactId>maven-release-plugin</artifactId> <configuration> <tagBase>https://svn.apache.org/repos/asf/incubator/wink/tags</tagBase> <preparationGoals>clean install</preparationGoals> <releaseProfiles>CIBuild</releaseProfiles> </configuration> </plugin>
That will tag the release, update the poms, etc... Then build it (off the tag) and deploy all artifacts to the Nexus repository location while gpg signing all artifacts. When the build is done staging, you need to login to the Nexus repository and "close" the staging are. See the Maven page above for instructions. That is very important. After the staging are is closed, note the URL for the staging area as you will need that for the vote.
Call the vote.
After the vote passes, you'll need to promote that staging repository to the main location. Login to Nexus to do that as well. See above Maven team release page.
Also, don't forget to copy the actual distributions (all artifacts located under apache-wink in Nexus repo) to people.apache.org:/www/www.apache.org/dist/wink.