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