<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>1.0.0-SNAPSHOT</version> <url>http://github.com/stackforge/monasca-thresh</url> <packaging>jar</packaging> <!-- <prerequisites> <maven>3.0</maven> </prerequisites> --> <properties> <mon.common.version>1.0.0-SNAPSHOT</mon.common.version> <storm.version>0.9.1-incubating</storm.version> <skipITs>true</skipITs> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <artifactNamedVersion>${project.artifactId}-${project.version}-${timestamp}-${buildNumber} </artifactNamedVersion> <shadedJarName>${project.artifactId}-${project.version}-shaded </shadedJarName> </properties> <scm> <connection>scm:git:git@github.com:stackforge/monasca-thresh</connection> <developerConnection>scm:git:git@github.com:stackforge/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>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> <version>1.7.6</version> </dependency> </dependencies> </dependencyManagement> <dependencies> <dependency> <groupId>org.apache.storm</groupId> <artifactId>storm-core</artifactId> <version>${storm.version}</version> </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-streaming</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>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.26</version> </dependency> <dependency> <groupId>org.apache.kafka</groupId> <artifactId>kafka_2.9.2</artifactId> <version>0.8.0</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-simple</artifactId> </exclusion> </exclusions> </dependency> <!-- Test dependencies --> <dependency> <groupId>monasca-common</groupId> <artifactId>monasca-common-testing</artifactId> <version>${mon.common.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>monasca-common</groupId> <artifactId>monasca-common-streaming</artifactId> <version>${mon.common.version}</version> <type>test-jar</type> <scope>test</scope> </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 </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</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-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:*</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>com.hpcloud.mon.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>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/mon/mon-thresh.jar</dst> </data> <data> <type>file</type> <src>${project.basedir}/src/deb/init/mon-thresh</src> <dst>/etc/init.d/mon-thresh</dst> </data> <data> <type>file</type> <src>${project.basedir}/src/main/resources/logback.xml</src> <dst>/etc/mon/logback.xml</dst> </data> <data> <type>file</type> <src> ${project.basedir}/src/deb/etc/mon-thresh-config.yml-sample </src> <dst>/etc/mon/thresh-config.yml-sample</dst> </data> </dataSet> </configuration> </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>