[DMAAP-BC] Consolidate bus controller repos
[dmaap/buscontroller.git] / dbc-client / pom.xml
index 945eeee..b9a4abd 100644 (file)
   ============LICENSE_END============================================
   ECOMP is a trademark and service mark of AT&T Intellectual Property.
 -->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+<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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
-  <groupId>org.onap.dmaap.buscontroller</groupId>
   <artifactId>dbc-client</artifactId>
-  <version>${artifact.version}</version>
   <name>dbc-client</name>
+  <packaging>jar</packaging>
   <parent>
-    <groupId>org.onap.oparent</groupId>
-    <artifactId>oparent</artifactId>
-    <version>1.2.2</version>
-    <relativePath/>
+    <groupId>org.onap.dmaap.buscontroller</groupId>
+    <artifactId>parent</artifactId>
+    <version>${revision}</version>
+    <relativePath>../pom.xml</relativePath>
   </parent>
+  <description>Packaging Platform (DMaaP) HTTP Client for Bus Controller Provisioning.</description>
+  <properties>
+
+    <docker.location>${basedir}/target/${project.artifactId}</docker.location>
+    <dmaapbcclient.image.name>${docker.image.root}${project.artifactId}</dmaapbcclient.image.name>
+    <sitePath>/content/sites/site/org/onap/dmaap/dbc-client/${project.version}</sitePath>
+  </properties>
   <build>
     <finalName>dbc-client</finalName>
-
     <plugins>
-
-
-      <plugin>
-        <groupId>org.sonatype.plugins</groupId>
-        <artifactId>nexus-staging-maven-plugin</artifactId>
-        <extensions>true</extensions>
-        <configuration>
-          <serverId>ecomp-staging</serverId>
-          <nexusUrl>${nexusproxy}</nexusUrl>
-          <stagingProfileId>176c31dfe190a</stagingProfileId>
-        </configuration>
-      </plugin>
-
-      <!-- for Distribution management -->
       <plugin>
-        <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-site-plugin</artifactId>
-        <dependencies>
-          <dependency>
-            <groupId>org.apache.maven.wagon</groupId>
-            <artifactId>wagon-webdav-jackrabbit</artifactId>
-            <version>2.10</version>
-          </dependency>
-        </dependencies>
+        <artifactId>maven-resources-plugin</artifactId>
+        <version>2.7</version>
+        <executions>
+          <execution>
+            <id>copy-jar</id>
+            <phase>package</phase>
+            <goals>
+              <goal>copy-resources</goal>
+            </goals>
+            <configuration>
+              <outputDirectory>${basedir}/target/docker-stage/opt/app/dmaapbc/lib</outputDirectory>
+              <resources>
+                <resource>
+                  <directory>${multiproject.basedir}/dmaap-bc/target</directory>
+                  <includes>
+                    <include>dbc-client.jar</include>
+                  </includes>
+                </resource>
+              </resources>
+            </configuration>
+          </execution>
+        </executions>
       </plugin>
-
     </plugins>
     <pluginManagement>
       <plugins>
-        <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
-        <plugin>
-          <groupId>org.eclipse.m2e</groupId>
-          <artifactId>lifecycle-mapping</artifactId>
-          <version>1.0.0</version>
-          <configuration>
-            <lifecycleMappingMetadata>
-              <pluginExecutions>
-                <pluginExecution>
-                  <pluginExecutionFilter>
-                    <groupId>org.apache.maven.plugins</groupId>
-                    <artifactId>maven-dependency-plugin</artifactId>
-                    <versionRange>[2.10,)</versionRange>
-                    <phase>install</phase>
-                    <goals>
-                      <goal>copy-dependencies</goal>
-                    </goals>
-                  </pluginExecutionFilter>
-                  <action>
-                    <ignore/>
-                  </action>
-                </pluginExecution>
-              </pluginExecutions>
-            </lifecycleMappingMetadata>
-          </configuration>
-        </plugin>
       </plugins>
     </pluginManagement>
+    <!-- Copy files to docker-stage to be included in image -->
+    <resources>
+      <resource>
+        <targetPath>${basedir}/target/docker-stage</targetPath>
+        <directory>${basedir}/src/main/resources</directory>
+        <includes>
+          <include>Dockerfile</include>
+        </includes>
+      </resource>
+      <resource>
+        <targetPath>${basedir}/target/docker-stage/opt/app/dbc-client/etc</targetPath>
+        <directory>${basedir}/certs</directory>
+        <includes>
+          <include>ca.pem</include>
+          <include>client.pem</include>
+          <include>key.pem</include>
+        </includes>
+      </resource>
+      <resource>
+        <targetPath>${basedir}/target/docker-stage/opt/app/dbc-client/bin</targetPath>
+        <directory>${basedir}/misc</directory>
+        <includes>
+          <include>dbc-client</include>
+        </includes>
+      </resource>
+      <resource>
+        <targetPath>${basedir}/target/docker-stage/opt/app/dbc-client/etc</targetPath>
+        <directory>${basedir}</directory>
+        <includes>
+          <include>version.properties</include>
+        </includes>
+      </resource>
+      <resource>
+        <targetPath>${basedir}/target/docker-stage/opt/app/dbc-client/misc</targetPath>
+        <directory>${basedir}/misc</directory>
+        <includes>
+          <include>cert-client-init.sh</include>
+          <include>aaf-ca.crt</include>
+        </includes>
+      </resource>
+    </resources>
   </build>
   <profiles>
     <profile>
       <id>docker</id>
-           <properties>
-                <skipDockerBuild>false</skipDockerBuild>
-                <skipDockerTag>false</skipDockerTag>
-                <skipTests>true</skipTests>
-            </properties>
+      <properties>
+        <skipDockerBuild>${skip.docker.build}</skipDockerBuild>
+        <skipDockerTag>${skip.docker.tag}</skipDockerTag>
+        <skipTests>true</skipTests>
+      </properties>
       <build>
         <plugins>
           <plugin>
-            <groupId>com.spotify</groupId>
+            <groupId>io.fabric8</groupId>
             <artifactId>docker-maven-plugin</artifactId>
-           <version>${docker.maven.plugin.version}</version>
+            <version>0.28.0</version>
             <configuration>
-              <baseImage>alpine:3.8</baseImage>
-              <imageName>${onap.nexus.dockerregistry.daily}/${docker.image}</imageName>
-              <entryPoint>["./bin/dbc-client", "deploy"]</entryPoint>
-              <serverId>${onap.nexus.dockerregistry.daily}</serverId>
-             <skipDockerBuild>false</skipDockerBuild>
-              <imageTags>
-                <imageTag>${artifact.version}</imageTag>
-                <imageTag>latest</imageTag>
-              </imageTags>
-              <volumes>
-                <volume>/opt/app/dbc-client/log</volume>
-              </volumes>
-              <forceTags>true</forceTags>
-              <user>root</user>
-              <resources>
-                <resource>
-                  <targetPath>/opt/app/dmaapbc/etc</targetPath>
-                  <directory>${multiproject.basedir}/dbc-client</directory>
-                  <include>version.properties</include>
-                </resource>
-                <resource>
-                  <targetPath>/opt/app/dbc-client/misc</targetPath>
-                  <directory>${multiproject.basedir}/misc</directory>
-                  <include>cert-client-init.sh</include>
-                </resource>
-                <resource>
-                  <targetPath>/opt/app/dbc-client/bin</targetPath>
-                  <directory>${multiproject.basedir}/dbc-client/misc</directory>
-                  <include>dbc-client</include>
-                </resource>
-              </resources>
-              <runs>
-                <run> apk add --no-cache curl </run>
-                <run>chmod +x /opt/app/dbc-client/misc/cert-client-init.sh</run>
-                <run>chmod +x /opt/app/dbc-client/bin/*</run>
-                <run>mkdir /opt/app/dbc-client/logs</run>
-              </runs>
-              <workdir>/opt/app/dbc-client</workdir>
+              <verbose>${docker.verbose}</verbose>
+              <apiVersion>${docker.apiVersion}</apiVersion>
+              <pullRegistry>${docker.pull.registry}</pullRegistry>
+              <pushRegistry>${docker.push.registry}</pushRegistry>
+              <images>
+                <image>
+                  <name>${dmaapbcclient.image.name}</name>
+                  <build>
+                    <cleanup>try</cleanup>
+                    <dockerFileDir>${basedir}/target/docker-stage</dockerFileDir>
+                    <dockerFile>Dockerfile</dockerFile>
+                    <tags>
+                      <tag>${dockertag1}</tag>
+                      <tag>${dockertag2}</tag>
+                    </tags>
+                  </build>
+                </image>
+              </images>
             </configuration>
             <executions>
-             <execution>
-                 <id>default</id>
-                 <goals>
-                      <goal>build</goal>
-                      <goal>push</goal>
-                  </goals>
-             </execution>
-         </executions>
+              <execution>
+                <id>generate-images</id>
+                <phase>install</phase>
+                <goals>
+                  <goal>build</goal>
+                </goals>
+              </execution>
+              <execution>
+                <id>push-images</id>
+                <phase>deploy</phase>
+                <goals>
+                  <goal>push</goal>
+                </goals>
+              </execution>
+            </executions>
           </plugin>
         </plugins>
       </build>
     </profile>
   </profiles>
-  <dependencyManagement>
-  </dependencyManagement>
-
-  <properties>
-    <multiproject.basedir>${basedir}/..</multiproject.basedir>
-    <docker.maven.plugin.version>1.0.0</docker.maven.plugin.version>
-    <jersey.version>2.16</jersey.version>
-    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-    <jettyVersion>9.4.12.RC2</jettyVersion>
-    <eelf.version>1.0.0</eelf.version>
-    <swagger.version>1.5.19</swagger.version>
-    <artifact.version>1.0.2</artifact.version>
-    <!--  SONAR  -->
-    <jacoco.version>0.7.7.201606060606</jacoco.version>
-    <sonar-jacoco-listeners.version>3.2</sonar-jacoco-listeners.version>
-    <sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
-    <!-- Default Sonar configuration -->
-    <sonar.jacoco.reportPath>target/code-coverage/jacoco-ut.exec</sonar.jacoco.reportPath>
-    <sonar.jacoco.itReportPath>target/code-coverage/jacoco-it.exec</sonar.jacoco.itReportPath>
-    <!-- Note: This list should match jacoco-maven-plugin's exclusion list below -->
-    <sonar.exclusions>**/gen/**,**/generated-sources/**,**/yang-gen**,**/pax/**</sonar.exclusions>
-
-    <!-- docker image -->
-    <docker.image>onap/dmaap/dbc-client</docker.image>
-
-    <nexusproxy>https://nexus.onap.org</nexusproxy>
-    <docker.push.registry>nexus3.onap.org:10003</docker.push.registry>
-
-    <!-- for Distribution Management -->
-    <sitePath>/content/sites/site/org/onap/dmaap/dbc-client/${artifact.version}</sitePath>
-  </properties>
-  <description>Packaging Platform (DMaaP) HTTP Client for Bus Controller Provisioning.</description>
 </project>