Author: veithen
Date: Mon May 25 04:03:45 2015
New Revision: 1681552

URL: http://svn.apache.org/r1681552
Log:
Update release process to use svnpubsub for publication of source and binary 
distributions.

Modified:
    webservices/axiom/trunk/devguide/src/docbkx/devguide.xml
    webservices/axiom/trunk/distribution/pom.xml
    webservices/axiom/trunk/etc/dist.py

Modified: webservices/axiom/trunk/devguide/src/docbkx/devguide.xml
URL: 
http://svn.apache.org/viewvc/webservices/axiom/trunk/devguide/src/docbkx/devguide.xml?rev=1681552&r1=1681551&r2=1681552&view=diff
==============================================================================
--- webservices/axiom/trunk/devguide/src/docbkx/devguide.xml (original)
+++ webservices/axiom/trunk/devguide/src/docbkx/devguide.xml Mon May 25 
04:03:45 2015
@@ -1185,6 +1185,17 @@ javax.xml.stream.XMLOutputFactory=com.be
                 </step>
                 <step>
                     <para>
+                        Execute the 
<filename>target/checkout/etc/dist.py</filename> script to upload the source 
and binary distributions to
+                        the development area of the <link 
xlink:href="https://dist.apache.org/repos/dist/"/> repository.
+                    </para>
+                    <para>
+                        If not yet done, export your public key and append it 
to <link 
xlink:href="https://dist.apache.org/repos/dist/release/ws/axiom/KEYS"/>.
+                        The command to export a public key is as follows:
+                    </para>
+                    <screen>gpg --armor --export 
<replaceable>key_id</replaceable></screen>
+                </step>
+                <step>
+                    <para>
                         Generate and deploy the Maven site to your 
<literal>public_html</literal> directory on 
<literal>people.apache.org</literal>.
                         If you have all the necessary configurations for 
<literal>wagon-ssh-external</literal> in place, and your local user name matches
                         your Apache ID, then a single command should be enough 
to do that:
@@ -1225,8 +1236,8 @@ javax.xml.stream.XMLOutputFactory=com.be
                         </listitem>
                         <listitem>
                             <para>
-                                The location where source and binary packages 
may be downloaded.
-                                This can be a reference to the location inside 
the staging repository.
+                                The link to the source and binary 
distributions:
+                                
<literal>https://dist.apache.org/repos/dist/dev/ws/axiom/<replaceable>version</replaceable></literal>.
                             </para>
                         </listitem>
                         <listitem>
@@ -1255,22 +1266,13 @@ javax.xml.stream.XMLOutputFactory=com.be
                 </step>
                 <step>
                     <para>
-                        Log in to <literal>people.apache.org</literal> and 
publish the release
-                        distributions to <literal>www.apache.org</literal>. 
The <filename>etc/dist.py</filename>
-                        script can be used for that:
-                    </para>
-<screen>cd /www/www.apache.org/dist/ws/axiom
-umask 0002
-python <replaceable>path_to_etc</replaceable>/dist.py 
<replaceable>version</replaceable></screen>
-                    <para>
-                        <replaceable>version</replaceable> is the release 
version, e.g. <literal>1.2.9</literal>.
+                        Publish the distributions:
                     </para>
+<screen>svn mv 
https://dist.apache.org/repos/dist/dev/ws/axiom/<replaceable>version</replaceable>
 \
+       https://dist.apache.org/repos/dist/release/ws/axiom/</screen>
                     <para>
-                        If not yet done, export your public key and append it 
to the <filename>KEYS</filename>
-                        file located in 
<filename>/www/www.apache.org/dist/ws/axiom</filename>. The command
-                        to export a public key is as follows:
+                        <replaceable>version</replaceable> is the release 
version, e.g. <literal>1.2.9</literal>.
                     </para>
-                    <screen>gpg --armor --export 
<replaceable>key_id</replaceable></screen>
                 </step>
                 <step>
                     <para>
@@ -1393,8 +1395,7 @@ python <replaceable>path_to_etc</replace
                 </listitem>
                 <listitem>
                     <para>
-                        Remove archived releases from 
<filename>/www/www.apache.org/dist/ws/axiom</filename>
-                        on <literal>people.apache.org</literal>.
+                        Remove archived releases from <link 
xlink:href="https://dist.apache.org/repos/dist/release/ws/axiom/"/>.
                     </para>
                 </listitem>
             </itemizedlist>

Modified: webservices/axiom/trunk/distribution/pom.xml
URL: 
http://svn.apache.org/viewvc/webservices/axiom/trunk/distribution/pom.xml?rev=1681552&r1=1681551&r2=1681552&view=diff
==============================================================================
--- webservices/axiom/trunk/distribution/pom.xml (original)
+++ webservices/axiom/trunk/distribution/pom.xml Mon May 25 04:03:45 2015
@@ -88,6 +88,7 @@
     </dependencies>
 
     <build>
+        <finalName>axiom-${project.version}</finalName>
         <plugins>
             <plugin>
                 <groupId>org.codehaus.gmaven</groupId>
@@ -128,6 +129,18 @@
                     </execution>
                 </executions>
             </plugin>
+            <plugin>
+                <groupId>net.ju-n.maven.plugins</groupId>
+                <artifactId>checksum-maven-plugin</artifactId>
+                <version>1.2</version>
+                <executions>
+                    <execution>
+                        <goals>
+                            <goal>artifacts</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
             <plugin>
                 <artifactId>maven-site-plugin</artifactId>
                 <configuration>

Modified: webservices/axiom/trunk/etc/dist.py
URL: 
http://svn.apache.org/viewvc/webservices/axiom/trunk/etc/dist.py?rev=1681552&r1=1681551&r2=1681552&view=diff
==============================================================================
--- webservices/axiom/trunk/etc/dist.py (original)
+++ webservices/axiom/trunk/etc/dist.py Mon May 25 04:03:45 2015
@@ -17,16 +17,29 @@
 # under the License.
 #
 
-from sys import *
 from os import *
 from os.path import *
-from urllib import *
+from shutil import copyfile
+from shutil import rmtree
+from subprocess import call
+from xml.etree.ElementTree import parse
 
-release = argv[1]
-mkdir(release)
+axiom_dir = realpath(join(dirname(__file__), ".."))
+pom = parse(join(axiom_dir, "pom.xml"))
+release = pom.getroot().find("{http://maven.apache.org/POM/4.0.0}version";).text
+dist_root = join(axiom_dir, "target", "dist")
+dist_dir = join(dist_root, release)
 
+if exists(dist_root):
+    rmtree(dist_root)
+call(["svn", "checkout", "https://dist.apache.org/repos/dist/dev/ws/axiom/";, 
dist_root])
+mkdir(dist_dir)
 for classifier in [ "bin", "source-release" ]:
     for suffix in [ "zip", "zip.asc", "zip.md5"]:
         file = "axiom-" + release + "-" + classifier + "." + suffix
-        
urlretrieve("http://repository.apache.org/content/repositories/releases/org/apache/ws/commons/axiom/axiom/";
 + release + "/" + file, join(release, file))
-
+        copyfile(join(axiom_dir, "distribution", "target", file), 
join(dist_dir, file))
+call(["svn", "add", dist_dir])
+if release.endswith("-SNAPSHOT"):
+    print "Skipping commit because version is a snapshot."
+else:
+    call(["svn", "commit", dist_dir])


Reply via email to