blob: 02e26c34331256c51a556ff9e3e7d1a4c677871c [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<!--
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.
-->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.apache.uima</groupId>
<artifactId>parent-pom</artifactId>
<version>14-SNAPSHOT</version>
<relativePath />
</parent>
<artifactId>ruta-eclipse-update-site</artifactId>
<packaging>pom</packaging>
<version>2.9.0-SNAPSHOT</version>
<name>Apache UIMA Ruta Eclipse: ${project.artifactId}</name>
<description>The UIMA Ruta Eclipse update site</description>
<url>${uimaWebsiteUrl}</url>
<scm>
<connection>scm:git:git://github.com/apache/uima-ruta</connection>
<developerConnection>scm:git:git@github.com:apache/uima-ruta.git</developerConnection>
<url>https://github.com/apache/uima-ruta</url>
<tag>HEAD</tag>
</scm>
<properties>
<uimaScmProject>${project.artifactId}</uimaScmProject>
<eclipseUpdateSiteComponent>ruta</eclipseUpdateSiteComponent>
<eclipseUpdateSubSite>${project.build.directory}/eclipse-update-site/${eclipseUpdateSiteComponent}</eclipseUpdateSubSite>
<dropPrevVersions>false</dropPrevVersions>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>copy-new-plugins</id>
<goals><goal>copy</goal></goals>
<configuration>
<!-- ===================================================================
the PLUGINS
======================================================================= -->
<artifactItems>
<artifactItem>
<groupId>org.apache.uima</groupId>
<artifactId>ruta-ep-addons</artifactId>
<version>${project.version}</version>
<destFileName>org.apache.uima.ruta.addons_${parsedVersion.osgiVersion}.jar</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.apache.uima</groupId>
<artifactId>ruta-ep-caseditor</artifactId>
<version>${project.version}</version>
<destFileName>org.apache.uima.ruta.caseditor_${parsedVersion.osgiVersion}.jar</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.apache.uima</groupId>
<artifactId>ruta-ep-engine</artifactId>
<version>${project.version}</version>
<destFileName>org.apache.uima.ruta.engine_${parsedVersion.osgiVersion}.jar</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.apache.uima</groupId>
<artifactId>ruta-ep-ide</artifactId>
<version>${project.version}</version>
<destFileName>org.apache.uima.ruta.ide_${parsedVersion.osgiVersion}.jar</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.apache.uima</groupId>
<artifactId>ruta-ep-ide-ui</artifactId>
<version>${project.version}</version>
<destFileName>org.apache.uima.ruta.ide.ui_${parsedVersion.osgiVersion}.jar</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.apache.uima</groupId>
<artifactId>ruta-ep-textruler</artifactId>
<version>${project.version}</version>
<destFileName>org.apache.uima.ruta.textruler_${parsedVersion.osgiVersion}.jar</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.apache.uima</groupId>
<artifactId>ruta-ep-core-ext</artifactId>
<version>${project.version}</version>
<destFileName>org.apache.uima.ruta.core.ext_${parsedVersion.osgiVersion}.jar</destFileName>
</artifactItem>
</artifactItems>
<outputDirectory>${eusWork}/plugins</outputDirectory>
</configuration>
</execution>
<execution>
<id>copy-features</id>
<goals>
<goal>copy</goal>
</goals>
<configuration>
<!-- ===================================================================
the FEATURES
======================================================================= -->
<artifactItems>
<artifactItem>
<groupId>org.apache.uima</groupId>
<artifactId>ruta-eclipse-feature</artifactId>
<version>${project.version}</version>
<destFileName>org.apache.uima.ruta.feature_${parsedVersion.osgiVersion}.jar</destFileName>
</artifactItem>
</artifactItems>
<outputDirectory>${project.build.directory}/eus-work/features</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<!-- ==================================================== -->
<!-- -->
<!-- P O S T JAR S I G N I N G by Digicert -->
<!-- -->
<!-- is not here, it was -->
<!-- moved to uima-wide parent pom 10/2018 -->
<!-- ==================================================== -->
<execution>
<id>BuildUpdateSite-pack-svnget-buildMetadata-commit-to-dev</id>
<phase>package</phase>
<goals>
<goal>run</goal>
</goals>
<configuration combine.self="override">
<target>
<taskdef classname="net.sf.antcontrib.logic.IfTask" name="if" />
<condition property="eclipse.home" value="${uima-maven-build-eclipse-home}">
<not>
<equals arg1="${uima-maven-build-eclipse-home}" arg2="$${uima-maven-build-eclipse-home}" />
</not>
</condition>
<property environment="envVar" />
<condition property="eclipse.home" value="${envVar.ECLIPSE_HOME}">
<isset property="envVar.ECLIPSE_HOME" />
</condition>
<fail unless="eclipse.home" message="********** Please set up and use an ant property eclipse.home set to an Eclipse installation at level 3.3 or later, e.g. c:/eclipses/3.3/eclipse" />
<fail unless="uima-eclipse-jar-processor" message="********** Please add to your settings.xml file the property uima-eclipse-jar-processor, point to this within an Eclipse installation at level 4.2 or later, e.g. \$\{uima-maven-build-eclipse-home\}/plugins/org.eclipse.equinox.p2.jarprocessor_1.0.200.v20110808-1657.jar" />
<!-- skip this when dropping previous versions -->
<if>
<equals arg1="${dropPrevVersions}" arg2="false" />
<then>
<if>
<equals arg1="${isApacheRelease}" arg2="true" />
<then>
<echo>checking out eclipse update subsite ${eclipseUpdateSiteComponent} from dist ...release...</echo>
<delete dir="${eclipseUpdateSubSite}" quiet="true" />
<exec executable="svn" failonerror="true">
<arg value="checkout" />
<arg value="${distsvnroot}repos/dist/release/uima/eclipse-update-site/${eclipseUpdateSiteComponent}" />
<arg value="${eclipseUpdateSubSite}" />
</exec>
<!-- abandon safety for now
<echo>switching this checkout to ...dev... for safety</echo>
<exec executable="svn">
<arg value="switch" />
<arg value="- -force" /> remove space between 2 dashes if uncommented
<arg value="- -accept" /> remove space between 2 dashes if uncommented
<arg value="mine-full" />
<arg value="${distsvnroot}repos/dist/dev/uima/eclipse-update-site/${eclipseUpdateSiteComponent}" />
<arg value="${eclipseUpdateSubSite}" />
</exec>
-->
</then>
<else>
<echo>skipping checkout of current svn dist release (because not apache-release)</echo>
<!-- https://issues.apache.org/jira/browse/UIMA-3501 -->
<delete dir="${eclipseUpdateSubSite}" quiet="true" />
</else>
</if>
</then>
</if>
<echo>Save conditioned Jars prior to signing, in case of redo</echo>
<echo>-------------------------------------------------------</echo>
<copy todir="${project.build.directory}/saved/features" failonerror="true">
<fileset dir="${eusWork}/features" includes="*.jar" />
</copy>
<copy todir="${project.build.directory}/saved/plugins" failonerror="true">
<fileset dir="${eusWork}/plugins" includes="*.jar" />
</copy>
<echo>Generate the p2 metadata and publish new artifacts</echo>
<java fork="true" maxmemory="256m" jar="${eclipse-equinox-launcher}" failonerror="true">
<arg line="-application org.eclipse.equinox.p2.publisher.FeaturesAndBundlesPublisher" />
<arg line="-metadataRepository file:///${eclipseUpdateSubSite}" />
<arg line="-artifactRepository file:///${eclipseUpdateSubSite}" />
<arg line="-source ${eusWork}" />
<arg line="-configs ANY.ANY.ANY" />
<arg line="-publishArtifacts" />
<arg line="-compress" />
<arg line="-append" />
</java>
<echo>Augment p2 metadata with category information</echo>
<java fork="true" maxmemory="256m" jar="${eclipse-equinox-launcher}" failonerror="true">
<arg line="-application org.eclipse.equinox.p2.publisher.CategoryPublisher" />
<arg line="-metadataRepository file:///${eclipseUpdateSubSite}" />
<arg line="-categoryDefinition file:///${basedir}/category.xml" />
<arg line="-categoryQualifier apache-uima" />
<arg line="-compress" />
</java>
<if>
<equals arg2="true" arg1="${isApacheRelease}" />
<then>
<echo message="Generating checksums for new features and plugins" />
<checksum algorithm="SHA-512" fileext=".sha512" format="MD5SUM" forceoverwrite="yes">
<fileset dir="${eusWork}">
<include name="**/*.gz" />
<include name="**/*.jar" />
</fileset>
</checksum>
<echo message="Generating gpg signatures for new features and plugins" />
<apply failonerror="true" dir="${eusWork}" executable="gpg">
<arg value="--detach-sign" />
<arg value="--armor" />
<arg value="--batch" />
<fileset dir="${eusWork}">
<include name="**/*.jar" />
</fileset>
</apply>
<echo message="Copying the checksums and signatures to the update subsite" />
<copy todir="${eclipseUpdateSubSite}" failonerror="true">
<fileset dir="${eusWork}">
<include name="**/*.asc" />
<include name="**/*.sha512" />
</fileset>
</copy>
<echo message="Clearing previous checksums and signatures for update artifacts.jar and content.jar" />
<delete dir="${eclipseUpdateSubSite}">
<include name="*.sha512" />
<include name="*.asc" />
</delete>
<echo message="Generating checksums for updated artifacts.jar and content.jar" />
<checksum algorithm="SHA-512" fileext=".sha512" format="MD5SUM" forceoverwrite="yes">
<fileset dir="${eclipseUpdateSubSite}">
<include name="*.jar" />
</fileset>
</checksum>
<echo message="Generating gpg signatures for artifacts.jar and content.jar" />
<apply failonerror="true" dir="${eclipseUpdateSubSite}" executable="gpg">
<arg value="--detach-sign" />
<arg value="--armor" />
<arg value="--batch" />
<fileset dir="${eclipseUpdateSubSite}">
<include name="*.jar" />
</fileset>
</apply>
</then>
</if>
</target>
</configuration>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>ant-contrib</groupId>
<artifactId>ant-contrib</artifactId>
<version>1.0b3</version>
<scope>runtime</scope>
<exclusions>
<exclusion>
<artifactId>ant</artifactId>
<groupId>ant</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.ant</groupId>
<artifactId>ant-apache-regexp</artifactId>
<version>1.9.2</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>jakarta-regexp</groupId>
<artifactId>jakarta-regexp</artifactId>
<version>1.4</version>
<scope>compile</scope>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
</project>