Merge lp:~pbeaman/akiban-persistit/maven-central-release-script into lp:akiban-persistit

Proposed by Peter Beaman
Status: Merged
Approved by: Peter Beaman
Approved revision: 407
Merged at revision: 405
Proposed branch: lp:~pbeaman/akiban-persistit/maven-central-release-script
Merge into: lp:akiban-persistit
Diff against target: 55 lines (+51/-0)
1 file modified
src/etc/prepare-maven-central.sh (+51/-0)
To merge this branch: bzr merge lp:~pbeaman/akiban-persistit/maven-central-release-script
Reviewer Review Type Date Requested Status
Akiban Build User Needs Fixing
Nathan Williams Approve
Review via email: mp+137656@code.launchpad.net

Description of the change

Add a script to assit with publishing releases to Maven Central.

The script requires a signing key and access to the Akiban Persistit account. We could automate the process further by hooking up the Nexus Maven Plugin, but by assembling a bundle jar automatically and carefully documenting the steps needed to publish, most of the effort of re-reading the documentation for every release has been removed.

When run, the script produces a file target/bundle.jar containing signed artifacts. Then it emits instructions on how to upload and deploy the release on Maven Central.

LBJ: NO_BUILD

To post a comment you must log in.
Revision history for this message
Nathan Williams (nwilliams) wrote :

The first line is missing ! and it should be /bin/bash since you're using pushd/popd.

Would be nice to automate it the rest of the way with the nexus plugin, but this is better than nothing.

review: Needs Fixing
Revision history for this message
Peter Beaman (pbeaman) wrote :

Embarrassing. I tested it by calling "sh prepare-maven-central.sh" and never as an executable. My bad. Thanks.

Revision history for this message
Nathan Williams (nwilliams) wrote :

Not a problem. Looks good now!

review: Approve
Revision history for this message
Akiban Build User (build-akiban) wrote :

There were 2 failures during build/test:

* job persistit-build failed at build number 503: http://172.16.20.104:8080/job/persistit-build/503/

* view must-pass failed: persistit-build is red

review: Needs Fixing
407. By Peter Beaman

Add missing license header

Revision history for this message
Peter Beaman (pbeaman) wrote :

Grrr. Add the missing license header.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== added file 'src/etc/prepare-maven-central.sh'
2--- src/etc/prepare-maven-central.sh 1970-01-01 00:00:00 +0000
3+++ src/etc/prepare-maven-central.sh 2012-12-03 21:42:20 +0000
4@@ -0,0 +1,51 @@
5+#!/bin/bash
6+#
7+# Copyright © 2012 Akiban Technologies, Inc. All rights reserved.
8+#
9+# This program and the accompanying materials are made available
10+# under the terms of the Eclipse Public License v1.0 which
11+# accompanies this distribution, and is available at
12+# http://www.eclipse.org/legal/epl-v10.html
13+#
14+# This program may also be available under different license terms.
15+# For more information, see www.akiban.com or contact licensing@akiban.com.
16+#
17+# Contributors:
18+# Akiban Technologies, Inc.
19+#
20+#
21+# See https://docs.sonatype.org/display/Repository/Sonatype+OSS+Maven+Repository+Usage+Guide
22+#
23+# Run this script from the base directory.
24+#
25+# Package and sign artifacts. You will need a signing key in your gpg keyring. Follow
26+# these instructions to set up gpg and generate a key-pair. You only need to do this once:
27+#
28+# https://docs.sonatype.org/display/Repository/How+To+Generate+PGP+Signatures+With+Maven
29+#
30+# The gpg:sign will ask you to enter a passphrase to access your key chain.
31+#
32+mvn clean javadoc:jar package gpg:sign -Dmaven.test.skip=true
33+#
34+# Create a bundle jar.
35+#
36+pushd target
37+jar cvf bundle.jar akiban-persistit*
38+popd
39+#
40+# Note: the Nexus Maven Plugin can do this automatically, but for now we are still manual.
41+#
42+echo =======================================================================================================
43+echo 1. Log in to your account on https://oss.sonatype.org/index.html#stagingRepositories
44+echo 2. Click \"Staging Upload\"
45+echo 3. Select Upload Mode \"Artifact Bundle\"
46+echo 4. Click \"Select Bundle to Upload\"
47+echo 5. Navigate to the file target/bundle.jar just created
48+echo 6. Click \"Upload Bundle\"
49+echo 7. Follow instructions in
50+echo
51+echo https://docs.sonatype.org/display/Repository/Sonatype+OSS+Maven+Repository+Usage+Guide#SonatypeOSSMavenRepositoryUsageGuide-8a.ReleaseIt
52+echo
53+echo to close and release the staging repository.
54+echo =======================================================================================================
55+

Subscribers

People subscribed via source and target branches