<?xml version="1.0" encoding="UTF-8"?> <!-- ============LICENSE_START========================================== org.onap.music =================================================================== Copyright (c) 2017 AT&T Intellectual Property =================================================================== Modifications Copyright (c) 2019 IBM. =================================================================== Licensed 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. ============LICENSE_END============================================= ==================================================================== --> <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>org.onap.music</groupId> <artifactId>MUSIC</artifactId> <packaging>jar</packaging> <version>3.2.29-SNAPSHOT</version> <description> This is the MUSIC REST interface, packaged as a Springboot jar file. </description> <parent> <groupId>org.onap.oparent</groupId> <artifactId>oparent</artifactId> <version>2.0.0</version> <relativePath/> </parent> <dependencyManagement> <dependencies> <!-- <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> <version>2.0.3.RELEASE</version> </dependency> --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-dependencies</artifactId> <version>2.1.1.RELEASE</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> <properties> <start-class>org.onap.music.MusicApplication</start-class> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <java.version>1.8</java.version> <jersey1.version>1.19</jersey1.version> <jersey2.version>2.25.1</jersey2.version> <jaxrs.version>2.0.1</jaxrs.version> <cassandra.version>3.6.0</cassandra.version> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <!--nexus --> <nexusproxy>https://nexus.onap.org</nexusproxy> <onap.nexus.url>https://nexus.onap.org</onap.nexus.url> <snapshotNexusPath>/content/repositories/snapshots/</snapshotNexusPath> <releaseNexusPath>/content/repositories/releases/</releaseNexusPath> <stagingNexusPath>/content/repositories/staging/</stagingNexusPath> <sitePath>/content/sites/site/org/onap/music/${project.version}</sitePath> <!--maven --> <timestamp>${maven.build.timestamp}</timestamp> <maven.build.timestamp.format>yyyy.MM.dd.HH.mm</maven.build.timestamp.format> <!--skip checkstyle --> <maven.check.skip>false</maven.check.skip> <!--docker --> <docker.tag>${project.version}-${timestamp}</docker.tag> <docker.latest.tag>${project.version}-latest</docker.latest.tag> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> </properties> <repositories> <repository> <id>onap-releases</id> <name>ONAP - Release Repository</name> <url>${nexusproxy}/${releaseNexusPath}</url> </repository> <repository> <id>onap-staging</id> <name>ONAP - Staging Repository</name> <url>${nexusproxy}/${stagingNexusPath}</url> </repository> <repository> <id>onap-snapshots</id> <name>ONAP - Snapshot Repository</name> <url>${nexusproxy}/${snapshotNexusPath}</url> </repository> <repository> <id>onap-public</id> <name>ONAP public Repository</name> <url>${nexusproxy}/content/groups/public</url> </repository> </repositories> <build> <!-- <finalName>${project.artifactId}-${project.version}-${timestamp}</finalName>--> <finalName>${project.artifactId}</finalName> <sourceDirectory>src/main/java</sourceDirectory> <outputDirectory>src/main/webapp/WEB-INF/classes</outputDirectory> <testSourceDirectory>src/test/java</testSourceDirectory> <testOutputDirectory>target/test-classes</testOutputDirectory> <defaultGoal>validate</defaultGoal> <resources> <resource> <directory>src/main/resources</directory> <filtering>true</filtering> <includes> <include>**/*.properties</include> <include>**/*.xml</include> <include>**/*.ccf</include> </includes> </resource> </resources> <testResources> <testResource> <directory>${project.basedir}/src/test/resources</directory> </testResource> <!-- <testResource> <directory>${project.basedir}/src/main/resources</directory> </testResource> --> </testResources> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <mainClass>org.onap.music.MusicApplication</mainClass> <outputDirectory>./distribution/music/</outputDirectory> <addResources>true</addResources> </configuration> <executions> <execution> <goals> <goal>repackage</goal> </goals> </execution> </executions> </plugin> <!-- <plugin> <artifactId>maven-war-plugin</artifactId> <version>2.4</version> <configuration> <warSourceDirectory>WebContent</warSourceDirectory> <failOnMissingWebXml>false</failOnMissingWebXml> </configuration> </plugin> --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-checkstyle-plugin</artifactId> <configuration> <skip>${maven.check.skip}</skip> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <version>2.4</version> <executions> <execution> <id>make-a-jar</id> <phase>compile</phase> <goals> <goal>jar</goal> </goals> <configuration> <excludes> <!--<exclude>**/*.xml</exclude> <exclude>**/*.properties</exclude>--> <exclude>**/Sample*</exclude> </excludes> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-install-plugin</artifactId> <version>2.4</version> <executions> <execution> <phase>install</phase> <goals> <goal>install-file</goal> </goals> <configuration> <packaging>jar</packaging> <artifactId>${project.artifactId}</artifactId> <groupId>${project.groupId}</groupId> <version>${project.version}</version> <file>${project.build.directory}/${project.artifactId}.jar</file> </configuration> </execution> </executions> </plugin> </plugins> </build> <dependencies> <!-- Springboot --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> </dependency> <dependency> <groupId>org.springframework.data</groupId> <artifactId>spring-data-cassandra</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jersey</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-aop</artifactId> <scope>compile</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-autoconfigure</artifactId> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-aop</artifactId> <scope>compile</scope> </dependency> <dependency> <groupId>org.aspectj</groupId> <artifactId>aspectjweaver</artifactId> <scope>compile</scope> </dependency> <!-- Springboot --> <!-- Development --> <dependency> <groupId>org.aspectj</groupId> <artifactId>aspectjweaver</artifactId> <scope>compile</scope> </dependency> <!-- Springboot --> <!-- Development --> <dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> <version>2.4</version> <scope>provided</scope> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.0.1</version> <scope>provided</scope> </dependency> <!-- /Development --> <!-- Logging --> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-core</artifactId> <version>1.2.3</version> <exclusions> <exclusion> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> <version>1.2.3</version> <exclusions> <exclusion> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>com.att.eelf</groupId> <artifactId>eelf-core</artifactId> <version>1.0.1-oss</version> <exclusions> <exclusion> <groupId>org.powermock</groupId> <artifactId>powermock-api-mockito</artifactId> </exclusion> <exclusion> <groupId>org.powermock</groupId> <artifactId>powermock-module-junit4</artifactId> </exclusion> </exclusions> </dependency> <!-- End Logging --> <!-- Cassandra --> <dependency> <groupId>io.dropwizard.metrics</groupId> <artifactId>metrics-core</artifactId> <version>4.1.0-rc3</version> </dependency> <dependency> <groupId>com.datastax.cassandra</groupId> <artifactId>cassandra-driver-core</artifactId> <version>3.6.0</version> </dependency> <dependency> <groupId>com.datastax.cassandra</groupId> <artifactId>cassandra-driver-core</artifactId> <version>${cassandra.version}</version> </dependency> <!-- /Cassandra --> <!-- Jersey --> <dependency> <groupId>com.sun.jersey</groupId> <artifactId>jersey-client</artifactId> <version>${jersey1.version}</version> </dependency> <dependency> <groupId>com.sun.jersey</groupId> <artifactId>jersey-server</artifactId> <version>${jersey1.version}</version> </dependency> <dependency> <groupId>com.sun.jersey</groupId> <artifactId>jersey-json</artifactId> <version>${jersey1.version}</version> </dependency> <dependency> <groupId>com.sun.jersey</groupId> <artifactId>jersey-servlet</artifactId> <version>${jersey1.version}</version> </dependency> <!-- /Jersey --> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-jcs-core</artifactId> <version>2.2</version> </dependency> <dependency> <groupId>commons-codec</groupId> <artifactId>commons-codec</artifactId> <version>1.11</version> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>3.8</version> </dependency> <!-- Testing --> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> <scope>test</scope> </dependency> <dependency> <groupId>org.cassandraunit</groupId> <artifactId>cassandra-unit-spring</artifactId> <version>3.5.0.1</version> <scope>test</scope> <exclusions> <exclusion> <groupId>io.dropwizard.metrics</groupId> <artifactId>metrics-core</artifactId> </exclusion> <exclusion> <groupId>com.addthis.metrics</groupId> <artifactId>reporter-config-base</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.cassandraunit</groupId> <artifactId>cassandra-unit-spring</artifactId> <version>3.5.0.1</version> <scope>test</scope> <exclusions> <exclusion> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> </exclusion> <exclusion> <groupId>ch.qos.logback</groupId> <artifactId>logback-core</artifactId> </exclusion> <exclusion> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> </exclusion> <exclusion> <groupId>org.cassandraunit</groupId> <artifactId>cassandra-unit</artifactId> </exclusion> <exclusion> <groupId>io.dropwizard.metrics</groupId> <artifactId>metrics-core</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.cassandraunit</groupId> <artifactId>cassandra-unit-shaded</artifactId> <version>3.5.0.1</version> <scope>test</scope> </dependency> <dependency> <groupId>io.dropwizard.metrics</groupId> <artifactId>metrics-core</artifactId> <version>3.1.0</version> </dependency> <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-core</artifactId> <version>2.23.4</version> <scope>test</scope> </dependency> <!-- /Testing --> <!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.datatype/jackson-datatype-jsr310 --> <dependency> <groupId>com.fasterxml.jackson.datatype</groupId> <artifactId>jackson-datatype-jsr310</artifactId> <version>2.9.8</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>2.9.8</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-core</artifactId> <version>2.9.8</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-annotations</artifactId> <version>2.9.8</version> </dependency> <dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpclient</artifactId> </dependency> <!-- <dependency> <groupId>io.swagger</groupId> <artifactId>swagger-jersey2-jaxrs</artifactId> <version>1.5.18</version> </dependency> --> <dependency> <groupId>io.swagger</groupId> <artifactId>swagger-jersey-jaxrs</artifactId> <version>1.5.21</version> </dependency> <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> </dependency> <dependency> <groupId>de.svenkubiak</groupId> <artifactId>jBCrypt</artifactId> <version>0.4.1</version> </dependency> <!-- <dependency> <groupId>org.mindrot</groupId> <artifactId>jbcrypt</artifactId> <version>0.4</version> </dependency>--> <dependency> <groupId>io.netty</groupId> <artifactId>netty-handler</artifactId> <version>4.1.33.Final</version> </dependency> <dependency> <groupId>io.netty</groupId> <artifactId>netty-buffer</artifactId> <version>4.1.33.Final</version> </dependency> <dependency> <groupId>io.netty</groupId> <artifactId>netty-codec</artifactId> <version>4.1.33.Final</version> </dependency> <dependency> <groupId>io.netty</groupId> <artifactId>netty-common</artifactId> <version>4.1.33.Final</version> </dependency> <dependency> <groupId>io.netty</groupId> <artifactId>netty-resolver</artifactId> <version>4.1.33.Final</version> </dependency> <dependency> <groupId>io.netty</groupId> <artifactId>netty-transport</artifactId> <version>4.1.33.Final</version> </dependency> <dependency> <groupId>org.onap.aaf.authz</groupId> <artifactId>aaf-cadi-aaf</artifactId> <version>2.1.7</version> <exclusions> <exclusion> <groupId>log4j</groupId> <artifactId>log4j</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.onap.aaf.authz</groupId> <artifactId>aaf-cadi-client</artifactId> <version>2.1.7</version> </dependency> <dependency> <groupId>org.onap.aaf.authz</groupId> <artifactId>aaf-cadi-core</artifactId> <version>2.1.7</version> </dependency> <dependency> <groupId>com.google.code.gson</groupId> <artifactId>gson</artifactId> <version>2.8.5</version> </dependency> </dependencies> <reporting> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <version>2.10.3</version> <configuration> <author>true</author> <breakiterator>true</breakiterator> <version>true</version> <links> <link>https://docs.oracle.com/javase/7/docs/api/</link> <link>https://tomcat.apache.org/tomcat-7.0-doc/jspapi/</link> <link>http://docs.oracle.com/javaee/7/api/</link> </links> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.8</source> <target>1.8</target> </configuration> </plugin> </plugins> </reporting> <profiles> <profile> <id>docker</id> <build> <plugins> <plugin> <groupId>io.fabric8</groupId> <artifactId>docker-maven-plugin</artifactId> <version>0.19.1</version> <configuration> <verbose>true</verbose> <apiVersion>1.23</apiVersion> <registry>nexus3.onap.org:10003</registry> <images> <!-- MUSIC War --> <image> <name>onap/music/music_sb</name> <alias>docker_music</alias> <build> <cleanup>true</cleanup> <tags> <tag>${docker.tag}</tag> <tag>${docker.latest.tag}</tag> </tags> <dockerFileDir>${project.basedir}/distribution/music</dockerFileDir> <!-- <assembly> <descriptorRef>artifact</descriptorRef> </assembly> --> </build> </image> <!-- Cassandra --> <image> <name>onap/music/cassandra_3_11</name> <alias>docker_cassandra_sec</alias> <build> <cleanup>true</cleanup> <tags> <tag>${docker.tag}</tag> <tag>${docker.latest.tag}</tag> </tags> <dockerFileDir>${project.basedir}/distribution/cassandra</dockerFileDir> </build> </image> <!-- Cassandra Job --> <image> <name>onap/music/cassandra_job</name> <alias>docker_cassandra_job</alias> <build> <cleanup>true</cleanup> <tags> <tag>${docker.tag}</tag> <tag>${docker.latest.tag}</tag> </tags> <dockerFileDir>${project.basedir}/distribution/cassandra_job</dockerFileDir> </build> </image> <!-- tomcat 8.5 --> <!-- <image> <name>onap/music/tomcat_music</name> <alias>docker_tomcat</alias> <build> <cleanup>true</cleanup> <tags> <tag>8.5-${timestamp}</tag> <tag>8.5-latest</tag> </tags> <dockerFileDir>${project.basedir}/distribution/tomcat</dockerFileDir> </build> </image>\ --> </images> </configuration> <executions> <execution> <id>clean-images</id> <phase>pre-clean</phase> <goals> <goal>remove</goal> </goals> <configuration> <removeAll>true</removeAll> <image>music</image> </configuration> </execution> <execution> <id>generate-images</id> <phase>package</phase> <goals> <goal>build</goal> </goals> </execution> <execution> <id>push-images</id> <phase>deploy</phase> <goals> <goal>push</goal> </goals> <configuration> <image>onap/music/music</image> </configuration> </execution> </executions> </plugin> </plugins> </build> </profile> <profile> <id>default</id> <repositories> <repository> <id>nexus</id> <name>attarch-releases</name> <url>http://mavencentral.it.att.com:8084/nexus/content/repositories/attarch-releases</url> </repository> </repositories> </profile> </profiles> <distributionManagement> <repository> <id>ecomp-releases</id> <name>Release Repository</name> <url>${nexusproxy}/${releaseNexusPath}</url> </repository> <snapshotRepository> <id>ecomp-snapshots</id> <name>Snapshot Repository</name> <url>${nexusproxy}/${snapshotNexusPath}</url> </snapshotRepository> <!-- added for javadoc --> <site> <id>ecomp-site</id> <url>dav:${nexusproxy}${sitePath}</url> </site> </distributionManagement> </project>