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