Update branch version
[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.1-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     <dependency>
395       <groupId>org.onap.policy.engine</groupId>
396       <artifactId>PolicyEngineUtils</artifactId>
397       <version>1.1.0</version>
398       <exclusions>
399         <exclusion>
400           <artifactId>log4j</artifactId>
401           <groupId>log4j</groupId>
402         </exclusion>
403         <exclusion>
404           <groupId>org.slf4j</groupId>
405           <artifactId>slf4j-log4j12</artifactId>
406         </exclusion>
407         <exclusion>
408           <artifactId>apache-log4j-extras</artifactId>
409           <groupId>log4j</groupId>
410         </exclusion>
411       </exclusions>
412     </dependency>
413     <dependency>
414       <groupId>org.onap.policy.drools-applications</groupId>
415       <artifactId>policy-yaml</artifactId>
416       <version>1.1.0</version>
417       <exclusions>
418         <exclusion>
419           <artifactId>log4j</artifactId>
420           <groupId>log4j</groupId>
421         </exclusion>
422         <exclusion>
423           <groupId>org.slf4j</groupId>
424           <artifactId>slf4j-log4j12</artifactId>
425         </exclusion>
426         <exclusion>
427           <artifactId>apache-log4j-extras</artifactId>
428           <groupId>log4j</groupId>
429         </exclusion>
430       </exclusions>
431     </dependency>
432     <dependency>
433       <groupId>org.onap.policy.drools-applications</groupId>
434       <artifactId>sdc</artifactId>
435       <version>1.1.0</version>
436       <exclusions>
437         <exclusion>
438           <artifactId>log4j</artifactId>
439           <groupId>log4j</groupId>
440         </exclusion>
441         <exclusion>
442           <groupId>org.slf4j</groupId>
443           <artifactId>slf4j-log4j12</artifactId>
444         </exclusion>
445         <exclusion>
446           <artifactId>apache-log4j-extras</artifactId>
447           <groupId>log4j</groupId>
448         </exclusion>
449       </exclusions>
450     </dependency>
451     <dependency>
452       <groupId>org.onap.policy.drools-applications</groupId>
453       <artifactId>aai</artifactId>
454       <version>1.1.0</version>
455       <exclusions>
456         <exclusion>
457           <artifactId>log4j</artifactId>
458           <groupId>log4j</groupId>
459         </exclusion>
460         <exclusion>
461           <groupId>org.slf4j</groupId>
462           <artifactId>slf4j-log4j12</artifactId>
463         </exclusion>
464         <exclusion>
465           <artifactId>apache-log4j-extras</artifactId>
466           <groupId>log4j</groupId>
467         </exclusion>
468       </exclusions>
469     </dependency>
470     <dependency>
471       <groupId>com.fasterxml.jackson.core</groupId>
472       <artifactId>jackson-databind</artifactId>
473       <version>2.6.3</version>
474     </dependency>
475     <dependency>
476       <groupId>com.fasterxml.jackson.dataformat</groupId>
477       <artifactId>jackson-dataformat-yaml</artifactId>
478       <version>2.6.3</version>
479     </dependency>
480     <dependency>
481       <groupId>org.apache.commons</groupId>
482       <artifactId>commons-csv</artifactId>
483       <version>1.3</version>
484     </dependency>
485     <dependency>
486       <groupId>org.jboss.resteasy</groupId>
487       <artifactId>resteasy-client</artifactId>
488       <version>3.0.8.Final</version>
489     </dependency>
490     <dependency>
491       <groupId>com.sun.faces</groupId>
492       <artifactId>jsf-api</artifactId>
493       <version>2.1.7</version>
494     </dependency>
495     <dependency>
496       <groupId>com.sun.faces</groupId>
497       <artifactId>jsf-impl</artifactId>
498       <version>2.1.7</version>
499     </dependency>
500
501     <!-- Remove the MYSQL connector and replace it by Mariadb -->
502     <dependency>
503       <groupId>org.mariadb.jdbc</groupId>
504       <artifactId>mariadb-java-client</artifactId>
505       <version>2.1.1</version>
506     </dependency>
507   </dependencies>
508
509   <build>
510     <finalName>clamp</finalName>
511
512     <testResources>
513       <testResource>
514         <directory>src/test/resources</directory>
515         <excludes>
516           <exclude>**/*.jks</exclude>
517         </excludes>
518         <filtering>true</filtering>
519       </testResource>
520       <testResource>
521         <directory>src/test/resources/https</directory>
522         <includes>
523           <include>**.jks</include>
524         </includes>
525         <filtering>false</filtering>
526         <targetPath>https</targetPath>
527       </testResource>
528     </testResources>
529     <resources>
530       <resource>
531         <directory>src/main/resources</directory>
532         <filtering>true</filtering>
533       </resource>
534       <resource>
535         <directory>src/main/docker</directory>
536         <includes>
537           <include>**/*</include>
538         </includes>
539         <filtering>true</filtering>
540       </resource>
541     </resources>
542
543     <plugins>
544       <plugin>
545         <groupId>org.codehaus.groovy.maven</groupId>
546         <artifactId>gmaven-plugin</artifactId>
547         <version>1.0</version>
548         <executions>
549           <execution>
550             <phase>validate</phase>
551             <goals>
552               <goal>execute</goal>
553             </goals>
554             <configuration>
555               <source>${project.basedir}/src/main/script/TagVersion.groovy</source>
556             </configuration>
557           </execution>
558         </executions>
559       </plugin>
560       <plugin>
561         <groupId>org.apache.maven.plugins</groupId>
562         <artifactId>maven-jar-plugin</artifactId>
563         <version>3.0.2</version>
564         <executions>
565           <execution>
566             <id>jar-with-only-classes</id>
567             <phase>package</phase>
568             <goals>
569               <goal>jar</goal>
570             </goals>
571             <configuration>
572               <classifier>classes</classifier>
573               <includes>
574                 <include>org/**</include>
575               </includes>
576             </configuration>
577           </execution>
578         </executions>
579       </plugin>
580       <plugin>
581         <groupId>com.github.kongchen</groupId>
582         <artifactId>swagger-maven-plugin</artifactId>
583         <version>3.1.5</version>
584         <executions>
585           <execution>
586             <phase>compile</phase>
587             <goals>
588               <goal>generate</goal>
589             </goals>
590             <configuration>
591               <apiSources>
592                 <apiSource>
593                   <locations>
594                     <location>org.onap.clamp.clds.service</location>
595                   </locations>
596                   <basePath>/</basePath>
597                   <info>
598                     <title>${project.artifactId} Service</title>
599                     <version>${project.version}</version>
600                   </info>
601                   <swaggerDirectory>${project.build.directory}/classes/META-INF/resources/icd</swaggerDirectory>
602                 </apiSource>
603               </apiSources>
604             </configuration>
605           </execution>
606         </executions>
607       </plugin>
608       <plugin>
609         <groupId>org.codehaus.mojo</groupId>
610         <artifactId>build-helper-maven-plugin</artifactId>
611         <version>3.0.0</version>
612         <executions>
613           <execution>
614             <goals>
615               <goal>attach-artifact</goal>
616             </goals>
617             <phase>package</phase>
618             <configuration>
619               <artifacts>
620                 <artifact>
621                   <file>${project.build.directory}/clamp-classes.jar</file>
622                   <type>jar</type>
623                   <classifier>classes</classifier>
624                 </artifact>
625               </artifacts>
626             </configuration>
627           </execution>
628         </executions>
629       </plugin>
630
631       <plugin>
632         <groupId>org.springframework.boot</groupId>
633         <artifactId>spring-boot-maven-plugin</artifactId>
634         <version>1.5.3.RELEASE</version>
635         <executions>
636           <execution>
637             <goals>
638               <goal>repackage</goal>
639             </goals>
640             <phase>package</phase>
641           </execution>
642         </executions>
643       </plugin>
644       <plugin>
645         <groupId>org.sonatype.plugins</groupId>
646         <artifactId>nexus-staging-maven-plugin</artifactId>
647         <version>1.6.7</version>
648         <extensions>true</extensions>
649         <configuration>
650           <nexusUrl>https://nexus.onap.org</nexusUrl>
651           <stagingProfileId>176c31dfe190a</stagingProfileId>
652           <serverId>ecomp-staging</serverId>
653           <skipNexusStagingDeployMojo>${skip.staging.artifacts}</skipNexusStagingDeployMojo>
654         </configuration>
655       </plugin>
656       <plugin>
657         <groupId>com.spotify</groupId>
658         <artifactId>docker-maven-plugin</artifactId>
659         <version>1.0.0</version>
660         <configuration>
661           <imageName>onap/clamp</imageName>
662           <dockerDirectory>src/main/docker</dockerDirectory>
663           <serverId>docker-hub</serverId>
664           <imageTags>
665             <imageTag>latest</imageTag>
666             <imageTag>${project.docker.latesttagtimestamp.version}</imageTag>
667             <imageTag>${project.docker.latesttag.version}</imageTag>
668           </imageTags>
669           <forceTags>true</forceTags>
670           <resources>
671             <resource>
672               <targetPath>/</targetPath>
673               <directory>${project.build.directory}</directory>
674               <include>${project.build.finalName}.jar</include>
675             </resource>
676             <resource>
677               <targetPath>/</targetPath>
678               <directory>${project.build.directory}</directory>
679               <include>etc/config/**</include>
680             </resource>
681             <resource>
682               <targetPath>/</targetPath>
683               <directory>${project.build.directory}</directory>
684               <include>etc/keystore/**</include>
685             </resource>
686           </resources>
687         </configuration>
688         <executions>
689           <execution>
690             <id>build-image</id>
691             <phase>package</phase>
692             <goals>
693               <goal>build</goal>
694             </goals>
695             <configuration>
696               <skipDockerBuild>${skip.docker.build}</skipDockerBuild>
697               <buildArgs>
698                 <http_proxy>${env.HTTP_PROXY}</http_proxy>
699                 <https_proxy>${env.HTTPS_PROXY}</https_proxy>
700               </buildArgs>
701             </configuration>
702           </execution>
703
704           <execution>
705             <id>tag-image-latest-timestamp</id>
706             <phase>package</phase>
707             <goals>
708               <goal>tag</goal>
709             </goals>
710             <configuration>
711               <image>onap/clamp</image>
712               <newName>${docker.push.registry}/onap/clamp:${project.docker.latesttagtimestamp.version}</newName>
713               <skipDockerTag>${skip.docker.push}</skipDockerTag>
714             </configuration>
715           </execution>
716           <execution>
717             <id>push-image-latest-timestamp</id>
718             <phase>deploy</phase>
719             <goals>
720               <goal>push</goal>
721             </goals>
722             <configuration>
723               <imageName>${docker.push.registry}/onap/clamp:${project.docker.latesttagtimestamp.version}</imageName>
724               <skipDockerPush>${skip.docker.push}</skipDockerPush>
725             </configuration>
726           </execution>
727           <execution>
728             <id>tag-image-latest</id>
729             <phase>package</phase>
730             <goals>
731               <goal>tag</goal>
732             </goals>
733             <configuration>
734               <image>onap/clamp</image>
735               <newName>${docker.push.registry}/onap/clamp:${project.docker.latesttag.version}</newName>
736               <skipDockerTag>${skip.docker.push}</skipDockerTag>
737             </configuration>
738           </execution>
739           <execution>
740             <id>push-image-latest</id>
741             <phase>deploy</phase>
742             <goals>
743               <goal>push</goal>
744             </goals>
745             <configuration>
746               <imageName>${docker.push.registry}/onap/clamp:${project.docker.latesttag.version}</imageName>
747               <skipDockerPush>${skip.docker.push}</skipDockerPush>
748             </configuration>
749           </execution>
750           <execution>
751             <id>tag-image</id>
752             <phase>package</phase>
753             <goals>
754               <goal>tag</goal>
755             </goals>
756             <configuration>
757               <image>onap/clamp</image>
758               <newName>${docker.push.registry}/onap/clamp:latest</newName>
759               <skipDockerTag>${skip.docker.push}</skipDockerTag>
760             </configuration>
761           </execution>
762           <execution>
763             <id>push-image</id>
764             <phase>deploy</phase>
765             <goals>
766               <goal>push</goal>
767             </goals>
768             <configuration>
769               <imageName>${docker.push.registry}/onap/clamp:latest</imageName>
770               <skipDockerPush>${skip.docker.push}</skipDockerPush>
771             </configuration>
772           </execution>
773         </executions>
774       </plugin>
775       <plugin>
776         <groupId>org.apache.maven.plugins</groupId>
777         <artifactId>maven-surefire-plugin</artifactId>
778         <version>2.19.1</version>
779         <configuration>
780           <forkCount>1</forkCount>
781           <reuseForks>false</reuseForks>
782         </configuration>
783       </plugin>
784
785       <plugin>
786         <groupId>org.apache.maven.plugins</groupId>
787         <artifactId>maven-failsafe-plugin</artifactId>
788         <version>2.16</version>
789
790         <executions>
791           <execution>
792             <id>integration-tests</id>
793             <goals>
794               <goal>integration-test</goal>
795               <goal>verify</goal>
796             </goals>
797             <configuration>
798             <includes>
799               <include>**/*ItCase.java</include>
800             </includes>
801               <forkCount>1</forkCount>
802               <reuseForks>false</reuseForks>
803             </configuration>
804           </execution>
805         </executions>
806
807       </plugin>
808       <plugin>
809         <groupId>io.fabric8</groupId>
810         <artifactId>docker-maven-plugin</artifactId>
811         <version>0.16.5</version>
812         <configuration>
813           <verbose>true</verbose>
814           <apiVersion>1.23</apiVersion>
815           <images>
816             <image>
817               <name>mariadb:10.1.11</name>
818               <alias>mariadb</alias>
819               <run>
820                 <env>
821                   <MYSQL_ROOT_PASSWORD>strong_pitchou</MYSQL_ROOT_PASSWORD>
822                 </env>
823                 <hostname>mariadb</hostname>
824                 <volumes>
825                   <bind>
826                     <volume>${project.basedir}/extra/sql/:/docker-entrypoint-initdb.d</volume>
827                     <volume>${project.basedir}/extra/docker/mariadb/conf1:/etc/mysql/conf.d</volume>
828                   </bind>
829                 </volumes>
830                 <wait>
831                   <log>socket: '/var/run/mysqld/mysqld.sock'  port: 3306  mariadb.org binary distribution</log>
832                   <time>600000</time>
833                 </wait>
834                 <ports>
835                   <port>${docker.mariadb.port.host}:3306</port>
836                 </ports>
837               </run>
838             </image>
839           </images>
840           <skip>${skipITs}</skip>
841         </configuration>
842
843         <executions>
844           <execution>
845             <id>mariadb-start-for-it</id>
846             <phase>pre-integration-test</phase>
847             <goals>
848               <goal>start</goal>
849             </goals>
850             <configuration>
851               <skip>${skipITs}</skip>
852             </configuration>
853           </execution>
854           <execution>
855             <id>mariadb-stop-for-it</id>
856             <phase>post-integration-test</phase>
857             <goals>
858               <goal>stop</goal>
859             </goals>
860             <configuration>
861               <skip>${skipITs}</skip>
862             </configuration>
863           </execution>
864         </executions>
865       </plugin>
866
867       <plugin>
868         <groupId>org.jacoco</groupId>
869         <artifactId>jacoco-maven-plugin</artifactId>
870         <version>0.7.7.201606060606</version>
871         <configuration>
872           <dumpOnExit>true</dumpOnExit>
873           <includes>
874             <include>org.onap.clamp.*</include>
875           </includes>
876         </configuration>
877         <executions>
878           <execution>
879             <id>pre-unit-test</id>
880             <goals>
881               <goal>prepare-agent</goal>
882             </goals>
883             <configuration>
884               <destFile>${project.build.directory}/coverage-reports/jacoco.exec</destFile>
885               <!-- <append>true</append> -->
886             </configuration>
887           </execution>
888           <execution>
889             <id>pre-integration-test</id>
890             <phase>pre-integration-test</phase>
891             <goals>
892               <goal>prepare-agent</goal>
893             </goals>
894             <configuration>
895               <destFile>${project.build.directory}/coverage-reports/jacoco-it.exec</destFile>
896               <!-- <append>true</append> -->
897             </configuration>
898           </execution>
899           <execution>
900             <goals>
901               <goal>merge</goal>
902             </goals>
903             <phase>post-integration-test</phase>
904             <configuration>
905               <fileSets>
906                 <fileSet implementation="org.apache.maven.shared.model.fileset.FileSet">
907                   <directory>${project.build.directory}/coverage-reports</directory>
908                   <includes>
909                     <include>*.exec</include>
910                   </includes>
911                 </fileSet>
912               </fileSets>
913               <destFile>${project.build.directory}/jacoco-dev.exec</destFile>
914             </configuration>
915           </execution>
916         </executions>
917       </plugin>
918
919       <!-- This plugin will be useful when we will have multi-modules project -->
920       <plugin>
921         <groupId>org.codehaus.mojo</groupId>
922         <artifactId>versions-maven-plugin</artifactId>
923         <version>1.3.1</version>
924       </plugin>
925     </plugins>
926   </build>
927   <profiles>
928     <profile>
929       <id>docker</id>
930       <properties>
931         <skip.staging.artifacts>true</skip.staging.artifacts>
932         <skip.docker.build>false</skip.docker.build>
933         <skip.docker.tag>false</skip.docker.tag>
934         <skip.docker.push>false</skip.docker.push>
935       </properties>
936     </profile>
937   </profiles>
938 </project>