You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by ch...@apache.org on 2018/01/09 13:32:31 UTC
[1/3] commons-release-plugin git commit: COMMONSSITE-97: Providing
better documentation and testing javadocs
Repository: commons-release-plugin
Updated Branches:
refs/heads/master ea2fb4e75 -> 3250bf66b
COMMONSSITE-97: Providing better documentation and testing javadocs
Project: http://git-wip-us.apache.org/repos/asf/commons-release-plugin/repo
Commit: http://git-wip-us.apache.org/repos/asf/commons-release-plugin/commit/ec846af9
Tree: http://git-wip-us.apache.org/repos/asf/commons-release-plugin/tree/ec846af9
Diff: http://git-wip-us.apache.org/repos/asf/commons-release-plugin/diff/ec846af9
Branch: refs/heads/master
Commit: ec846af9085cad8f42304b185f5bb5666ce33af5
Parents: 34e727b
Author: Rob Tompkins <ch...@gmail.com>
Authored: Tue Jan 9 08:30:55 2018 -0500
Committer: Rob Tompkins <ch...@gmail.com>
Committed: Tue Jan 9 08:30:55 2018 -0500
----------------------------------------------------------------------
src/site/site.xml | 8 +-
src/site/xdoc/index.xml | 94 ++++++++++++++++----
.../release/plugin/mojos/package-info.java | 7 ++
.../commons/release/plugin/package-info.java | 7 ++
.../DistributionDetachmentProjectStub.java | 6 +-
.../release/plugin/stubs/package-info.java | 10 +++
6 files changed, 111 insertions(+), 21 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/commons-release-plugin/blob/ec846af9/src/site/site.xml
----------------------------------------------------------------------
diff --git a/src/site/site.xml b/src/site/site.xml
index 1c5d926..27a1a2d 100644
--- a/src/site/site.xml
+++ b/src/site/site.xml
@@ -19,16 +19,14 @@
$HeadURL$
$Revision$ $Date$
-->
-<project name="Commons Build Plugin">
+<project name="Commons Release Plugin">
<body>
- <menu name="Build Plugin">
- <item name="Overview" href="/index.html"/>
+ <menu name="Release Plugin">
+ <item name="Overview" href="/index.html" />
<item name="Help" href="/development.html">
<item name="Issue Tracking" href="/issue-tracking.html"/>
<item name="Development" href="/development.html"/>
- <item name="Maven Plugins" href="http://maven.apache.org/guides/plugin/guide-ant-plugin-development.html"/>
- <item name="Ant" href="http://ant.apache.org/manual/index.html"/>
</item>
</menu>
</body>
http://git-wip-us.apache.org/repos/asf/commons-release-plugin/blob/ec846af9/src/site/xdoc/index.xml
----------------------------------------------------------------------
diff --git a/src/site/xdoc/index.xml b/src/site/xdoc/index.xml
index eb02ced..cb38844 100644
--- a/src/site/xdoc/index.xml
+++ b/src/site/xdoc/index.xml
@@ -23,7 +23,7 @@
<properties>
<title>Overview</title>
- <author email="dev@commons.apache.org">Apache Commons Documentation Team</author>
+ <author email="dev@commons.apache.org">Apache Commons Team</author>
</properties>
<body>
@@ -31,42 +31,106 @@
<section name="Release Plugin">
<p>
- This is a <a href="http://maven.apache.org/">Maven 2.x/3.x</a>Plugin which is
+ This is a <a href="http://maven.apache.org/">Maven 3.x</a> Plugin which is
used by <a href="http://commons.apache.org/">Apache Commons</a> releases. See
the <a href="development.html">Development</a> page for information to
help maintain this plugin.
</p>
+ <p>The main purpose of the plugin is to automate the steps of our, namely
+ The Apache Commons Project's, release process. Currently we have the mechanics
+ for detaching distribution artifacts (i.e. all <code>tar.gz</code> artifacts and
+ signatures as well as all <code>.zip</code> artifacts and signatures), creating
+ a <code>site.zip</code> file, and staging all of those artifacts in a subversion
+ repository (for the most part a sub directory of
+ <a href="https://dist.apache.org/repos/dist/dev/commons/">https://dist.apache.org/repos/dist/dev/commons/</a>.
+ It can, however, stage to any subversion repository.
+ </p>
+
</section>
<section name="Plugin Goals">
<p>
- Available Goals:
+ Available Goals (which are meant to be used together; the only reason they are separated is for
+ code readability):
<ul>
- <li><a href="download-page.html">commons:download-page</a> - Generate a Download page for the component's latest release</li>
- <li><a href="mail-page.html">commons:mail-page</a> - Generate a custom <i>Mailing List</i> page for a component</li>
- <li><a href="jira-page.html">commons:jira-page</a> - Generate a custom <i>JIRA Issue Tracking</i> page for a component</li>
- <li><a href="sandbox-jira-page.html">commons:sandbox-jira-page</a> - Generate a custom <i>JIRA Issue Tracking page</i> for a Sandbox component</li>
- <li><a href="copy-javadoc-files-build.html">commons:copy-javadoc-files</a> - Copy NOTICE and LICENSE files to -javadoc jar</li>
- <li><a href="readme-md.html">commons:readme-md</a> - Generate a README.md file containing information for contributors from GitHub</li>
- <li><a href="contributing-md.html">commons:contributing-md</a> - Generate a CONTRIBUTING.md file containing information on how to contribute for contributors from GitHub</li>
+ <li>
+ <b>commons-release:detach-distributions</b> - Remove
+ <code>tar.gz</code>, <code>tar.gz.asc</code>, <code>zip</code>, and <code>zip.asc</code>
+ files from being uploaded to nexus and copy them to the <code>target/commons-release-plugin</code>
+ directory.
+ </li>
+ <li>
+ <b>commons-release:compress-site</b> - Generate <code>site.zip</code> file
+ in the <code>target/commons-release-plugin</code> directory.</li>
+ <li>
+ <b>commons-release:stage-distributions</b> - Take all staged files in the
+ <code>target/commons-release-plugin</code> directory, and the <code>RELEASE-NOTES.txt</code> from
+ the root of the project, and commit them to a specified staging subversion repository.
+ </li>
</ul>
</p>
</section>
- <section name="Trying out the plugin">
+ <section name="Using the plugin">
<p>
- Configure the plugin in the <code><build></code> section of the <code>pom.xml</code>
+ Configure the plugin as the last plugin in the<code><build></code> section of the <code>pom.xml</code>
<source><![CDATA[
<plugin>
<groupId>org.apache.commons</groupId>
- <artifactId>commons-build-plugin</artifactId>
- <version>1.6</version>
+ <artifactId>commons-release-plugin</artifactId>
+ <version>0.1-SNAPSHOT</version>
+ <configuration>
+ <distSvnStagingUrl>scm:svn:https://dist.apache.org/repos/dist/dev/commons/foo</distSvnStagingUrl>
+ </configuration>
+ <executions>
+ <execution>
+ <id>detatch-distributions</id>
+ <phase>verify</phase>
+ <goals>
+ <goal>detatch-distributions</goal>
+ </goals>
+ </execution>
+ <execution>
+ <id>compress-site</id>
+ <phase>site</phase>
+ <goals>
+ <goal>compress-site</goal>
+ </goals>
+ </execution>
+ <execution>
+ <id>stage-distributions</id>
+ <phase>deploy</phase>
+ <goals>
+ <goal>stage-distributions</goal>
+ </goals>
+ </execution>
+ </executions>
</plugin>
]]></source>
</p>
<p>
- Configure any properties required by the goal and try executing.
+ After the above configuration performing the release would occur by (<i>note.</i> more
+ in depth details can be found at
+ <a href="http://commons.apache.org/releases/prepare.html">Preparations For A Release</a>):
+ <ol>
+ <li>creating our release branch,</li>
+ <li>checking compatibility,</li>
+ <li>checking your dependencies,</li>
+ <li>checking javadocs and code style,</li>
+ <li>checking the apache license,</li>
+ <li>configure the build to generate a complete set of release artifacts,</li>
+ <li>preparing the release notes, updating the download file and other autogenerated files,</li>
+ <li>tagging the release candidate, and</li>
+ <li>
+ running the following command:
+<source><![CDATA[
+mvn -Duser.name=<yourApacheId> -Prelease clean test site deploy
+]]></source>
+ </li>
+ </ol>
+ If the component is new, then, before running this maven command, you would want to create
+ the requisite subversion directory <code>https://dist.apache.org/repos/dist/dev/commons/foo</code>.
</p>
</section>
http://git-wip-us.apache.org/repos/asf/commons-release-plugin/blob/ec846af9/src/test/java/org/apache/commons/release/plugin/mojos/package-info.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/release/plugin/mojos/package-info.java b/src/test/java/org/apache/commons/release/plugin/mojos/package-info.java
index 32828f0..c9ab4b7 100644
--- a/src/test/java/org/apache/commons/release/plugin/mojos/package-info.java
+++ b/src/test/java/org/apache/commons/release/plugin/mojos/package-info.java
@@ -14,4 +14,11 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+/**
+ * This package contains the unit tests for the package
+ * {@link org.apache.commons.release.plugin.mojos}.
+ *
+ * @author chtompki
+ * @since 1.0
+ */
package org.apache.commons.release.plugin.mojos;
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/commons-release-plugin/blob/ec846af9/src/test/java/org/apache/commons/release/plugin/package-info.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/release/plugin/package-info.java b/src/test/java/org/apache/commons/release/plugin/package-info.java
index 4852740..8c9e5ff 100644
--- a/src/test/java/org/apache/commons/release/plugin/package-info.java
+++ b/src/test/java/org/apache/commons/release/plugin/package-info.java
@@ -14,4 +14,11 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+/**
+ * This is the base package containing the unit tests
+ * <code>commons-release-plugin</code>.
+ *
+ * @author chtompki
+ * @since 1.0
+ */
package org.apache.commons.release.plugin;
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/commons-release-plugin/blob/ec846af9/src/test/java/org/apache/commons/release/plugin/stubs/DistributionDetachmentProjectStub.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/release/plugin/stubs/DistributionDetachmentProjectStub.java b/src/test/java/org/apache/commons/release/plugin/stubs/DistributionDetachmentProjectStub.java
index da41efd..7e90b4e 100644
--- a/src/test/java/org/apache/commons/release/plugin/stubs/DistributionDetachmentProjectStub.java
+++ b/src/test/java/org/apache/commons/release/plugin/stubs/DistributionDetachmentProjectStub.java
@@ -16,6 +16,7 @@
*/
package org.apache.commons.release.plugin.stubs;
+import org.apache.commons.release.plugin.mojos.CommonsDistributionDetachmentMojoTest;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.plugin.testing.stubs.ArtifactStub;
import org.apache.maven.plugin.testing.stubs.MavenProjectStub;
@@ -26,9 +27,12 @@ import java.util.ArrayList;
import java.util.List;
/**
- * Stub for {@link MavenProject} for the {@link CommonsDistributionDetachmentMojoTest}.
+ * Stub for {@link MavenProject} for the {@link CommonsDistributionDetachmentMojoTest}. See the testing pom,
+ * <code>src/test/resources/detach-distributions/detach-distributions.xml</code> for the declared usage of
+ * this class.
*
* @author chtompki
+ * @since 1.0
*/
public class DistributionDetachmentProjectStub extends MavenProjectStub {
http://git-wip-us.apache.org/repos/asf/commons-release-plugin/blob/ec846af9/src/test/java/org/apache/commons/release/plugin/stubs/package-info.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/release/plugin/stubs/package-info.java b/src/test/java/org/apache/commons/release/plugin/stubs/package-info.java
index 95d9137..b0a334f 100644
--- a/src/test/java/org/apache/commons/release/plugin/stubs/package-info.java
+++ b/src/test/java/org/apache/commons/release/plugin/stubs/package-info.java
@@ -14,4 +14,14 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+/**
+ * This package is meant to contain stubbed objects for the maven testing
+ * paradigm. These stubs can in turn be used in the poms in the <code>src/test/resources</code>
+ * directory of the project in the implementation block of the declaration of the configuration
+ * property. The maven unit testing framework then wires this stubbed object into the appropriate mojo
+ * for testing purposes.
+ *
+ * @author chtompki
+ * @since 1.0
+ */
package org.apache.commons.release.plugin.stubs;
\ No newline at end of file
[3/3] commons-release-plugin git commit: Merge branch 'master' of
https://git-wip-us.apache.org/repos/asf/commons-release-plugin
Posted by ch...@apache.org.
Merge branch 'master' of https://git-wip-us.apache.org/repos/asf/commons-release-plugin
Project: http://git-wip-us.apache.org/repos/asf/commons-release-plugin/repo
Commit: http://git-wip-us.apache.org/repos/asf/commons-release-plugin/commit/3250bf66
Tree: http://git-wip-us.apache.org/repos/asf/commons-release-plugin/tree/3250bf66
Diff: http://git-wip-us.apache.org/repos/asf/commons-release-plugin/diff/3250bf66
Branch: refs/heads/master
Commit: 3250bf66b8c0fcbc65b3672fe363c56f1f65a84e
Parents: 57d7208 ea2fb4e
Author: Rob Tompkins <ch...@gmail.com>
Authored: Tue Jan 9 08:32:22 2018 -0500
Committer: Rob Tompkins <ch...@gmail.com>
Committed: Tue Jan 9 08:32:22 2018 -0500
----------------------------------------------------------------------
.../org/apache/commons/release/plugin/SharedFunctions.java | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
[2/3] commons-release-plugin git commit: COMMONSSITE-97: Providing
better documentation and testing javadocs
Posted by ch...@apache.org.
COMMONSSITE-97: Providing better documentation and testing javadocs
Project: http://git-wip-us.apache.org/repos/asf/commons-release-plugin/repo
Commit: http://git-wip-us.apache.org/repos/asf/commons-release-plugin/commit/57d72083
Tree: http://git-wip-us.apache.org/repos/asf/commons-release-plugin/tree/57d72083
Diff: http://git-wip-us.apache.org/repos/asf/commons-release-plugin/diff/57d72083
Branch: refs/heads/master
Commit: 57d72083e8cc8f502e8636ac3555e6d30453ef76
Parents: ec846af
Author: Rob Tompkins <ch...@gmail.com>
Authored: Tue Jan 9 08:32:04 2018 -0500
Committer: Rob Tompkins <ch...@gmail.com>
Committed: Tue Jan 9 08:32:04 2018 -0500
----------------------------------------------------------------------
.../target/mockAttachedFile.html | 24 +++++++++++++++++++
.../target/mockAttachedTar.tar.gz | Bin 0 -> 327 bytes
.../target/mockAttachedTar.tar.gz.asc | Bin 0 -> 566 bytes
.../target/mockAttachedZip.zip | Bin 0 -> 1323 bytes
.../target/mockAttachedZip.zip.asc | Bin 0 -> 566 bytes
5 files changed, 24 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/commons-release-plugin/blob/57d72083/src/test/resources/mojos/detach-distributions/target/mockAttachedFile.html
----------------------------------------------------------------------
diff --git a/src/test/resources/mojos/detach-distributions/target/mockAttachedFile.html b/src/test/resources/mojos/detach-distributions/target/mockAttachedFile.html
new file mode 100644
index 0000000..c9a72dd
--- /dev/null
+++ b/src/test/resources/mojos/detach-distributions/target/mockAttachedFile.html
@@ -0,0 +1,24 @@
+<html>
+<!--
+ ~ 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.
+ -->
+<header><title>Mock maven site</title></header>
+<body>
+mock body
+</body>
+</html>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/commons-release-plugin/blob/57d72083/src/test/resources/mojos/detach-distributions/target/mockAttachedTar.tar.gz
----------------------------------------------------------------------
diff --git a/src/test/resources/mojos/detach-distributions/target/mockAttachedTar.tar.gz b/src/test/resources/mojos/detach-distributions/target/mockAttachedTar.tar.gz
new file mode 100644
index 0000000..dda7e6c
Binary files /dev/null and b/src/test/resources/mojos/detach-distributions/target/mockAttachedTar.tar.gz differ
http://git-wip-us.apache.org/repos/asf/commons-release-plugin/blob/57d72083/src/test/resources/mojos/detach-distributions/target/mockAttachedTar.tar.gz.asc
----------------------------------------------------------------------
diff --git a/src/test/resources/mojos/detach-distributions/target/mockAttachedTar.tar.gz.asc b/src/test/resources/mojos/detach-distributions/target/mockAttachedTar.tar.gz.asc
new file mode 100644
index 0000000..f45982f
Binary files /dev/null and b/src/test/resources/mojos/detach-distributions/target/mockAttachedTar.tar.gz.asc differ
http://git-wip-us.apache.org/repos/asf/commons-release-plugin/blob/57d72083/src/test/resources/mojos/detach-distributions/target/mockAttachedZip.zip
----------------------------------------------------------------------
diff --git a/src/test/resources/mojos/detach-distributions/target/mockAttachedZip.zip b/src/test/resources/mojos/detach-distributions/target/mockAttachedZip.zip
new file mode 100644
index 0000000..1f34188
Binary files /dev/null and b/src/test/resources/mojos/detach-distributions/target/mockAttachedZip.zip differ
http://git-wip-us.apache.org/repos/asf/commons-release-plugin/blob/57d72083/src/test/resources/mojos/detach-distributions/target/mockAttachedZip.zip.asc
----------------------------------------------------------------------
diff --git a/src/test/resources/mojos/detach-distributions/target/mockAttachedZip.zip.asc b/src/test/resources/mojos/detach-distributions/target/mockAttachedZip.zip.asc
new file mode 100644
index 0000000..804d188
Binary files /dev/null and b/src/test/resources/mojos/detach-distributions/target/mockAttachedZip.zip.asc differ