You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by jv...@apache.org on 2007/02/07 03:37:44 UTC

svn commit: r504417 - in /maven/site/trunk/src/site/apt/developers/release: ./ pmc-gpg-keys.apt pmc-release-process.apt releasing-notes.apt releasing.apt

Author: jvanzyl
Date: Tue Feb  6 18:37:43 2007
New Revision: 504417

URL: http://svn.apache.org/viewvc?view=rev&rev=504417
Log:
o add documents for releasing to a directory specifically for releasing projects

Added:
    maven/site/trunk/src/site/apt/developers/release/
    maven/site/trunk/src/site/apt/developers/release/pmc-gpg-keys.apt
      - copied unchanged from r491161, maven/site/trunk/src/site/apt/developers/pmc-gpg-keys.apt
    maven/site/trunk/src/site/apt/developers/release/pmc-release-process.apt
      - copied unchanged from r491161, maven/site/trunk/src/site/apt/developers/pmc-release-process.apt
    maven/site/trunk/src/site/apt/developers/release/releasing-notes.apt   (with props)
    maven/site/trunk/src/site/apt/developers/release/releasing.apt   (with props)

Added: maven/site/trunk/src/site/apt/developers/release/releasing-notes.apt
URL: http://svn.apache.org/viewvc/maven/site/trunk/src/site/apt/developers/release/releasing-notes.apt?view=auto&rev=504417
==============================================================================
--- maven/site/trunk/src/site/apt/developers/release/releasing-notes.apt (added)
+++ maven/site/trunk/src/site/apt/developers/release/releasing-notes.apt Tue Feb  6 18:37:43 2007
@@ -0,0 +1,35 @@
+Releasing
+
+ * Date of the last release (we need the release descriptor from the release plugin)
+
+ * Show issues resolved for this release
+
+ * Show the link to the artifacts for release
+
+ * Show the revision used to create the release
+
+ * Show the link to the site for the release
+
+ * Show the output of the docck plugin
+
+ * Show expanded forms of deliverables so they can be inspected on line
+
+ * Show results of the license header verifier
+
+ * Show any change reports that are available (the changelog, this can become standard over time)
+
+ []
+
+Announcing
+
+ * Make sure that the release has propagated to the central repository before announcing.
+
+ * Send email to the appropriate lists
+
+  * The url the directory with the release artifacts
+
+  * Roadmap/Changelog for the release
+
+  * Instructions on how to use the new release. For a plugin this is updating a version or using the -U flag, for a library just updating the
+    version.
+

Propchange: maven/site/trunk/src/site/apt/developers/release/releasing-notes.apt
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/site/trunk/src/site/apt/developers/release/releasing-notes.apt
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Added: maven/site/trunk/src/site/apt/developers/release/releasing.apt
URL: http://svn.apache.org/viewvc/maven/site/trunk/src/site/apt/developers/release/releasing.apt?view=auto&rev=504417
==============================================================================
--- maven/site/trunk/src/site/apt/developers/release/releasing.apt (added)
+++ maven/site/trunk/src/site/apt/developers/release/releasing.apt Tue Feb  6 18:37:43 2007
@@ -0,0 +1,98 @@
+ -----
+ Releasing A Maven Project
+ -----
+ Jason van Zyl
+ -----
+ 9 December 2006
+ -----
+
+~~ Licensed to the Apache Software Foundation (ASF) under one
+~~ or more contributor license agreements.  See the NOTICE file
+~~ distributed with this work for additional information
+~~ regarding copyright ownership.  The ASF licenses this file
+~~ to you under the Apache License, Version 2.0 (the
+~~ "License"); you may not use this file except in compliance
+~~ with the License.  You may obtain a copy of the License at
+~~
+~~   http://www.apache.org/licenses/LICENSE-2.0
+~~
+~~ Unless required by applicable law or agreed to in writing,
+~~ software distributed under the License is distributed on an
+~~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+~~ KIND, either express or implied.  See the License for the
+~~ specific language governing permissions and limitations
+~~ under the License.
+
+Releasing A Maven Project
+
+ What follows is a description of releasing a Maven project to a staging repository, whereupon it is scruntized by
+ the community, approved, and transfered to a production repository. In order to release a project you must have the 
+ following setup in your <<<$HOME/.m2/settings.xml>>> which is a profile which provides settings for:
+ 
+ * Your GPG passphrase which will be used to sign all artifacts that are released. If you have no idea what your
+   GPG passphrase is then refer to {{{pmc-release-process.html}this}}.
+            
+ * The repository that you want to deploy the release to.
+
+ Here's what your <<<release>>> profile might look like in your <<<$HOME/.m2/settings.xml>>>:
+ 
++-----+
+<settings>
+  ...
+  <profiles>
+    <profile>
+      <id>release</id>
+      <properties>
+        <gpg.passphrase>secretPhrase</gpg.passphrase>
+        <deploy.altRepository>username::default::scp://hostname/path/to/directory/stage/repo</deploy.altRepository>
+      </properties>
+    </profile>
+  </profiles>
+  ...
+</settings>
++-----+  
+
+ Everything that you need to release has been configured in the POM all Maven projects inherit from. The release plugin configuration
+ being used is the following:
+
+%{snippet|id=release-plugin-configuration|url=http://svn.apache.org/repos/asf/maven/pom/trunk/maven/pom.xml}
+ 
+ And the profile being used for releases is the following:
+ 
+%{snippet|id=release-profile|url=http://svn.apache.org/repos/asf/maven/pom/trunk/maven/pom.xml}
+
+ All you need to do in order to release are the familiar 
+ 
++-----+
+mvn release:perform
+
+mvn release:prepare
++-----+
+
+ Once the release is deemed fit for public consumption it can be transfered to a production repository where it will
+ be available to all users. Currently the tools to do this are inconvenient so if you want to stage a release you 
+ can contact Jason and he'll show you how to do it. Otherwise you can release directly to a production repository.
+ 
+Releasing a Project Directly into a Production Repository
+
+ If you want to release directly to a production repository then you simply make the staging repository point at 
+ the production repository by using the following in your <<<$HOME/.m2/settings.xml>>>:
+
++-----+
+<settings>
+  ...
+  <profiles>
+    <profile>
+      <id>release</id>
+      <properties>
+        <gpg.passphrase>secretPhrase</gpg.passphrase>
+        <deploy.altRepository>username::default::scp://people.apache.org/www/people.apache.org/repo/m2-ibiblio-rsync-repository</deploy.altRepository>
+      </properties>
+    </profile>
+  </profiles>
+  ...
+</settings>
++-----+  
+
+ This will allow you to by pass the staging phase and push the release directly into a production repository. It is assume that
+ you have pushed a snapshot somewhere that people have looked at and approve of.

Propchange: maven/site/trunk/src/site/apt/developers/release/releasing.apt
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/site/trunk/src/site/apt/developers/release/releasing.apt
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"