[AAI-2175] Change aai champ container processes to run as non-root on the host
[aai/champ.git] / pom.xml
diff --git a/pom.xml b/pom.xml
index 95b09cd..349b481 100755 (executable)
--- a/pom.xml
+++ b/pom.xml
-<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>
-       <parent>
-               <groupId>org.onap.oparent</groupId>
-               <artifactId>oparent</artifactId>
-               <version>1.0.0-SNAPSHOT</version>
-       </parent>
+<!--
+============LICENSE_START=======================================================
+org.onap.aai
+================================================================================
+Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved.
+Copyright © 2017-2018 Amdocs
+================================================================================
+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
 
-       <groupId>org.openecomp.aai</groupId>
-       <artifactId>champ</artifactId>
-       <version>1.1.0-SNAPSHOT</version>
-       <properties>
-               <tinkerpop.version>3.0.1-incubating</tinkerpop.version>
-               <sitePath>/content/sites/site/org/onap/aai/${project.artifactId}/${project.version}</sitePath>
-               <sonar.language>java</sonar.language>
-               <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
-               <sonar.surefire.reportsPath>${project.build.directory}/surefire-reports</sonar.surefire.reportsPath>
-               <sonar.jacoco.reportPath>${project.build.directory}/jacoco.exec</sonar.jacoco.reportPath>
-               <sonar.jacoco.reportMissing.force.zero>false</sonar.jacoco.reportMissing.force.zero>
-               <sonar.projectVersion>${project.version}</sonar.projectVersion>
-       </properties>
-       <distributionManagement>
-               <site>
-                       <id>ecomp-site</id>
-                       <url>dav:${onap.nexus.url}${sitePath}</url>
-               </site>
-       </distributionManagement>
-       <dependencies>
-               <dependency>
-                       <groupId>junit</groupId>
-                       <artifactId>junit</artifactId>
-                       <version>4.12</version>
-                       <scope>test</scope>
-               </dependency>
-               <dependency>
-                       <groupId>ch.qos.logback</groupId>
-                       <artifactId>logback-classic</artifactId>
-                       <version>1.2.1</version>
-                       <optional>true</optional>
-               </dependency>
-               <dependency>
-                       <groupId>org.apache.tinkerpop</groupId>
-                       <artifactId>tinkergraph-gremlin</artifactId> 
-                       <version>${tinkerpop.version}</version>
-               </dependency>
-               <dependency>
-                       <groupId>org.apache.tinkerpop</groupId>
-                       <artifactId>gremlin-core</artifactId> 
-                       <version>${tinkerpop.version}</version>
-                       <exclusions>
-                               <exclusion>
-                                       <groupId>org.slf4j</groupId>
-                                       <artifactId>slf4j-log4j12</artifactId>
-                               </exclusion>
-                               <exclusion>
-                                       <groupId>org.slf4j</groupId>
-                                       <artifactId>jcl-over-slf4j</artifactId>
-                               </exclusion>
-                       </exclusions>
-               </dependency>
-               <dependency>
-                       <groupId>com.thinkaurelius.titan</groupId>
-                       <artifactId>titan-cassandra</artifactId>
-                       <version>1.0.0</version>
-                       <optional>true</optional>
-                       <exclusions>
-                               <exclusion>
-                                       <groupId>org.apache.tinkerpop</groupId>
-                                       <artifactId>gremlin-groovy</artifactId>
-                               </exclusion>
-                               <exclusion>
-                                       <groupId>org.slf4j</groupId>
-                                       <artifactId>slf4j-log4j12</artifactId>
-                               </exclusion>
-                               <exclusion>
-                                       <groupId>ch.qos.logback</groupId>
-                                       <artifactId>logback-classic</artifactId>
-                               </exclusion>
-                               <exclusion>
-                                       <groupId>org.apache.tinkerpop</groupId>
-                                       <artifactId>gremlin-core</artifactId>
-                               </exclusion>
-                       </exclusions>
-               </dependency>
-               <dependency>
-                       <groupId>com.thinkaurelius.titan</groupId>
-                       <artifactId>titan-hbase</artifactId>
-                       <version>1.0.0</version>
-                       <optional>true</optional>
-                       <exclusions>
-                               <exclusion>
-                                       <groupId>org.apache.tinkerpop</groupId>
-                                       <artifactId>gremlin-groovy</artifactId>
-                               </exclusion>
-                               <exclusion>
-                                       <groupId>org.slf4j</groupId>
-                                       <artifactId>slf4j-log4j12</artifactId>
-                               </exclusion>
-                               <exclusion>
-                                       <groupId>ch.qos.logback</groupId>
-                                       <artifactId>logback-classic</artifactId>
-                               </exclusion>
-                               <exclusion>
-                                       <groupId>org.apache.tinkerpop</groupId>
-                                       <artifactId>gremlin-core</artifactId>
-                               </exclusion>
-                       </exclusions>
-               </dependency>
-               <dependency>
-                       <groupId>org.apache.hbase</groupId>
-                       <artifactId>hbase-client</artifactId>
-                       <version>0.98.4-hadoop2</version>
-                       <exclusions>
-                               <exclusion>
-                                       <groupId>org.slf4j</groupId>
-                                       <artifactId>slf4j-log4j12</artifactId>
-                               </exclusion>
-                               <exclusion>
-                                       <groupId>com.google.guava</groupId>
-                                       <artifactId>guava</artifactId>
-                               </exclusion>
-                       </exclusions>
-               </dependency>
-               <dependency>
-                       <groupId>jdk.tools</groupId>
-                       <artifactId>jdk.tools</artifactId>
-                       <version>1.8</version>
-                       <scope>system</scope>
-                       <systemPath>${JAVA_HOME}/lib/tools.jar</systemPath>
-               </dependency>
-               <dependency>
-                       <groupId>org.jacoco</groupId>
-                       <artifactId>org.jacoco.agent</artifactId>
-                       <version>0.7.9</version>
-                       <classifier>runtime</classifier>
-                       <scope>test</scope>
-               </dependency>
+      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>
+
+    <parent>
+        <groupId>org.onap.oparent</groupId>
+        <artifactId>oparent</artifactId>
+        <version>2.0.0</version>
+    </parent>
+
+    <groupId>org.onap.aai</groupId>
+    <artifactId>champ</artifactId>
+    <name>aai-champ</name>
+    <packaging>pom</packaging>
+    <version>1.6.0-SNAPSHOT</version>
+
+    <properties>
+        <onap.nexus.url>https://nexus.onap.org</onap.nexus.url>
+        <event.client.version>1.5.0</event.client.version>
+        <!-- Minimum code coverage percentage. Please update this figure as coverage increases to prevent any drops in
+         coverage caused by new changes. Note that this figure cannot be lower than the ONAP requirement of 0.55 -->
+        <jacoco.line.coverage.limit>0.57</jacoco.line.coverage.limit>
+        <jacoco.report.directory>${project.build.directory}/code-coverage</jacoco.report.directory>
+    </properties>
+
+    <modules>
+        <module>champ-lib</module>
+        <module>champ-service-deps-janus</module>
+        <module>champ-service-deps-titan</module>
+        <module>champ-service</module>
+    </modules>
+
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-deploy-plugin</artifactId>
+            </plugin>
+            <plugin>
+                <groupId>org.jacoco</groupId>
+                <artifactId>jacoco-maven-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>default-check</id>
+                        <goals>
+                            <goal>check</goal>
+                        </goals>
+                        <configuration>
+                            <dataFile>${jacoco.report.directory}/jacoco-ut.exec</dataFile>
+                            <rules>
+                                <!--  implementation is needed only for Maven 2  -->
+                                <rule implementation="org.jacoco.maven.RuleConfiguration">
+                                    <element>BUNDLE</element>
+                                    <limits>
+                                        <limit implementation="org.jacoco.report.check.Limit">
+                                            <counter>LINE</counter>
+                                            <value>COVEREDRATIO</value>
+                                            <minimum>${jacoco.line.coverage.limit}</minimum>
+                                        </limit>
+                                    </limits>
+                                </rule>
+                            </rules>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+        </plugins>
+    </build>
+
+    <dependencyManagement>
+        <dependencies>
+
+            <dependency>
+                <groupId>org.onap.aai.event-client</groupId>
+                <artifactId>event-client-api</artifactId>
+                <version>${event.client.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>org.onap.aai.event-client</groupId>
+                <artifactId>event-client-dmaap</artifactId>
+                <version>${event.client.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>org.onap.aai.event-client</groupId>
+                <artifactId>event-client-kafka</artifactId>
+                <version>${event.client.version}</version>
+            </dependency>
+
+                <dependency>
+                        <groupId>org.onap.aai.event-client</groupId>
+                        <artifactId>event-client-rabbitmq</artifactId>
+                        <version>${event.client.version}</version>
+                </dependency>
+            <dependency>
+                <groupId>commons-collections</groupId>
+                <artifactId>commons-collections</artifactId>
+                <version>20040616</version>
+            </dependency>
+
+            <dependency>
+                <groupId>ch.qos.logback</groupId>
+                <artifactId>logback-classic</artifactId>
+                <version>1.2.3</version>
+            </dependency>
+
+            <dependency>
+                <groupId>ch.qos.logback</groupId>
+                <artifactId>logback-core</artifactId>
+                <version>1.2.3</version>
+            </dependency>
+
+            <dependency>
+                <groupId>org.apache.hadoop</groupId>
+                <artifactId>hadoop-common</artifactId>
+                <version>2.7.7</version>
+            </dependency>
+
+            <dependency>
+                <groupId>org.apache.hbase</groupId>
+                <artifactId>hbase-client</artifactId>
+                <version>1.0.2</version>
+            </dependency>
+
+            <dependency>
+                <groupId>org.onap.dmaap.messagerouter.dmaapclient</groupId>
+                <artifactId>dmaapClient</artifactId>
+                <version>1.1.5</version>
+            </dependency>
+
+            <dependency>
+                <groupId>io.netty</groupId>
+                <artifactId>netty-all</artifactId>
+                <version>4.1.24.Final</version>
+            </dependency>
+
+            <dependency>
+                <groupId>io.netty</groupId>
+                <artifactId>netty</artifactId>
+                <version>3.10.6.Final</version>
+            </dependency>
+
+            <dependency>
+                <groupId>org.apache.zookeeper</groupId>
+                <artifactId>zookeeper</artifactId>
+                <version>3.4.12</version>
+            </dependency>
+
+            <dependency>
+                <groupId>com.fasterxml.jackson.core</groupId>
+                <artifactId>jackson-core</artifactId>
+                <version>2.8.11</version>
+            </dependency>
+
+            <dependency>
+                <groupId>com.fasterxml.jackson.core</groupId>
+                <artifactId>jackson-databind</artifactId>
+                <version>2.8.11.1</version>
+            </dependency>
+
+            <dependency>
+                <groupId>org.apache.httpcomponents</groupId>
+                <artifactId>httpclient-cache</artifactId>
+                <version>4.5.3</version>
+            </dependency>
+
+            <dependency>
+                <groupId>org.apache.httpcomponents</groupId>
+                <artifactId>httpclient</artifactId>
+                <version>4.5.3</version>
+            </dependency>
+
+            <dependency>
+                <groupId>org.codehaus.groovy</groupId>
+                <artifactId>groovy</artifactId>
+                <version>2.4.15</version>
+            </dependency>
+        </dependencies>
+    </dependencyManagement>
+
+    <distributionManagement>
+        <repository>
+            <id>ecomp-releases</id>
+            <name>ECOMP Release Repository</name>
+            <url>${onap.nexus.url}/content/repositories/releases/</url>
+        </repository>
+        <snapshotRepository>
+            <id>ecomp-snapshots</id>
+            <name>ECOMP Snapshot Repository</name>
+            <url>${onap.nexus.url}/content/repositories/snapshots/</url>
+        </snapshotRepository>
+    </distributionManagement>
 
-        <!-- Event Bus Client. -->
-        <dependency>
-            <groupId>com.att.nsa</groupId>
-            <artifactId>cambriaClient</artifactId>
-            <version>0.0.1</version>
-        </dependency>
-        
-        <dependency>
-            <groupId>org.apache.httpcomponents</groupId>
-            <artifactId>httpclient</artifactId>
-            <version>4.5</version>
-        </dependency>
-        
-       </dependencies>
-       <build>
-               <plugins>
-                       <plugin>
-                               <groupId>org.codehaus.mojo</groupId>
-                               <artifactId>sonar-maven-plugin</artifactId>
-                               <version>3.2</version>
-                       </plugin>
-                       <plugin>
-                               <groupId>org.jacoco</groupId>
-                               <artifactId>jacoco-maven-plugin</artifactId>
-                               <version>0.7.9</version>
-                               <configuration>
-                                       <excludes>
-                                               <!-- These three need to be included again at some point -->
-                                               <exclude>**/AbstractGremlinChampGraph*</exclude>
-                                               <exclude>**/DseChampGraphImpl*</exclude>
-                                               <exclude>**/DseChampformer*</exclude>
-                                               <!-- Permanently excluded, not worth testing -->
-                                               <exclude>**/ChampAPIPerformanceTest*</exclude>
-                                       </excludes>
-                               </configuration>
-                               <executions>
-                                       <execution>
-                                               <id>default-prepare-agent</id>
-                                               <goals>
-                                                       <goal>prepare-agent</goal>
-                                               </goals>
-                                       </execution>
-                                       <execution>
-                                               <id>default-report</id>
-                                               <phase>prepare-package</phase>
-                                               <goals>
-                                                       <goal>report</goal>
-                                               </goals>
-                                       </execution>
-                                       <execution>
-                                               <id>default-check</id>
-                                               <goals>
-                                                       <goal>check</goal>
-                                               </goals>
-                                               <configuration>
-                                                       <rules>
-                                                               <!--  implementation is needed only for Maven 2  -->
-                                                               <rule implementation="org.jacoco.maven.RuleConfiguration">
-                                                                       <element>BUNDLE</element>
-                                                                       <limits>
-                                                                               <!--  implementation is needed only for Maven 2  -->
-                                                                               <limit implementation="org.jacoco.report.check.Limit">
-                                                                                       <counter>INSTRUCTION</counter>
-                                                                                       <value>COVEREDRATIO</value>
-                                                                                       <minimum>.75</minimum>
-                                                                               </limit>
-                                                                               <limit implementation="org.jacoco.report.check.Limit">
-                                                                                       <counter>BRANCH</counter>
-                                                                                       <value>COVEREDRATIO</value>
-                                                                                       <minimum>.74</minimum>
-                                                                               </limit>
-                                                                               <limit implementation="org.jacoco.report.check.Limit">
-                                                                                       <counter>COMPLEXITY</counter>
-                                                                                       <value>COVEREDRATIO</value>
-                                                                                       <minimum>.75</minimum>
-                                                                               </limit>
-                                                                               <limit implementation="org.jacoco.report.check.Limit">
-                                                                                       <counter>LINE</counter>
-                                                                                       <value>COVEREDRATIO</value>
-                                                                                       <minimum>.80</minimum>
-                                                                               </limit>
-                                                                               <limit implementation="org.jacoco.report.check.Limit">
-                                                                                       <counter>METHOD</counter>
-                                                                                       <value>COVEREDRATIO</value>
-                                                                                       <minimum>.90</minimum>
-                                                                               </limit>
-                                                                               <limit implementation="org.jacoco.report.check.Limit">
-                                                                                       <counter>CLASS</counter>
-                                                                                       <value>MISSEDCOUNT</value>
-                                                                                       <maximum>0</maximum>
-                                                                               </limit>
-                                                                       </limits>
-                                                               </rule>
-                                                       </rules>
-                                               </configuration>
-                                       </execution>
-                               </executions>
-                       </plugin>
-                       <plugin>
-                               <groupId>org.apache.maven.plugins</groupId>
-                               <artifactId>maven-assembly-plugin</artifactId>
-                               <version>3.0.0</version>
-                               <configuration>
-                                       <descriptorRefs>
-                                               <descriptorRef>jar-with-dependencies</descriptorRef>
-                                       </descriptorRefs>
-                               </configuration>
-                               <executions>
-                                       <execution>
-                                               <id>make-jar-with-dependencies</id>
-                                               <phase>package</phase>
-                                               <goals>
-                                                       <goal>single</goal>
-                                               </goals>
-                                       </execution>
-                               </executions>
-                       </plugin>
-                       <plugin>
-                               <groupId>org.apache.maven.plugins</groupId>
-                               <artifactId>maven-compiler-plugin</artifactId>
-                               <version>3.6.1</version>
-                               <configuration>
-                                       <source>1.8</source>
-                                       <target>1.8</target>
-                               </configuration>
-                       </plugin>
-                       <plugin>
-                               <artifactId>maven-release-plugin</artifactId>
-                               <version>2.4.2</version>
-                               <dependencies>
-                                       <dependency>
-                                               <groupId>org.apache.maven.scm</groupId>
-                                               <artifactId>maven-scm-provider-gitexe</artifactId>
-                                               <version>1.8.1</version>
-                                       </dependency>
-                               </dependencies>
-                       </plugin>
-                       <plugin>
-                               <groupId>org.apache.maven.plugins</groupId>
-                               <artifactId>maven-source-plugin</artifactId>
-                               <version>3.0.1</version>
-                               <executions>
-                                       <execution>
-                                               <id>attach-sources</id>
-                                               <goals>
-                                                       <goal>jar</goal>
-                                               </goals>
-                                       </execution>
-                               </executions>
-                       </plugin>
-                       <plugin>
-                               <groupId>org.apache.maven.plugins</groupId>
-                               <artifactId>maven-javadoc-plugin</artifactId>
-                               <version>2.9.1</version>
-                               <executions>
-                                       <execution>
-                                               <id>attach-javadocs</id>
-                                               <goals>
-                                                       <goal>jar</goal>
-                                               </goals>
-                                       </execution>
-                               </executions>
-                       </plugin>
-                       <plugin>
-                               <groupId>org.apache.maven.plugins</groupId>
-                               <artifactId>maven-surefire-plugin</artifactId>
-                               <configuration>
-                                       <systemPropertyVariables>
-                                               <jacoco-agent.destfile>target/jacoco.exec</jacoco-agent.destfile>
-                                       </systemPropertyVariables>
-                               </configuration>
-                       </plugin>
-                       <plugin>
-                               <groupId>org.apache.maven.plugins</groupId>
-                               <artifactId>maven-deploy-plugin</artifactId>
-                               <version>2.8.2</version>
-                               <executions>
-                                       <execution>
-                                               <id>default-deploy</id>
-                                               <phase>none</phase>
-                                       </execution>
-                               </executions>
-                       </plugin>
-                       <plugin>
-                               <groupId>org.sonatype.plugins</groupId>
-                               <artifactId>nexus-staging-maven-plugin</artifactId>
-                               <version>1.6.7</version>
-                               <extensions>true</extensions>
-                               <configuration>
-                                       <nexusUrl>${onap.nexus.url}</nexusUrl>
-                                       <stagingProfileId>176c31dfe190a</stagingProfileId>
-                                       <serverId>ecomp-staging</serverId>
-                               </configuration>
-                       </plugin>
-                       <plugin>
-                               <groupId>org.apache.maven.plugins</groupId>
-                               <artifactId>maven-site-plugin</artifactId>
-                               <version>3.6</version>
-                               <dependencies>
-                                       <dependency>
-                                               <groupId>org.apache.maven.wagon</groupId>
-                                               <artifactId>wagon-webdav-jackrabbit</artifactId>
-                                               <version>2.10</version>
-                                       </dependency>
-                               </dependencies>
-                       </plugin>
-                           <plugin>
-                               <groupId>com.mycila</groupId>
-                               <artifactId>license-maven-plugin</artifactId>
-                               <version>3.0</version>
-                               <configuration>
-                                   <header>License.txt</header>
-                                   <includes>
-                                       <include>**/*.java</include>
-                                       <include>**/*.ksh</include>
-                                       <include>**/*.sh</include>
-                                       <include>**/*.ftl</include>
-                                       <include>**/*.xsd</include>
-                                       <include>**/*.xjb</include>
-                                       <include>**/*.yml</include>
-                                       <include>**/*.yaml</include>
-                                       <include>**/aai*.xml</include>
-                                       <include>**/*logback*.xml</include>
-                                       <include>**/*aaiconfig*.properties</include>
-                                       <include>**/*titan*.properties</include>
-                                   </includes>
-                               </configuration>
-                               <executions>
-                                   <execution>
-                                       <goals>
-                                           <goal>format</goal>
-                                       </goals>
-                                       <phase>process-sources</phase>
-                                   </execution>
-                               </executions>
-                           </plugin>
-               </plugins>
-       </build>
-       <reporting>
-               <plugins>
-                       <plugin>
-                               <groupId>org.apache.maven.plugins</groupId>
-                               <artifactId>maven-javadoc-plugin</artifactId>
-                               <version>2.10.4</version>
-                               <configuration>
-                                       <failOnError>false</failOnError>
-                                       <doclet>org.umlgraph.doclet.UmlGraphDoc</doclet>
-                                       <docletArtifact>
-                                               <groupId>org.umlgraph</groupId>
-                                               <artifactId>umlgraph</artifactId>
-                                               <version>5.6</version>
-                                       </docletArtifact>
-                                       <additionalparam>-views</additionalparam>
-                                       <useStandardDocletOptions>true</useStandardDocletOptions>
-                               </configuration>
-                       </plugin>
-               </plugins>
-       </reporting>
 </project>