<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"> <modelVersion>4.0.0</modelVersion> <groupId>monasca</groupId> <artifactId>monasca-thresh</artifactId> <version>2.3.0-SNAPSHOT</version> <url>http://github.com/openstack/monasca-thresh</url> <packaging>jar</packaging> <!-- <prerequisites> <maven>3.0</maven> </prerequisites> --> <properties> <gitRevision></gitRevision> <timestamp>${maven.build.timestamp}</timestamp> <maven.build.timestamp.format>yyyy-MM-dd'T'HH:mm:ss</maven.build.timestamp.format> <computedVersion>${project.version}-${timestamp}-${gitRevision}</computedVersion> <computedName>${project.artifactId}-${computedVersion}</computedName> <mon.common.version>1.3.0-SNAPSHOT</mon.common.version> <storm.version>1.1.3</storm.version> <postgresql.version>9.1-901.jdbc4</postgresql.version> <hikaricp.version>2.3.9</hikaricp.version> <reflections.version>0.9.9-RC1</reflections.version> <javax.el-api.version>2.2.5</javax.el-api.version> <skipITs>false</skipITs> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <timestamp>${maven.build.timestamp}</timestamp> <maven.build.timestamp.format>yyyy-MM-dd'T'HH:mm:ss</maven.build.timestamp.format> <artifactNamedVersion>${project.artifactId}-${project.version}-${timestamp}-${buildNumber} </artifactNamedVersion> <shadedJarName>${project.artifactId}-${project.version}-shaded </shadedJarName> </properties> <scm> <connection>scm:git:git@github.com:openstack/monasca-thresh</connection> <developerConnection>scm:git:git@github.com:openstack/monasca-thresh</developerConnection> </scm> <repositories> <repository> <id>clojars.org</id> <url>http://clojars.org/repo</url> </repository> </repositories> <profiles> <profile> <id>release-deploy-url-override</id> <activation> <property> <name>BUILD_NUM</name> </property> </activation> <properties> <computedVersion>${project.version}</computedVersion> </properties> </profile> </profiles> <dependencyManagement> <dependencies> <!-- Resolve dependency mismatch between Dropwizard and Storm --> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>1.7.6</version> </dependency> <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>17.0</version> </dependency> </dependencies> </dependencyManagement> <dependencies> <dependency> <groupId>org.apache.storm</groupId> <artifactId>storm-core</artifactId> <version>${storm.version}</version> <!-- The real deployment has all the Storm jars --> <scope>provided</scope> </dependency> <dependency> <groupId>monasca-common</groupId> <artifactId>monasca-common-util</artifactId> <version>${mon.common.version}</version> <exclusions> <exclusion> <groupId>ch.qos.logback</groupId> <artifactId>logback-core</artifactId> </exclusion> <exclusion> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>monasca-common</groupId> <artifactId>monasca-common-model</artifactId> <version>${mon.common.version}</version> </dependency> <dependency> <groupId>monasca-common</groupId> <artifactId>monasca-common-persistence</artifactId> <version>${mon.common.version}</version> </dependency> <dependency> <groupId>monasca-common</groupId> <artifactId>monasca-common-hibernate</artifactId> <version>${mon.common.version}</version> </dependency> <dependency> <groupId>monasca-common</groupId> <artifactId>monasca-common-kafka</artifactId> <version>${mon.common.version}</version> </dependency> <dependency> <groupId>org.drizzle.jdbc</groupId> <artifactId>drizzle-jdbc</artifactId> <version>1.4</version> </dependency> <dependency> <groupId>com.timgroup</groupId> <artifactId>java-statsd-client</artifactId> <version>3.1.0</version> </dependency> <dependency> <groupId>org.apache.kafka</groupId> <artifactId>kafka_2.11</artifactId> <version>0.8.2.2</version> <exclusions> <exclusion> <groupId>com.sun.jmx</groupId> <artifactId>jmxri</artifactId> </exclusion> <exclusion> <groupId>com.sun.jdmk</groupId> <artifactId>jmxtools</artifactId> </exclusion> <exclusion> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>postgresql</groupId> <artifactId>postgresql</artifactId> <version>${postgresql.version}</version> </dependency> <dependency> <groupId>com.zaxxer</groupId> <artifactId>HikariCP-java6</artifactId> <version>${hikaricp.version}</version> <scope>compile</scope> </dependency> <dependency> <groupId>javax.el</groupId> <artifactId>javax.el-api</artifactId> <version>${javax.el-api.version}</version> </dependency> <!-- Test dependencies --> <dependency> <groupId>monasca-common</groupId> <artifactId>monasca-common-testing</artifactId> <version>${mon.common.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>commons-codec</groupId> <artifactId>commons-codec</artifactId> <version>1.4</version> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.1</version> <configuration> <source>1.7</source> <target>1.7</target> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>2.16</version> <configuration> <excludedGroups>performance,functional,integration,database,slow,orm </excludedGroups> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-failsafe-plugin</artifactId> <version>2.16</version> <configuration> <groups>performance,functional,integration,database,slow,orm</groups> <skipTests>${skipITs}</skipTests> </configuration> <executions> <execution> <goals> <goal>integration-test</goal> </goals> <configuration> <includes> <include>**/*.class</include> </includes> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <version>2.4</version> <configuration> <archive> <manifest> <packageName>monasca.thresh</packageName> </manifest> <manifestEntries> <Implementation-Version>${artifactNamedVersion}</Implementation-Version> </manifestEntries> </archive> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-shade-plugin</artifactId> <version>1.2</version> <configuration> <finalName>${artifactNamedVersion}</finalName> <createDependencyReducedPom>true</createDependencyReducedPom> <filters> <filter> <artifact>*:*</artifact> <excludes> <exclude>META-INF/*.SF</exclude> <exclude>META-INF/*.DSA</exclude> <exclude>META-INF/*.RSA</exclude> </excludes> </filter> </filters> <artifactSet> <excludes> <exclude>junit:junit</exclude> <exclude>org.apache.storm:storm-core</exclude> <exclude>org.hamcrest:hamcrest-core</exclude> </excludes> </artifactSet> </configuration> <executions> <execution> <phase>package</phase> <goals> <goal>shade</goal> </goals> <configuration> <transformers> <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"> <mainClass>monasca.thresh.ThresholdingEngine</mainClass> </transformer> </transformers> <shadedArtifactAttached>true</shadedArtifactAttached> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-scm-plugin</artifactId> <version>1.9</version> <configuration> <tag>${project.version}</tag> </configuration> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>buildnumber-maven-plugin</artifactId> <version>1.2</version> <executions> <execution> <phase>validate</phase> <goals> <goal>create</goal> </goals> </execution> </executions> <configuration> <doCheck>false</doCheck> <shortRevisionLength>6</shortRevisionLength> </configuration> </plugin> <plugin> <artifactId>maven-assembly-plugin</artifactId> <version>2.4.1</version> <configuration> <descriptors> <descriptor>src/assembly/tar.xml</descriptor> </descriptors> <finalName>${artifactNamedVersion}</finalName> </configuration> <executions> <execution> <id>make-assembly</id> <phase>package</phase> <goals> <goal>single</goal> </goals> </execution> </executions> </plugin> <plugin> <artifactId>jdeb</artifactId> <groupId>org.vafer</groupId> <version>1.0.1</version> <executions> <execution> <phase>package</phase> <goals> <goal>jdeb</goal> </goals> <configuration> <deb>${project.basedir}/debs/binaries/${artifactNamedVersion}.deb</deb> <dataSet> <data> <type>file</type> <src>${project.build.directory}/${shadedJarName}.jar </src> <dst>/opt/monasca/monasca-thresh.jar</dst> </data> <data> <type>file</type> <src> ${project.basedir}/src/deb/etc/thresh-config.yml-sample </src> <dst>/etc/monasca/thresh-config.yml-sample</dst> </data> </dataSet> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>license-maven-plugin</artifactId> <version>1.5</version> <configuration> <useMissingFile>true</useMissingFile> </configuration> <executions> <execution> <id>create-license-list</id> <goals> <goal>aggregate-add-third-party</goal> </goals> <phase>generate-resources</phase> </execution> </executions> </plugin> <plugin> <artifactId>maven-clean-plugin</artifactId> <version>2.5</version> <configuration> <filesets> <fileset> <directory>${project.basedir}/debs</directory> </fileset> </filesets> </configuration> </plugin> </plugins> </build> </project>