diff --git a/build.xml b/build.xml
index f62942ccde..fc365039b1 100644
--- a/build.xml
+++ b/build.xml
@@ -844,6 +844,13 @@ under the License.
+
+
+
+
+
+
+
@@ -1011,17 +1018,15 @@ under the License.
-
+
+
+
+
Creating Maven POMs
- Generating MD5 Checksums
-
-
-
-
-
Distribution located in ${dist.dir}
+ Use ${dist.dir}/multisign.sh to create md5 checksums and GPG signatures
$i.md5
+done
diff --git a/maven/mvn-deploy.sh b/maven/mvn-deploy.sh
index ae59e4bff7..0670a4c1b9 100755
--- a/maven/mvn-deploy.sh
+++ b/maven/mvn-deploy.sh
@@ -43,39 +43,21 @@
M2_REPOSITORY=scp://people.apache.org/www/people.apache.org/repo/m2-ibiblio-rsync-repository
M2_SCP=people.apache.org:/www/people.apache.org/repo/m2-ibiblio-rsync-repository
-mvn gpg:sign-and-deploy-file -DrepositoryId=apache-releases -P apache-releases \
- -Durl=$M2_REPOSITORY \
- -Dfile=poi-@VERSION@-@DSTAMP@.jar -DpomFile=poi-@VERSION@.pom
-scp poi-@VERSION@.pom.asc $M2_SCP/org/apache/poi/poi/@VERSION@/
-scp poi-@VERSION@-sources.* $M2_SCP/org/apache/poi/poi/@VERSION@/
-
-mvn gpg:sign-and-deploy-file -DrepositoryId=apache-releases -P apache-releases \
- -Durl=$M2_REPOSITORY \
- -Dfile=poi-scratchpad-@VERSION@-@DSTAMP@.jar -DpomFile=poi-scratchpad-@VERSION@.pom
-scp poi-scratchpad-@VERSION@.pom.asc $M2_SCP/org/apache/poi/poi-scratchpad/@VERSION@/
-scp poi-scratchpad-@VERSION@-sources.* $M2_SCP/org/apache/poi/poi-scratchpad/@VERSION@/
-
-mvn gpg:sign-and-deploy-file -DrepositoryId=apache-releases -P apache-releases \
- -Durl=$M2_REPOSITORY \
- -Dfile=poi-contrib-@VERSION@-@DSTAMP@.jar -DpomFile=poi-contrib-@VERSION@.pom
-scp poi-contrib-@VERSION@.pom.asc $M2_SCP/org/apache/poi/poi-contrib/@VERSION@/
-scp poi-contrib-@VERSION@-sources.* $M2_SCP/org/apache/poi/poi-contrib/@VERSION@/
-
-mvn gpg:sign-and-deploy-file -DrepositoryId=apache-releases -P apache-releases \
- -Durl=$M2_REPOSITORY \
- -Dfile=poi-ooxml-@VERSION@-@DSTAMP@.jar -DpomFile=poi-ooxml-@VERSION@.pom
-scp poi-ooxml-@VERSION@.pom.asc $M2_SCP/org/apache/poi/poi-ooxml/@VERSION@/
-scp poi-ooxml-@VERSION@-sources.* $M2_SCP/org/apache/poi/poi-ooxml/@VERSION@/
-
-mvn gpg:sign-and-deploy-file -DrepositoryId=apache-releases -P apache-releases \
- -Durl=$M2_REPOSITORY \
- -Dfile=poi-examples-@VERSION@-@DSTAMP@.jar -DpomFile=poi-examples-@VERSION@.pom
-scp poi-examples-@VERSION@.pom.asc $M2_SCP/org/apache/poi/poi-examples/@VERSION@/
-scp poi-examples-@VERSION@-sources.* $M2_SCP/org/apache/poi/poi-examples/@VERSION@/
-
-mvn gpg:sign-and-deploy-file -DrepositoryId=apache-releases -P apache-releases \
- -Durl=$M2_REPOSITORY \
- -Dfile=poi-ooxml-schemas-@VERSION@-@DSTAMP@.jar -DpomFile=poi-ooxml-schemas-@VERSION@.pom
-scp poi-ooxml-schemas-@VERSION@.pom.asc $M2_SCP/org/apache/poi/poi-ooxml-schemas/@VERSION@/
+VERSION=@VERSION@
+DSTAMP=@DSTAMP@
+for artifactId in poi poi-scratchpad poi-contrib poi-ooxml poi-examples poi-ooxml-schemas
+do
+ mvn gpg:sign-and-deploy-file -DrepositoryId=apache-releases -P apache-releases \
+ -Durl=$M2_REPOSITORY \
+ -Dfile=$artifactId-$VERSION-$DSTAMP.jar -DpomFile=$artifactId-$VERSION.pom
+ #The maven sign-and-deploy-file command does NOT sign POM files, so we have to upload the POM's .asc manually
+ scp $artifactId-$VERSION.pom.asc $M2_SCP/org/apache/poi/$artifactId/$VERSION/
+ if [ -r $artifactId-$VERSION-sources.jar ]; then
+ mvn deploy:deploy-file -DrepositoryId=apache-releases -P apache-releases \
+ -Durl=$M2_REPOSITORY -DgeneratePom=false -Dpackaging=java-source \
+ -Dfile=$artifactId-$VERSION-sources.jar -DpomFile=$artifactId-$VERSION.pom
+ scp $artifactId-$VERSION-sources.jar.asc $M2_SCP/org/apache/poi/$artifactId/$VERSION/
+ fi
+done
diff --git a/src/documentation/release-guide.txt b/src/documentation/release-guide.txt
index 003c55c368..fa89b61d7c 100644
--- a/src/documentation/release-guide.txt
+++ b/src/documentation/release-guide.txt
@@ -59,58 +59,21 @@ $ svn merge https://svn.apache.org/repos/asf/poi/tags/$TAG \
https://svn.apache.org/repos/asf/poi/trunk
{code}
- 5. Start a new section in sites.xml and status.xml.
+ 5. Start a new section in status.xml.
6. Build as if the vote had passed. The build date must be +7 days from current.
{code}
ant build
{code}
-After build you should have the following files in the build/dist:
-
-{code}
-poi-$TAG-$DATE.jar
-poi-bin-$TAG-$DATE.tar.gz
-poi-bin-$TAG-$DATE.zip
-poi-contrib-$TAG-$DATE.jar
-poi-scratchpad-$TAG-$DATE.jar
-poi-src-$TAG-$DATE.tar.gz
-poi-src-$TAG-$DATE.zip
-{code}
where $TAG is the release tag specified in build.xml in the version.id property, $DATE is the release date (typically +7 days from the actual build date).
7. Signing the release artifacts:
{code}
cd build/dist
-for i in *.zip ; do
- gpg --armor --output $i.asc --detach-sig $i;
-done
-for i in *.gz ; do
- gpg --armor --output $i.asc --detach-sig $i;
-done
-{code}
+./multisign.sh
-Verify the signatures:
-
-{code}
-gpg --multifile --verify *.asc
-{code}
-
- 8. Create MD5 checksums for all artifacts to be published:
-
-{code}
-for i in *.zip ; do
- openssl md5 < $i > $i.md5
-done
-for i in *.gz ; do
- openssl md5 < $i > $i.md5
-done
-{code}
-
- 9. Upload to your area at people.apache.org.
-There should be two directories:
-main
-maven
+ 8. Upload to your area at people.apache.org, e.g. public_html/poi
Make sure that the all files have read permission.
@@ -139,7 +102,7 @@ cp *-src-* /www/www.apache.org/dist/poi/release/src
cp *-bin-* /www/www.apache.org/dist/poi/release/bin
{code}
-copy Maven artifacts
+deploy Maven artifacts
{code}
cd build/dist
./mvn-deploy.sh