Remove useless plugin
[clamp.git] / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3   ============LICENSE_START=======================================================
4   ONAP CLAMP
5   ================================================================================
6   Copyright (C) 2017 AT&T Intellectual Property. All rights
7                               reserved.
8   ================================================================================
9   Licensed under the Apache License, Version 2.0 (the "License");
10   you may not use this file except in compliance with the License.
11   You may obtain a copy of the License at
12
13   http://www.apache.org/licenses/LICENSE-2.0
14
15   Unless required by applicable law or agreed to in writing, software
16   distributed under the License is distributed on an "AS IS" BASIS,
17   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18   See the License for the specific language governing permissions and
19   limitations under the License.
20   ============LICENSE_END============================================
21   ===================================================================
22   ECOMP is a trademark and service mark of AT&T Intellectual Property.
23 -->
24
25 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
26   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
27   <modelVersion>4.0.0</modelVersion>
28   <groupId>org.onap.clamp</groupId>
29   <artifactId>clds</artifactId>
30   <version>1.1.0-SNAPSHOT</version>
31   <name>clamp</name>
32
33   <parent>
34     <groupId>org.onap.oparent</groupId>
35     <artifactId>oparent</artifactId>
36     <version>1.0.0-SNAPSHOT</version>
37   </parent>
38
39   <description>
40            This project build the ONAP CLAMP JAR that contains AJSC + CLAMP code.
41
42            By Default "mvn clean install" command will execute also the unit tests
43            and the integration tests. The integration tests require a docker engine running.
44
45            If you want to skip the intergation test you can by doing:
46            "mvn clean install -DskipITs=true"
47
48            For Spring it's possible to specify the application.properties location
49            "mvn clean install -Dspring.config.location=classpath:application-test.properties"
50
51            The application.properties contains the location of the CLAMP parameters files:
52                 - org.onap.clamp.config.files.cldsReference=classpath:/clds/clds-reference.properties
53                 - org.onap.clamp.config.files.cldsPolicyConfig=classpath:/clds/clds-policy-config.properties
54                 - org.onap.clamp.config.files.cldsUsers=classpath:/clds/clds-users.json
55                 - org.onap.clamp.config.files.globalClds=classpath:/clds/globalClds.properties
56
57     </description>
58
59   <properties>
60     <maven.build.timestamp.format>yyyy.MM.dd'T'hh.mm.ss'Z'</maven.build.timestamp.format>
61     <clamp.project.version>${project.version}</clamp.project.version>
62     <clamp.build.timestamp>${maven.build.timestamp}</clamp.build.timestamp>
63     <maven.compiler.source>1.8</maven.compiler.source>
64     <maven.compiler.target>1.8</maven.compiler.target>
65     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
66     <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
67
68     <docker.mariadb.port.host>3306</docker.mariadb.port.host>
69     <sdk.java.common.logging>0.0.3-oss</sdk.java.common.logging>
70     <project.scm.id>git-server</project.scm.id>
71     <java.version>1.8</java.version>
72     <csi.logging>6.1.0.6-oss</csi.logging>
73     <sdk.camel.rest>6.2.0.6-oss</sdk.camel.rest>
74     <sdk.camunda.core>6.1.0.3-oss</sdk.camunda.core>
75
76     <sonar.language>java</sonar.language>
77     <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
78     <sonar.surefire.reportsPath>${project.build.directory}/surefire-reports</sonar.surefire.reportsPath>
79     <sonar.jacoco.reportPath>${project.build.directory}/coverage-reports/jacoco.exec</sonar.jacoco.reportPath>
80     <sonar.jacoco.itReportPath>${project.build.directory}/coverage-reports/jacoco-it.exec</sonar.jacoco.itReportPath>
81     <sonar.jacoco.reportMissing.force.zero>true</sonar.jacoco.reportMissing.force.zero>
82     <sonar.projectVersion>${project.version}</sonar.projectVersion>
83
84     <docker.push.registry>localhost:5000</docker.push.registry>
85     <skip.docker.build>true</skip.docker.build>
86     <skip.docker.push>true</skip.docker.push>
87     <skip.staging.artifacts>false</skip.staging.artifacts>
88   </properties>
89
90   <distributionManagement>
91     <repository>
92       <id>ecomp-releases</id>
93       <name>Clamp Release Repository</name>
94       <url>https://nexus.onap.org/content/repositories/releases/</url>
95     </repository>
96     <snapshotRepository>
97       <id>ecomp-snapshots</id>
98       <name>Clamp Snapshot Repository</name>
99       <url>https://nexus.onap.org/content/repositories/snapshots/</url>
100     </snapshotRepository>
101     <site>
102       <id>ecomp-site</id>
103       <url>dav:https://nexus.onap.org/content/sites/site/org/onap/clamp/${project.version}</url>
104     </site>
105   </distributionManagement>
106
107   <repositories>
108     <repository>
109       <id>central</id>
110       <name>Maven 2 repository 2</name>
111       <url>http://repo2.maven.org/maven2/</url>
112     </repository>
113     <repository>
114       <id>ecomp-releases</id>
115       <name>ONAP Release Repository</name>
116       <url>https://nexus.onap.org/content/repositories/releases/</url>
117     </repository>
118     <repository>
119       <id>ecomp-staging</id>
120       <name>ONAP Staging Repository</name>
121       <url>https://nexus.onap.org/content/repositories/staging/</url>
122     </repository>
123     <repository>
124       <id>ecomp-snapshots</id>
125       <name>ONAP Snapshot Repository</name>
126       <url>https://nexus.onap.org/content/repositories/snapshots/</url>
127       <snapshots>
128         <enabled>true</enabled>
129       </snapshots>
130       <releases>
131         <enabled>false</enabled>
132       </releases>
133     </repository>
134     <repository>
135       <id>spring-repo</id>
136       <name>Spring repo</name>
137       <url>https://artifacts.alfresco.com/nexus/content/repositories/public/</url>
138     </repository>
139     <repository>
140       <id>repository.jboss.org-public</id>
141       <name>JBoss.org Maven repository</name>
142       <url>https://repository.jboss.org/nexus/content/groups/public</url>
143     </repository>
144   </repositories>
145
146   <dependencyManagement>
147     <dependencies>
148       <dependency>
149         <!-- Import dependency management from Spring Boot -->
150         <groupId>org.springframework.boot</groupId>
151         <artifactId>spring-boot-dependencies</artifactId>
152         <version>1.4.1.RELEASE</version>
153         <type>pom</type>
154         <scope>import</scope>
155       </dependency>
156     </dependencies>
157   </dependencyManagement>
158
159   <dependencies>
160
161     <dependency>
162       <groupId>com.googlecode.json-simple</groupId>
163       <artifactId>json-simple</artifactId>
164       <version>1.1</version>
165     </dependency>
166     <dependency>
167       <groupId>org.apache.commons</groupId>
168       <artifactId>commons-vfs2</artifactId>
169       <version>2.0</version>
170     </dependency>
171
172     <dependency>
173       <groupId>org.springframework.security</groupId>
174       <artifactId>spring-security-test</artifactId>
175
176       <scope>test</scope>
177     </dependency>
178
179
180     <!-- Dependencies of parent pom start -->
181     <dependency>
182       <groupId>com.att.ajsc</groupId>
183       <artifactId>sdk-java-common-logging</artifactId>
184       <version>${sdk.java.common.logging}</version>
185     </dependency>
186     <dependency>
187       <groupId>org.springframework.boot</groupId>
188       <artifactId>spring-boot-starter-tomcat</artifactId>
189       <scope>compile</scope>
190     </dependency>
191     <dependency>
192       <groupId>org.springframework.boot</groupId>
193       <artifactId>spring-boot-starter-actuator</artifactId>
194     </dependency>
195     <dependency>
196       <groupId>org.springframework.boot</groupId>
197       <artifactId>spring-boot-starter-security</artifactId>
198     </dependency>
199     <dependency>
200       <groupId>org.springframework.boot</groupId>
201       <artifactId>spring-boot-starter-test</artifactId>
202       <scope>test</scope>
203     </dependency>
204     <dependency>
205       <groupId>joda-time</groupId>
206       <artifactId>joda-time</artifactId>
207     </dependency>
208     <dependency>
209       <groupId>org.springframework</groupId>
210       <artifactId>spring-context</artifactId>
211     </dependency>
212     <dependency>
213       <groupId>org.slf4j</groupId>
214       <artifactId>slf4j-api</artifactId>
215     </dependency>
216     <dependency>
217       <groupId>javax.ws.rs</groupId>
218       <artifactId>javax.ws.rs-api</artifactId>
219       <version>2.0</version>
220     </dependency>
221     <dependency>
222       <groupId>org.springframework</groupId>
223       <artifactId>spring-test</artifactId>
224     </dependency>
225     <dependency>
226       <groupId>junit</groupId>
227       <artifactId>junit</artifactId>
228     </dependency>
229     <dependency>
230       <groupId>org.mockito</groupId>
231       <artifactId>mockito-all</artifactId>
232       <version>1.9.5</version>
233     </dependency>
234     <dependency>
235       <groupId>commons-logging</groupId>
236       <artifactId>commons-logging</artifactId>
237       <version>1.1.1</version>
238     </dependency>
239     <dependency>
240       <groupId>org.springframework</groupId>
241       <artifactId>spring-aspects</artifactId>
242     </dependency>
243     <dependency>
244       <groupId>com.fasterxml.jackson.core</groupId>
245       <artifactId>jackson-core</artifactId>
246     </dependency>
247     <dependency>
248       <groupId>com.fasterxml.jackson.core</groupId>
249       <artifactId>jackson-databind</artifactId>
250     </dependency>
251     <dependency>
252       <groupId>org.springframework</groupId>
253       <artifactId>spring-webmvc</artifactId>
254     </dependency>
255     <dependency>
256       <groupId>org.springframework.boot</groupId>
257       <artifactId>spring-boot-starter-web</artifactId>
258     </dependency>
259     <dependency>
260       <groupId>log4j</groupId>
261       <artifactId>log4j</artifactId>
262       <version>1.2.17</version>
263     </dependency>
264     <dependency>
265       <groupId>org.springframework.boot</groupId>
266       <artifactId>spring-boot</artifactId>
267     </dependency>
268     <dependency>
269       <groupId>org.springframework.boot</groupId>
270       <artifactId>spring-boot-autoconfigure</artifactId>
271     </dependency>
272     <dependency>
273       <groupId>javax.transaction</groupId>
274       <artifactId>jta</artifactId>
275       <version>1.1</version>
276     </dependency>
277     <dependency>
278       <groupId>javax.persistence</groupId>
279       <artifactId>persistence-api</artifactId>
280       <version>1.0.2</version>
281     </dependency>
282     <dependency>
283       <groupId>org.hibernate</groupId>
284       <artifactId>hibernate-annotations</artifactId>
285       <version>3.5.6-Final</version>
286     </dependency>
287     <dependency>
288       <groupId>org.apache.geronimo.specs</groupId>
289       <artifactId>geronimo-jpa_2.0_spec</artifactId>
290       <version>1.1</version>
291     </dependency>
292     <dependency>
293       <groupId>dom4j</groupId>
294       <artifactId>dom4j</artifactId>
295       <version>1.6.1</version>
296     </dependency>
297     <!-- Dependencies of parent pom end -->
298     <dependency>
299       <groupId>com.att.ajsc</groupId>
300       <artifactId>sdk-java-camel-rest</artifactId>
301       <version>${sdk.camel.rest}</version>
302     </dependency>
303     <dependency>
304       <groupId>io.swagger</groupId>
305       <artifactId>swagger-core</artifactId>
306       <version>1.5.8</version>
307     </dependency>
308     <dependency>
309       <groupId>io.swagger</groupId>
310       <artifactId>swagger-annotations</artifactId>
311       <version>1.5.8</version>
312     </dependency>
313
314     <!-- Camunda Core -->
315     <dependency>
316       <groupId>com.att.ajsc</groupId>
317       <artifactId>sdk-java-camunda-core</artifactId>
318       <version>${sdk.camunda.core}</version>
319       <exclusions>
320         <exclusion>
321           <groupId>mysql</groupId>
322           <artifactId>mysql-connector-java</artifactId>
323         </exclusion>
324       </exclusions>
325     </dependency>
326     <!-- Spring Mail -->
327     <dependency>
328       <groupId>org.springframework</groupId>
329       <artifactId>spring-context-support</artifactId>
330     </dependency>
331     <!-- CSI Logging -->
332     <dependency>
333       <groupId>com.att.ajsc</groupId>
334       <artifactId>sdk-java-common-interceptors</artifactId>
335       <version>${csi.logging}</version>
336       <exclusions>
337         <exclusion>
338           <groupId>org.eclipse.jetty.orbit</groupId>
339           <artifactId>javax.servlet</artifactId>
340         </exclusion>
341         <exclusion>
342           <groupId>com.att.ajsc</groupId>
343           <artifactId>ajsc-core</artifactId>
344         </exclusion>
345       </exclusions>
346     </dependency>
347     <!-- CSI Logging End -->
348     <dependency>
349       <groupId>org.onap.policy.engine</groupId>
350       <artifactId>PolicyEngineAPI</artifactId>
351       <version>1.1.0</version>
352       <exclusions>
353         <exclusion>
354           <artifactId>log4j</artifactId>
355           <groupId>log4j</groupId>
356         </exclusion>
357         <exclusion>
358           <groupId>org.slf4j</groupId>
359           <artifactId>slf4j-log4j12</artifactId>
360         </exclusion>
361         <exclusion>
362           <artifactId>apache-log4j-extras</artifactId>
363           <groupId>log4j</groupId>
364         </exclusion>
365         <exclusion>
366           <artifactId>jackson-databind</artifactId>
367           <groupId>com.fasterxml.jackson.core</groupId>
368         </exclusion>
369         <exclusion>
370           <groupId>mysql</groupId>
371           <artifactId>mysql-connector-java</artifactId>
372         </exclusion>
373       </exclusions>
374     </dependency>
375     <dependency>
376       <groupId>org.onap.policy.common</groupId>
377       <artifactId>ONAP-Logging</artifactId>
378       <version>1.1.0</version>
379       <exclusions>
380         <exclusion>
381           <artifactId>log4j</artifactId>
382           <groupId>log4j</groupId>
383         </exclusion>
384         <exclusion>
385           <groupId>org.slf4j</groupId>
386           <artifactId>slf4j-log4j12</artifactId>
387         </exclusion>
388         <exclusion>
389           <artifactId>apache-log4j-extras</artifactId>
390           <groupId>log4j</groupId>
391         </exclusion>
392       </exclusions>
393     </dependency>
394
395     <dependency>
396       <groupId>org.onap.policy.drools-applications</groupId>
397       <artifactId>policy-yaml</artifactId>
398       <version>1.1.0</version>
399       <exclusions>
400         <exclusion>
401           <artifactId>log4j</artifactId>
402           <groupId>log4j</groupId>
403         </exclusion>
404         <exclusion>
405           <groupId>org.slf4j</groupId>
406           <artifactId>slf4j-log4j12</artifactId>
407         </exclusion>
408         <exclusion>
409           <artifactId>apache-log4j-extras</artifactId>
410           <groupId>log4j</groupId>
411         </exclusion>
412       </exclusions>
413     </dependency>
414     <dependency>
415       <groupId>org.onap.policy.drools-applications</groupId>
416       <artifactId>sdc</artifactId>
417       <version>1.1.0</version>
418       <exclusions>
419         <exclusion>
420           <artifactId>log4j</artifactId>
421           <groupId>log4j</groupId>
422         </exclusion>
423         <exclusion>
424           <groupId>org.slf4j</groupId>
425           <artifactId>slf4j-log4j12</artifactId>
426         </exclusion>
427         <exclusion>
428           <artifactId>apache-log4j-extras</artifactId>
429           <groupId>log4j</groupId>
430         </exclusion>
431       </exclusions>
432     </dependency>
433     <dependency>
434       <groupId>org.onap.policy.drools-applications</groupId>
435       <artifactId>aai</artifactId>
436       <version>1.1.0</version>
437       <exclusions>
438         <exclusion>
439           <artifactId>log4j</artifactId>
440           <groupId>log4j</groupId>
441         </exclusion>
442         <exclusion>
443           <groupId>org.slf4j</groupId>
444           <artifactId>slf4j-log4j12</artifactId>
445         </exclusion>
446         <exclusion>
447           <artifactId>apache-log4j-extras</artifactId>
448           <groupId>log4j</groupId>
449         </exclusion>
450       </exclusions>
451     </dependency>
452
453     <dependency>
454       <groupId>com.fasterxml.jackson.core</groupId>
455       <artifactId>jackson-databind</artifactId>
456       <version>2.6.3</version>
457     </dependency>
458     <dependency>
459       <groupId>com.fasterxml.jackson.dataformat</groupId>
460       <artifactId>jackson-dataformat-yaml</artifactId>
461       <version>2.6.3</version>
462     </dependency>
463     <dependency>
464       <groupId>org.apache.commons</groupId>
465       <artifactId>commons-csv</artifactId>
466       <version>1.3</version>
467     </dependency>
468     <dependency>
469       <groupId>org.jboss.resteasy</groupId>
470       <artifactId>resteasy-client</artifactId>
471       <version>3.0.8.Final</version>
472     </dependency>
473     <dependency>
474       <groupId>com.sun.faces</groupId>
475       <artifactId>jsf-api</artifactId>
476       <version>2.1.7</version>
477     </dependency>
478     <dependency>
479       <groupId>com.sun.faces</groupId>
480       <artifactId>jsf-impl</artifactId>
481       <version>2.1.7</version>
482     </dependency>
483
484     <!-- Remove the MYSQL connector and replace it by Mariadb -->
485     <dependency>
486       <groupId>org.mariadb.jdbc</groupId>
487       <artifactId>mariadb-java-client</artifactId>
488       <version>2.1.1</version>
489     </dependency>
490   </dependencies>
491
492   <build>
493     <finalName>clamp</finalName>
494
495     <testResources>
496       <testResource>
497         <directory>src/test/resources</directory>
498         <excludes>
499           <exclude>**/*.jks</exclude>
500         </excludes>
501         <filtering>true</filtering>
502       </testResource>
503       <testResource>
504         <directory>src/test/resources/https</directory>
505         <includes>
506           <include>**.jks</include>
507         </includes>
508         <filtering>false</filtering>
509         <targetPath>https</targetPath>
510       </testResource>
511     </testResources>
512     <resources>
513       <resource>
514         <directory>src/main/resources</directory>
515         <filtering>true</filtering>
516       </resource>
517       <resource>
518         <directory>src/main/docker</directory>
519         <includes>
520           <include>**/*</include>
521         </includes>
522         <filtering>true</filtering>
523       </resource>
524     </resources>
525
526     <plugins>
527       <plugin>
528         <groupId>org.codehaus.groovy.maven</groupId>
529         <artifactId>gmaven-plugin</artifactId>
530         <version>1.0</version>
531         <executions>
532           <execution>
533             <phase>validate</phase>
534             <goals>
535               <goal>execute</goal>
536             </goals>
537             <configuration>
538               <source>${project.basedir}/src/main/script/TagVersion.groovy</source>
539             </configuration>
540           </execution>
541         </executions>
542       </plugin>
543       <plugin>
544         <groupId>org.apache.maven.plugins</groupId>
545         <artifactId>maven-jar-plugin</artifactId>
546         <version>3.0.2</version>
547         <executions>
548           <execution>
549             <id>jar-with-only-classes</id>
550             <phase>package</phase>
551             <goals>
552               <goal>jar</goal>
553             </goals>
554             <configuration>
555               <classifier>classes</classifier>
556               <includes>
557                 <include>org/**</include>
558               </includes>
559             </configuration>
560           </execution>
561         </executions>
562       </plugin>
563       <plugin>
564         <groupId>com.github.kongchen</groupId>
565         <artifactId>swagger-maven-plugin</artifactId>
566         <version>3.1.5</version>
567         <executions>
568           <execution>
569             <phase>compile</phase>
570             <goals>
571               <goal>generate</goal>
572             </goals>
573             <configuration>
574               <apiSources>
575                 <apiSource>
576                   <locations>
577                     <location>org.onap.clamp.clds.service</location>
578                   </locations>
579                   <basePath>/</basePath>
580                   <info>
581                     <title>${project.artifactId} Service</title>
582                     <version>${project.version}</version>
583                   </info>
584                   <swaggerDirectory>${project.build.directory}/classes/META-INF/resources/icd</swaggerDirectory>
585                 </apiSource>
586               </apiSources>
587             </configuration>
588           </execution>
589         </executions>
590       </plugin>
591       <plugin>
592         <groupId>org.codehaus.mojo</groupId>
593         <artifactId>build-helper-maven-plugin</artifactId>
594         <version>3.0.0</version>
595         <executions>
596           <execution>
597             <goals>
598               <goal>attach-artifact</goal>
599             </goals>
600             <phase>package</phase>
601             <configuration>
602               <artifacts>
603                 <artifact>
604                   <file>${project.build.directory}/clamp-classes.jar</file>
605                   <type>jar</type>
606                   <classifier>classes</classifier>
607                 </artifact>
608               </artifacts>
609             </configuration>
610           </execution>
611         </executions>
612       </plugin>
613
614       <plugin>
615         <groupId>org.springframework.boot</groupId>
616         <artifactId>spring-boot-maven-plugin</artifactId>
617         <version>1.5.3.RELEASE</version>
618         <executions>
619           <execution>
620             <goals>
621               <goal>repackage</goal>
622             </goals>
623             <phase>package</phase>
624           </execution>
625         </executions>
626       </plugin>
627       <plugin>
628         <groupId>org.sonatype.plugins</groupId>
629         <artifactId>nexus-staging-maven-plugin</artifactId>
630         <version>1.6.7</version>
631         <extensions>true</extensions>
632         <configuration>
633           <nexusUrl>https://nexus.onap.org</nexusUrl>
634           <stagingProfileId>176c31dfe190a</stagingProfileId>
635           <serverId>ecomp-staging</serverId>
636           <skipNexusStagingDeployMojo>${skip.staging.artifacts}</skipNexusStagingDeployMojo>
637         </configuration>
638       </plugin>
639       <plugin>
640         <groupId>com.spotify</groupId>
641         <artifactId>docker-maven-plugin</artifactId>
642         <version>1.0.0</version>
643         <configuration>
644           <imageName>onap/clamp</imageName>
645           <dockerDirectory>src/main/docker</dockerDirectory>
646           <serverId>docker-hub</serverId>
647           <imageTags>
648             <imageTag>latest</imageTag>
649             <imageTag>${project.docker.latesttagtimestamp.version}</imageTag>
650             <imageTag>${project.docker.latesttag.version}</imageTag>
651           </imageTags>
652           <forceTags>true</forceTags>
653           <resources>
654             <resource>
655               <targetPath>/</targetPath>
656               <directory>${project.build.directory}</directory>
657               <include>${project.build.finalName}.jar</include>
658             </resource>
659             <resource>
660               <targetPath>/</targetPath>
661               <directory>${project.build.directory}</directory>
662               <include>etc/config/**</include>
663             </resource>
664             <resource>
665               <targetPath>/</targetPath>
666               <directory>${project.build.directory}</directory>
667               <include>etc/keystore/**</include>
668             </resource>
669           </resources>
670         </configuration>
671         <executions>
672           <execution>
673             <id>build-image</id>
674             <phase>package</phase>
675             <goals>
676               <goal>build</goal>
677             </goals>
678             <configuration>
679               <skipDockerBuild>${skip.docker.build}</skipDockerBuild>
680               <buildArgs>
681                 <http_proxy>${env.HTTP_PROXY}</http_proxy>
682                 <https_proxy>${env.HTTPS_PROXY}</https_proxy>
683               </buildArgs>
684             </configuration>
685           </execution>
686
687           <execution>
688             <id>tag-image-latest-timestamp</id>
689             <phase>package</phase>
690             <goals>
691               <goal>tag</goal>
692             </goals>
693             <configuration>
694               <image>onap/clamp</image>
695               <newName>${docker.push.registry}/onap/clamp:${project.docker.latesttagtimestamp.version}</newName>
696               <skipDockerTag>${skip.docker.push}</skipDockerTag>
697             </configuration>
698           </execution>
699           <execution>
700             <id>push-image-latest-timestamp</id>
701             <phase>deploy</phase>
702             <goals>
703               <goal>push</goal>
704             </goals>
705             <configuration>
706               <imageName>${docker.push.registry}/onap/clamp:${project.docker.latesttagtimestamp.version}</imageName>
707               <skipDockerPush>${skip.docker.push}</skipDockerPush>
708             </configuration>
709           </execution>
710           <execution>
711             <id>tag-image-latest</id>
712             <phase>package</phase>
713             <goals>
714               <goal>tag</goal>
715             </goals>
716             <configuration>
717               <image>onap/clamp</image>
718               <newName>${docker.push.registry}/onap/clamp:${project.docker.latesttag.version}</newName>
719               <skipDockerTag>${skip.docker.push}</skipDockerTag>
720             </configuration>
721           </execution>
722           <execution>
723             <id>push-image-latest</id>
724             <phase>deploy</phase>
725             <goals>
726               <goal>push</goal>
727             </goals>
728             <configuration>
729               <imageName>${docker.push.registry}/onap/clamp:${project.docker.latesttag.version}</imageName>
730               <skipDockerPush>${skip.docker.push}</skipDockerPush>
731             </configuration>
732           </execution>
733           <execution>
734             <id>tag-image</id>
735             <phase>package</phase>
736             <goals>
737               <goal>tag</goal>
738             </goals>
739             <configuration>
740               <image>onap/clamp</image>
741               <newName>${docker.push.registry}/onap/clamp:latest</newName>
742               <skipDockerTag>${skip.docker.push}</skipDockerTag>
743             </configuration>
744           </execution>
745           <execution>
746             <id>push-image</id>
747             <phase>deploy</phase>
748             <goals>
749               <goal>push</goal>
750             </goals>
751             <configuration>
752               <imageName>${docker.push.registry}/onap/clamp:latest</imageName>
753               <skipDockerPush>${skip.docker.push}</skipDockerPush>
754             </configuration>
755           </execution>
756         </executions>
757       </plugin>
758       <plugin>
759         <groupId>org.apache.maven.plugins</groupId>
760         <artifactId>maven-surefire-plugin</artifactId>
761         <version>2.19.1</version>
762         <configuration>
763           <forkCount>1</forkCount>
764           <reuseForks>false</reuseForks>
765         </configuration>
766       </plugin>
767
768       <plugin>
769         <groupId>org.apache.maven.plugins</groupId>
770         <artifactId>maven-failsafe-plugin</artifactId>
771         <version>2.16</version>
772
773         <executions>
774           <execution>
775             <id>integration-tests</id>
776             <goals>
777               <goal>integration-test</goal>
778               <goal>verify</goal>
779             </goals>
780             <configuration>
781             <includes>
782               <include>**/*ItCase.java</include>
783             </includes>
784               <forkCount>1</forkCount>
785               <reuseForks>false</reuseForks>
786             </configuration>
787           </execution>
788         </executions>
789
790       </plugin>
791       <plugin>
792         <groupId>io.fabric8</groupId>
793         <artifactId>docker-maven-plugin</artifactId>
794         <version>0.16.5</version>
795         <configuration>
796           <verbose>true</verbose>
797           <apiVersion>1.23</apiVersion>
798           <images>
799             <image>
800               <name>mariadb:10.1.11</name>
801               <alias>mariadb</alias>
802               <run>
803                 <env>
804                   <MYSQL_ROOT_PASSWORD>strong_pitchou</MYSQL_ROOT_PASSWORD>
805                 </env>
806                 <hostname>mariadb</hostname>
807                 <volumes>
808                   <bind>
809                     <volume>${project.basedir}/extra/sql/:/docker-entrypoint-initdb.d</volume>
810                     <volume>${project.basedir}/extra/docker/mariadb/conf1:/etc/mysql/conf.d</volume>
811                   </bind>
812                 </volumes>
813                 <wait>
814                   <log>socket: '/var/run/mysqld/mysqld.sock'  port: 3306  mariadb.org binary distribution</log>
815                   <time>600000</time>
816                 </wait>
817                 <ports>
818                   <port>${docker.mariadb.port.host}:3306</port>
819                 </ports>
820               </run>
821             </image>
822           </images>
823           <skip>${skipITs}</skip>
824         </configuration>
825
826         <executions>
827           <execution>
828             <id>mariadb-start-for-it</id>
829             <phase>pre-integration-test</phase>
830             <goals>
831               <goal>start</goal>
832             </goals>
833             <configuration>
834               <skip>${skipITs}</skip>
835             </configuration>
836           </execution>
837           <execution>
838             <id>mariadb-stop-for-it</id>
839             <phase>post-integration-test</phase>
840             <goals>
841               <goal>stop</goal>
842             </goals>
843             <configuration>
844               <skip>${skipITs}</skip>
845             </configuration>
846           </execution>
847         </executions>
848       </plugin>
849
850       <plugin>
851         <groupId>org.jacoco</groupId>
852         <artifactId>jacoco-maven-plugin</artifactId>
853         <version>0.7.7.201606060606</version>
854         <configuration>
855           <dumpOnExit>true</dumpOnExit>
856           <includes>
857             <include>org.onap.clamp.*</include>
858           </includes>
859         </configuration>
860         <executions>
861           <execution>
862             <id>pre-unit-test</id>
863             <goals>
864               <goal>prepare-agent</goal>
865             </goals>
866             <configuration>
867               <destFile>${project.build.directory}/coverage-reports/jacoco.exec</destFile>
868               <!-- <append>true</append> -->
869             </configuration>
870           </execution>
871           <execution>
872             <id>pre-integration-test</id>
873             <phase>pre-integration-test</phase>
874             <goals>
875               <goal>prepare-agent</goal>
876             </goals>
877             <configuration>
878               <destFile>${project.build.directory}/coverage-reports/jacoco-it.exec</destFile>
879               <!-- <append>true</append> -->
880             </configuration>
881           </execution>
882           <execution>
883             <goals>
884               <goal>merge</goal>
885             </goals>
886             <phase>post-integration-test</phase>
887             <configuration>
888               <fileSets>
889                 <fileSet implementation="org.apache.maven.shared.model.fileset.FileSet">
890                   <directory>${project.build.directory}/coverage-reports</directory>
891                   <includes>
892                     <include>*.exec</include>
893                   </includes>
894                 </fileSet>
895               </fileSets>
896               <destFile>${project.build.directory}/jacoco-dev.exec</destFile>
897             </configuration>
898           </execution>
899         </executions>
900       </plugin>
901
902       <!-- This plugin will be useful when we will have multi-modules project -->
903       <plugin>
904         <groupId>org.codehaus.mojo</groupId>
905         <artifactId>versions-maven-plugin</artifactId>
906         <version>1.3.1</version>
907       </plugin>
908     </plugins>
909   </build>
910   <profiles>
911     <profile>
912       <id>docker</id>
913       <properties>
914         <skip.staging.artifacts>true</skip.staging.artifacts>
915         <skip.docker.build>false</skip.docker.build>
916         <skip.docker.tag>false</skip.docker.tag>
917         <skip.docker.push>false</skip.docker.push>
918       </properties>
919     </profile>
920   </profiles>
921 </project>