blob: ac0080c216537ebb788bbb8acb4d7a0c0cacf037 [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
~
~ 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/xsd/maven-4.0.0.xsd">
<parent>
<groupId>org.apache</groupId>
<artifactId>apache</artifactId>
<version>16</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>org.apache.streams</groupId>
<artifactId>streams-examples</artifactId>
<version>0.2-incubating</version>
<packaging>pom</packaging>
<name>streams-examples</name>
<description>Contributed examples of use cases for Streams.</description>
<url>http://streams.incubator.apache.org/site/${project.version}/streams-examples</url>
<licenses>
<license>
<name>Apache License, Version 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
<distribution>repo</distribution>
<comments>A business-friendly OSS license</comments>
</license>
</licenses>
<scm>
<connection>scm:git:git@github.com:apache/incubator-streams-examples.git</connection>
<developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/incubator-streams-examples.git</developerConnection>
<url>scm:git:git@github.com:apache/incubator-streams-examples.git</url>
<tag>streams-examples-0.2-incubating-rc1</tag>
</scm>
<developers>
<developer>
<id>sblackmon</id>
<name>Steve Blackmon</name>
<email>sblackmon@apache.org</email>
<url>https://github.com/steveblackmon</url>
<organization>Apache Software Foundation</organization>
<organizationUrl>http://streams.incubator.apache.org</organizationUrl>
</developer>
</developers>
<issueManagement>
<system>JIRA</system>
<url>https://issues.apache.org/jira/browse/STREAMS</url>
</issueManagement>
<ciManagement>
<system>jenkins</system>
<url>http://builds.apache.org/job/Streams%20Examples/</url>
</ciManagement>
<prerequisites>
<maven>3.0.5</maven>
</prerequisites>
<mailingLists>
<mailingList>
<name>Dev Mailing List</name>
<post>dev@streams.incubator.apache.org</post>
<subscribe>dev-subscribe@streams.incubator.apache.org</subscribe>
<unsubscribe>dev-unsubscribe@streams.incubator.apache.org</unsubscribe>
</mailingList>
<mailingList>
<name>User Mailing List</name>
<post>user@streams.incubator.apache.org</post>
<subscribe>user-subscribe@streams.incubator.apache.org</subscribe>
<unsubscribe>user-unsubscribe@streams.incubator.apache.org</unsubscribe>
</mailingList>
</mailingLists>
<distributionManagement>
<repository>
<id>streams.releases</id>
<name>Streams Releases</name>
<url>${release.repository.url}</url>
</repository>
<!-- Snapshots (not-releases) are published to this repository -->
<snapshotRepository>
<id>streams.snapshots</id>
<name>Streams Snapshots</name>
<url>${snapshot.repository.url}</url>
</snapshotRepository>
<site>
<id>streams.site.examples</id>
<url>scm:svn:https://svn.apache.org/repos/infra/websites/production/streams/content/site/${project.version}/streams-examples/</url>
</site>
</distributionManagement>
<repositories>
<repository>
<id>central-repo</id>
<name>Maven Repository</name>
<!-- HTTPS is unavailable for Maven Central -->
<url>http://repo.maven.apache.org/maven2</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
<repository>
<id>apache-releases</id>
<name>Apache Repository</name>
<url>https://repository.apache.org/content/repositories/releases</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
<repository>
<id>apache-snapshots</id>
<name>Apache Repository</name>
<url>https://repository.apache.org/content/repositories/snapshots</url>
<releases>
<enabled>false</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
<repository>
<id>clojars-repo</id>
<name>Clojars Repository</name>
<url>http://clojars.org/repo</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
<repository>
<id>cloudera-repo</id>
<name>Cloudera Repository</name>
<url>https://repository.cloudera.com/artifactory/cloudera-repos</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
<properties>
<!-- Build Properties -->
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.7</java.version>
<!-- Release Properties -->
<snapshot.repository.url>
https://repository.apache.org/content/repositories/snapshots
</snapshot.repository.url>
<release.repository.url>
https://repository.apache.org/service/local/staging/deploy/maven2
</release.repository.url>
<streams.version>0.2-incubating</streams.version>
<!-- Plugin and Plugin Dependency Versions -->
<build-helper.plugin.version>1.8</build-helper.plugin.version>
<compiler.plugin.version>3.0</compiler.plugin.version>
<clean.plugin.version>2.6</clean.plugin.version>
<docker.plugin.version>0.11.2</docker.plugin.version>
<enforcer.plugin.version>1.3.1</enforcer.plugin.version>
<failsafe.plugin.version>2.17</failsafe.plugin.version>
<jar.plugin.version>2.6</jar.plugin.version>
<javadoc.plugin.version>2.10.2</javadoc.plugin.version>
<resources.plugin.version>2.7</resources.plugin.version>
<shade.plugin.version>2.3</shade.plugin.version>
<site.plugin.version>3.4</site.plugin.version>
<surefire.plugin.version>2.17</surefire.plugin.version>
<war.plugin.version>2.5</war.plugin.version>
<!-- Library Dependency Versions -->
<jsonschema2pojo.version>0.4.6</jsonschema2pojo.version>
<junit.version>4.11</junit.version>
<slf4j.version>1.7.6</slf4j.version>
<log4j.version>1.2.16</log4j.version>
<logback.version>1.1.1</logback.version>
<typesafe.config.version>1.2.0</typesafe.config.version>
<!-- Release Properties -->
<snapshot.repository.url>
https://repository.apache.org/content/repositories/snapshots
</snapshot.repository.url>
<release.repository.url>
https://repository.apache.org/service/local/staging/deploy/maven2
</release.repository.url>
</properties>
<modules>
<module>local</module>
</modules>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.typesafe</groupId>
<artifactId>config</artifactId>
<version>${typesafe.config.version}</version>
</dependency>
<dependency>
<groupId>org.apache.streams</groupId>
<artifactId>streams-config</artifactId>
<version>${streams.version}</version>
</dependency>
<dependency>
<groupId>org.apache.streams</groupId>
<artifactId>streams-core</artifactId>
<version>${streams.version}</version>
</dependency>
<dependency>
<groupId>org.apache.streams</groupId>
<artifactId>streams-filters</artifactId>
<version>${streams.version}</version>
</dependency>
<dependency>
<groupId>org.apache.streams</groupId>
<artifactId>streams-pojo</artifactId>
<version>${streams.version}</version>
</dependency>
<dependency>
<groupId>org.apache.streams</groupId>
<artifactId>streams-pojo</artifactId>
<version>${streams.version}</version>
<type>test-jar</type>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.streams</groupId>
<artifactId>streams-util</artifactId>
<version>${streams.version}</version>
</dependency>
<dependency>
<groupId>org.apache.streams</groupId>
<artifactId>streams-util</artifactId>
<version>${streams.version}</version>
<type>test-jar</type>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.streams</groupId>
<artifactId>streams-pojo-extensions</artifactId>
<version>${streams.version}</version>
</dependency>
<dependency>
<groupId>org.apache.streams</groupId>
<artifactId>streams-runtime-local</artifactId>
<version>${streams.version}</version>
</dependency>
<dependency>
<groupId>org.apache.streams</groupId>
<artifactId>streams-provider-twitter</artifactId>
<version>${streams.version}</version>
</dependency>
<dependency>
<groupId>org.apache.streams</groupId>
<artifactId>streams-persist-elasticsearch</artifactId>
<version>${streams.version}</version>
</dependency>
<dependency>
<groupId>org.apache.streams</groupId>
<artifactId>streams-persist-graph</artifactId>
<version>${streams.version}</version>
</dependency>
<dependency>
<groupId>org.apache.streams</groupId>
<artifactId>streams-persist-hdfs</artifactId>
<version>${streams.version}</version>
</dependency>
<dependency>
<groupId>org.apache.streams</groupId>
<artifactId>streams-persist-mongo</artifactId>
<version>${streams.version}</version>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>${compiler.plugin.version}</version>
<configuration>
<source>${java.version}</source>
<target>${java.version}</target>
<encoding>${project.build.sourceEncoding}</encoding>
</configuration>
</plugin>
<plugin>
<artifactId>maven-resources-plugin</artifactId>
</plugin>
<plugin>
<artifactId>maven-site-plugin</artifactId>
</plugin>
</plugins>
<pluginManagement>
<plugins>
<plugin>
<artifactId>maven-clean-plugin</artifactId>
<version>${clean.plugin.version}</version>
<configuration>
<filesets>
<fileset>
<directory>src/site/resources</directory>
<followSymlinks>false</followSymlinks>
</fileset>
<!-- this is here because elasticsearch integration tests don't have a setting to change directory where temp index files get created -->
<fileset>
<directory>data</directory>
<followSymlinks>false</followSymlinks>
</fileset>
<fileset>
<directory>dist</directory>
</fileset>
</filesets>
</configuration>
</plugin>
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>2.7</version>
<executions>
<execution>
<id>copy-resources</id>
<!-- validate is first to run-->
<!-- copy these files to src/site/resources -->
<phase>validate</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<outputDirectory>${basedir}/src/site/resources</outputDirectory>
<resources>
<resource>
<directory>src/main/jsonschema</directory>
</resource>
<resource>
<directory>src/main/xmlschema</directory>
</resource>
<resource>
<directory>src/main/resources</directory>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.jsonschema2pojo</groupId>
<artifactId>jsonschema2pojo-maven-plugin</artifactId>
<version>${jsonschema2pojo.version}</version>
<configuration>
<addCompileSourceRoot>true</addCompileSourceRoot>
<generateBuilders>true</generateBuilders>
<outputDirectory>target/generated-sources/jsonschema2pojo</outputDirectory>
<sourcePaths>
<sourcePath>src/main/jsonschema</sourcePath>
</sourcePaths>
<useLongIntegers>true</useLongIntegers>
<useJodaDates>true</useJodaDates>
</configuration>
<executions>
<execution>
<goals>
<goal>generate</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>${build-helper.plugin.version}</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
<version>${enforcer.plugin.version}</version>
<executions>
<execution>
<id>enforce-banned-dependencies</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<bannedDependencies>
<excludes>
<exclude>org.slf4j:slf4j-log4j12</exclude>
<exclude>org.slf4j:slf4j-jcl</exclude>
<exclude>org.slf4j:slf4j-jdk14</exclude>
<exclude>org.log4j:log4j</exclude>
<exclude>commons-logging:commons-logging</exclude>
</excludes>
</bannedDependencies>
</rules>
<fail>true</fail>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>${failsafe.plugin.version}</version>
<executions>
<execution>
<id>integration-tests</id>
<goals>
<goal>integration-test</goal>
<goal>verify</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>${shade.plugin.version}</version>
<configuration>
<outputDirectory>dist</outputDirectory>
<outputFile>dist/${project.artifactId}-${project.version}-jar-with-dependencies.jar</outputFile>
</configuration>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<finalName>${project.build.finalName}</finalName>
<filters>
<filter>
<artifact>*:*</artifact>
<excludes>
<exclude>META-INF/*.SF</exclude>
<exclude>META-INF/*.DSA</exclude>
<exclude>META-INF/*.RSA</exclude>
<exclude>**/logback.xml</exclude>
<exclude>**/log4j.properties</exclude>
</excludes>
</filter>
</filters>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
<version>${site.plugin.version}</version>
<dependencies>
<dependency>
<groupId>org.apache.maven.wagon</groupId>
<artifactId>wagon-scm</artifactId>
<version>2.8</version>
</dependency>
<dependency>
<groupId>org.apache.maven.scm</groupId>
<artifactId>maven-scm-api</artifactId>
<version>1.9.4</version>
</dependency>
<dependency>
<groupId>org.apache.maven.scm</groupId>
<artifactId>maven-scm-provider-svn-commons</artifactId>
<version>1.9.4</version>
</dependency>
<dependency>
<groupId>org.apache.maven.scm</groupId>
<artifactId>maven-scm-provider-svnexe</artifactId>
<version>1.9.4</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</pluginManagement>
</build>
<profiles>
<profile>
<id>apache-release</id>
<properties>
<skipTests>true</skipTests>
<maven.test.skip>false</maven.test.skip>
<maven.test.skip.exec>true</maven.test.skip.exec>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>2.4</version>
<configuration>
<skipSource>true</skipSource>
</configuration>
<executions>
<execution>
<id>attach-sources</id>
<goals>
<goal>jar-no-fork</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<configuration>
<skip>true</skip>
</configuration>
<executions>
<execution>
<id>attach-javadocs</id>
<goals>
<goal>aggregate</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<skip>false</skip>
</configuration>
<executions>
<execution>
<id>test-jar</id>
<goals>
<goal>test-jar</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<dependencies>
<dependency>
<groupId>org.apache.apache.resources</groupId>
<artifactId>apache-source-release-assembly-descriptor</artifactId>
<version>1.0.5</version>
</dependency>
</dependencies>
<executions>
<execution>
<id>source-release-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<runOnlyAtExecutionRoot>true</runOnlyAtExecutionRoot>
<descriptorRefs>
<descriptorRef>source-release</descriptorRef>
</descriptorRefs>
<tarLongFileMode>gnu</tarLongFileMode>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-release-plugin</artifactId>
<configuration>
<releaseProfiles>apache-release</releaseProfiles>
<preparationGoals>clean install</preparationGoals>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.rat</groupId>
<artifactId>apache-rat-plugin</artifactId>
<executions>
<execution>
<phase>verify</phase>
<goals>
<goal>check</goal>
</goals>
</execution>
</executions>
<configuration>
<excludes>
<exclude>.git</exclude>
<exclude>.gitignore</exclude>
<exclude>.git/**</exclude>
<exclude>.idea/**</exclude>
<exclude>**/DEPENDENCIES</exclude>
<exclude>**/LICENSE</exclude>
<exclude>**/MANIFEST.MF</exclude>
<exclude>**/NOTICE</exclude>
<exclude>**/README.*</exclude>
<exclude>**/target/**</exclude>
<exclude>**/overlays/**</exclude>
<exclude>**/src/main/resources/**</exclude>
<exclude>**/src/test/resources/**</exclude>
<exclude>**/.gitignore</exclude>
<exclude>**/*.properties</exclude>
<exclude>**/*.iml</exclude>
<exclude>**/*.ini</exclude>
<exclude>**/*.jar</exclude>
<exclude>dependency-reduced-pom.xml</exclude>
<exclude>rat.txt</exclude>
</excludes>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<skipTests>false</skipTests>
<skipExec>true</skipExec>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<executions>
<execution>
<id>sign-artifacts</id>
<phase>verify</phase>
<goals>
<goal>sign</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
<reporting>
<plugins>
<plugin>
<artifactId>maven-project-info-reports-plugin</artifactId>
<configuration>
<dependencyLocationsEnabled>false</dependencyLocationsEnabled>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>${javadoc.plugin.version}</version>
<configuration>
<additionalparam>-Xdoclint:none</additionalparam>
<aggregate>true</aggregate>
<failOnError>false</failOnError>
<minmemory>128m</minmemory>
<maxmemory>1g</maxmemory>
</configuration>
<reportSets>
<reportSet>
<id>aggregate</id>
<reports>
<report>javadoc-no-fork</report>
<report>test-javadoc-no-fork</report>
<report>aggregate</report>
</reports>
</reportSet>
</reportSets>
</plugin>
<plugin>
<artifactId>maven-site-plugin</artifactId>
<version>${site.plugin.version}</version>
</plugin>
</plugins>
</reporting>
</profile>
<profile>
<id>docker</id>
<build>
<plugins>
<plugin>
<!-- The Docker Maven plugin is used to create docker image with the fat jar -->
<groupId>org.jolokia</groupId>
<artifactId>docker-maven-plugin</artifactId>
<version>${docker.plugin.version}</version>
<configuration>
<images>
<image>
<alias>${project.artifactId}</alias>
<name>${project.artifactId}:${project.version}</name>
<build>
<from>dockerfile/java:oracle-java7</from>
<assembly>
<basedir>/</basedir>
<descriptorRef>artifact</descriptorRef>
</assembly>
<!-- Default command for the build image -->
</build>
</image>
</images>
</configuration>
</plugin>
</plugins>
</build>
<activation>
<activeByDefault />
</activation>
</profile>
</profiles>
</project>