Revision: 14829
http://gate.svn.sourceforge.net/gate/?rev=14829&view=rev
Author: ian_roberts
Date: 2011-12-21 15:23:00 +0000 (Wed, 21 Dec 2011)
Log Message:
-----------
Ant targets to push release versions of gate, gate-compiler-jdt and gate-asm to
Sonatype (and thence to Maven Central).
Modified Paths:
--------------
gate/trunk/build/deploy/maven/build.xml
gate/trunk/build/deploy/maven/gate-compiler-jdt-readme.txt
gate/trunk/build/deploy/maven/gate-compiler-jdt.pom.xml
gate/trunk/build/deploy/maven/sign-and-deploy.pom.xml
Property Changed:
----------------
gate/trunk/build/deploy/maven/
Property changes on: gate/trunk/build/deploy/maven
___________________________________________________________________
Modified: svn:ignore
- build
+ build
stage
Modified: gate/trunk/build/deploy/maven/build.xml
===================================================================
--- gate/trunk/build/deploy/maven/build.xml 2011-12-21 13:53:30 UTC (rev
14828)
+++ gate/trunk/build/deploy/maven/build.xml 2011-12-21 15:23:00 UTC (rev
14829)
@@ -49,4 +49,107 @@
<pom refid="gate-core.pom"/>
</artifact:deploy>
</target>
+
+ <!--
+ Additional targets to publish new releases to sonatype staging
+
+ For this to work you need an account on sonatype OSS, associated with the
+ uk.ac.gate groupId via a ticket on their JIRA, and a suitable GPG key in
+ the public GPG key servers.
+
+ You must create a file ~/.m2/settings.xml similar to the following (with
+ the correct GPG key settings and sonatype account inserted):
+
+ <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
+ http://maven.apache.org/xsd/settings-1.0.0.xsd">
+
+ <profiles>
+ <profile>
+ <id>gate-release</id>
+ <properties>
+ <gate.gpg.keyname>my-gpg-key-identifier</gate.gpg.keyname>
+ <gate.gpg.passphrase>my-gpg-key-passphrase</gate.gpg.passphrase>
+ </properties>
+ </profile>
+ </profiles>
+
+ <servers>
+ <server>
+ <id>gate-oss</id>
+ <username>sonatype-username</username>
+ <password>sonatype-password</password>
+ </server>
+ </servers>
+ </settings>
+
+ With this in place, you can use the publish.gate, publish.gate-compiler-jdt
+ and publish.gate-asm targets to push releases of ${top}/bin/gate.jar,
+ ${top}/lib/gate-compiler-jdt.jar and ${top}/lib/gate-asm.jar respectively
+ to the Sonatype staging repository. For JDT and ASM, you should manually
+ update the relevant .pom.xml file first with the correct version number.
+ -->
+
+ <property name="staging.dir" location="stage" />
+
+ <target name="stage.init">
+ <delete dir="${staging.dir}" />
+ <mkdir dir="${staging.dir}" />
+ </target>
+
+ <!-- stage a gate-core release. The gate.version Ant property is assumed
+ to contain the version number to be published, and should *not* end in
+ -SNAPSHOT -->
+ <target name="stage.gate" depends="stage.init">
+ <property name="basename.to.stage" location="${staging.dir}/gate-core"
/>
+ <copy tofile="${basename.to.stage}.pom.xml"
+ file="gate-core-SNAPSHOT.pom.template">
+ <filterset>
+ <filter token="gate.version" value="${gate.version}" />
+ </filterset>
+ </copy>
+ <copy tofile="${basename.to.stage}.jar" file="${top}/bin/gate.jar" />
+ <jar destfile="${basename.to.stage}-javadoc.jar"
basedir="${top.dir}/doc/javadoc"/>
+ <jar destfile="${basename.to.stage}-sources.jar"
basedir="${top.dir}/src"/>
+ </target>
+
+ <target name="stage.gate-compiler-jdt" depends="stage.init">
+ <property name="basename.to.stage"
location="${staging.dir}/gate-compiler-jdt" />
+ <copy tofile="${basename.to.stage}.pom.xml"
+ file="gate-compiler-jdt.pom.xml" />
+ <copy tofile="${basename.to.stage}.jar"
+ file="${top}/lib/gate-compiler-jdt.jar" />
+ <jar destfile="${basename.to.stage}-javadoc.jar" basedir="."
includes="gate-compiler-jdt-readme.txt"/>
+ <jar destfile="${basename.to.stage}-sources.jar" basedir="."
includes="gate-compiler-jdt-readme.txt"/>
+ </target>
+
+ <target name="stage.gate-asm" depends="stage.init">
+ <property name="basename.to.stage" location="${staging.dir}/gate-asm"
/>
+ <copy tofile="${basename.to.stage}.pom.xml"
+ file="gate-asm.pom.xml" />
+ <copy tofile="${basename.to.stage}.jar"
+ file="${top}/lib/gate-asm.jar" />
+ <jar destfile="${basename.to.stage}-javadoc.jar" basedir="."
includes="gate-asm-readme.txt"/>
+ <jar destfile="${basename.to.stage}-sources.jar" basedir="."
includes="gate-asm-readme.txt"/>
+ </target>
+
+ <!-- Generic target to publish a release of ${basename.to.stage} -->
+ <target name="publish.release">
+ <artifact:mvn pom="sign-and-deploy.pom.xml">
+ <arg value="-Pgate-release,publish-generic"/>
+ <arg value="-Dfile=${basename.to.stage}" />
+ </artifact:mvn>
+ </target>
+
+ <!-- publish a GATE release -->
+ <target name="publish.gate" depends="stage.gate, publish.release" />
+
+ <!-- publish a new version of gate-compiler-jdt -->
+ <target name="publish.gate-compiler-jdt"
+ depends="stage.gate-compiler-jdt, publish.release" />
+
+ <!-- publish a new version of gate-asm -->
+ <target name="publish.gate-asm"
+ depends="stage.gate-asm, publish.release" />
</project>
Modified: gate/trunk/build/deploy/maven/gate-compiler-jdt-readme.txt
===================================================================
--- gate/trunk/build/deploy/maven/gate-compiler-jdt-readme.txt 2011-12-21
13:53:30 UTC (rev 14828)
+++ gate/trunk/build/deploy/maven/gate-compiler-jdt-readme.txt 2011-12-21
15:23:00 UTC (rev 14829)
@@ -1,5 +1,5 @@
-gate-compiler-jdt.jar contains a copy of the Eclipse JDT compiler (originally
-obtained as jasper-compiler-jdt.jar from Apache Tomcat), moved into an
+gate-compiler-jdt.jar contains a copy of the Eclipse JDT compiler
+(org.eclipse.jdt.core.compiler:ecj:3.7.1 in Maven central), moved into an
alternative package using Jar Jar Links (http://code.google.com/p/jarjar/).
The following is the Eclipse Public License, under which the original JDT
compiler is distributed.
Modified: gate/trunk/build/deploy/maven/gate-compiler-jdt.pom.xml
===================================================================
--- gate/trunk/build/deploy/maven/gate-compiler-jdt.pom.xml 2011-12-21
13:53:30 UTC (rev 14828)
+++ gate/trunk/build/deploy/maven/gate-compiler-jdt.pom.xml 2011-12-21
15:23:00 UTC (rev 14829)
@@ -3,9 +3,9 @@
<groupId>uk.ac.gate</groupId>
<artifactId>gate-compiler-jdt</artifactId>
<packaging>jar</packaging>
- <name>Repackaged version of the Eclipse/Tomcat JDT compiler for GATE</name>
- <version>1</version>
- <description>Repackaged version of the Eclipse/Tomcat JDT compiler for
GATE</description>
+ <name>Repackaged version of the Eclipse JDT compiler for GATE</name>
+ <version>3.7.1</version>
+ <description>Repackaged version of the Eclipse JDT compiler for
GATE</description>
<url>http://gate.ac.uk</url>
<scm>
<url>http://gate.svn.sourceforge.net/viewvc/gate/gate</url>
@@ -25,4 +25,4 @@
<distribution>repo</distribution>
</license>
</licenses>
-</project>
\ No newline at end of file
+</project>
Modified: gate/trunk/build/deploy/maven/sign-and-deploy.pom.xml
===================================================================
--- gate/trunk/build/deploy/maven/sign-and-deploy.pom.xml 2011-12-21
13:53:30 UTC (rev 14828)
+++ gate/trunk/build/deploy/maven/sign-and-deploy.pom.xml 2011-12-21
15:23:00 UTC (rev 14829)
@@ -8,142 +8,9 @@
<url>http://gate.ac.uk</url>
<properties>
<oss.release.repo>https://oss.sonatype.org/service/local/staging/deploy/maven2</oss.release.repo>
-
<oss.snapshot.repo>https://oss.sonatype.org/content/repositories/snapshots</oss.snapshot.repo>
</properties>
<profiles>
<profile>
- <id>publish-gate-asm</id>
- <build>
- <defaultGoal>verify</defaultGoal>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-gpg-plugin</artifactId>
- <version>1.1</version>
- <executions>
- <execution>
- <id>gate-asm</id>
- <phase>verify</phase>
- <goals>
- <goal>sign-and-deploy-file</goal>
- </goals>
- <configuration>
- <file>../../../lib/gate-asm.jar</file>
- <repositoryId>gate-oss</repositoryId>
- <url>${oss.release.repo}</url>
- <pomFile>gate-asm.pom.xml</pomFile>
- <keyname>${gate.gpg.keyname}</keyname>
- <passphrase>${gate.gpg.passphrase}</passphrase>
- </configuration>
- </execution>
- <execution>
- <id>gate-asm-javadoc</id>
- <phase>verify</phase>
- <goals>
- <goal>sign-and-deploy-file</goal>
- </goals>
- <configuration>
- <file>gate-asm-javadoc.jar</file>
- <classifier>javadoc</classifier>
- <repositoryId>gate-oss</repositoryId>
- <url>${oss.release.repo}</url>
- <pomFile>gate-asm.pom.xml</pomFile>
- <keyname>${gate.gpg.keyname}</keyname>
- <passphrase>${gate.gpg.passphrase}</passphrase>
- </configuration>
- </execution>
- <execution>
- <id>gate-asm-sources</id>
- <phase>verify</phase>
- <goals>
- <goal>sign-and-deploy-file</goal>
- </goals>
- <configuration>
- <file>gate-asm-sources.jar</file>
- <classifier>sources</classifier>
- <repositoryId>gate-oss</repositoryId>
- <url>${oss.release.repo}</url>
- <pomFile>gate-asm.pom.xml</pomFile>
- <keyname>${gate.gpg.keyname}</keyname>
- <passphrase>${gate.gpg.passphrase}</passphrase>
- </configuration>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
- </profile>
- <profile>
- <id>publish-gate-compiler-jdt</id>
- <build>
- <defaultGoal>verify</defaultGoal>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-gpg-plugin</artifactId>
- <version>1.1</version>
- <executions>
- <execution>
- <id>gate-asm</id>
- <phase>verify</phase>
- <goals>
- <goal>sign-and-deploy-file</goal>
- </goals>
- <configuration>
- <file>../../../lib/gate-compiler-jdt.jar</file>
- <repositoryId>gate-oss</repositoryId>
- <url>${oss.release.repo}</url>
- <pomFile>gate-compiler-jdt.pom.xml</pomFile>
- <keyname>${gate.gpg.keyname}</keyname>
- <passphrase>${gate.gpg.passphrase}</passphrase>
- </configuration>
- </execution>
- <execution>
- <id>gate-compiler-jdt-javadoc</id>
- <phase>verify</phase>
- <goals>
- <goal>sign-and-deploy-file</goal>
- </goals>
- <configuration>
- <file>gate-compiler-jdt-javadoc.jar</file>
- <classifier>javadoc</classifier>
- <repositoryId>gate-oss</repositoryId>
- <url>${oss.release.repo}</url>
- <pomFile>gate-compiler-jdt.pom.xml</pomFile>
- <keyname>${gate.gpg.keyname}</keyname>
- <passphrase>${gate.gpg.passphrase}</passphrase>
- </configuration>
- </execution>
- <execution>
- <id>gate-compiler-jdt-sources</id>
- <phase>verify</phase>
- <goals>
- <goal>sign-and-deploy-file</goal>
- </goals>
- <configuration>
- <file>gate-compiler-jdt-sources.jar</file>
- <classifier>sources</classifier>
- <repositoryId>gate-oss</repositoryId>
- <url>${oss.release.repo}</url>
- <pomFile>gate-compiler-jdt.pom.xml</pomFile>
- <keyname>${gate.gpg.keyname}</keyname>
- <passphrase>${gate.gpg.passphrase}</passphrase>
- </configuration>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
- </profile>
- <profile>
- <!-- use this with publish-generic -->
- <id>gate-6.0</id>
- <properties>
- <pom>gate-core.6.0.pom.xml</pom>
- <file>/users/benson/x/gate6/stage/gate-core</file>
- </properties>
- </profile>
- <profile>
<id>publish-generic</id>
<build>
<defaultGoal>verify</defaultGoal>
@@ -163,7 +30,7 @@
<file>${file}.jar</file>
<repositoryId>gate-oss</repositoryId>
<url>${oss.release.repo}</url>
- <pomFile>${pom}</pomFile>
+ <pomFile>${file}.pom.xml</pomFile>
<keyname>${gate.gpg.keyname}</keyname>
<passphrase>${gate.gpg.passphrase}</passphrase>
</configuration>
@@ -179,7 +46,7 @@
<classifier>javadoc</classifier>
<repositoryId>gate-oss</repositoryId>
<url>${oss.release.repo}</url>
- <pomFile>${pom}</pomFile>
+ <pomFile>${file}.pom.xml</pomFile>
<keyname>${gate.gpg.keyname}</keyname>
<passphrase>${gate.gpg.passphrase}</passphrase>
</configuration>
@@ -195,7 +62,7 @@
<classifier>sources</classifier>
<repositoryId>gate-oss</repositoryId>
<url>${oss.release.repo}</url>
- <pomFile>${pom}</pomFile>
+ <pomFile>${file}.pom.xml</pomFile>
<keyname>${gate.gpg.keyname}</keyname>
<passphrase>${gate.gpg.passphrase}</passphrase>
</configuration>
@@ -206,4 +73,4 @@
</build>
</profile>
</profiles>
-</project>
\ No newline at end of file
+</project>
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
------------------------------------------------------------------------------
Write once. Port to many.
Get the SDK and tools to simplify cross-platform app development. Create
new or port existing apps to sell to consumers worldwide. Explore the
Intel AppUpSM program developer opportunity. appdeveloper.intel.com/join
http://p.sf.net/sfu/intel-appdev
_______________________________________________
GATE-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/gate-cvs