Adding maven-deploy-plugin with deployeAtEnd true
[ccsdk/parent.git] / oparent / 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" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
3     <modelVersion>4.0.0</modelVersion>
4
5     <parent>
6         <groupId>org.onap.oparent</groupId>
7         <artifactId>oparent</artifactId>
8         <version>3.1.0</version>
9         <relativePath/>
10     </parent>
11
12     <groupId>org.onap.ccsdk.parent</groupId>
13     <artifactId>oparent</artifactId>
14     <version>2.1.1-SNAPSHOT</version>
15     <packaging>pom</packaging>
16
17     <name>ONAP :: ${project.groupId} :: ${project.artifactId}</name>
18     <description>Root POM to be used in place of oparent for CCSDK based projects</description>
19     <url>http://wiki.onap.org</url>
20     <organization>
21         <name>ONAP</name>
22     </organization>
23
24     <issueManagement>
25         <system>JIRA</system>
26         <url>https://jira.onap.org/</url>
27     </issueManagement>
28
29     <properties>
30         <!-- Sonar properties -->
31         <sonar.scanner.version>3.7.0.1746</sonar.scanner.version>
32         <sonar-jacoco-listeners.version>3.2</sonar-jacoco-listeners.version>
33         <sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
34         <!-- Default Sonar configuration -->
35         <sonar.coverage.jacoco.xmlReportPaths>${project.reporting.outputDirectory}/jacoco-ut/jacoco.xml,${project.reporting.outputDirectory}/jacoco-it/jacoco.xml</sonar.coverage.jacoco.xmlReportPaths>
36         <!-- Note: This list should match jacoco-maven-plugin's exclusion list below -->
37         <sonar.exclusions>**/gen/**,**/generated-sources/**,**/yang-gen**,**/pax/**</sonar.exclusions>
38
39         <!-- Jacoco properties -->
40         <jacoco.version>0.8.5</jacoco.version>
41         <!-- ONAP repositories -->
42         <onap.nexus.url>https://nexus.onap.org</onap.nexus.url>
43         <onap.nexus.host>nexus.onap.org</onap.nexus.host>
44         <onap.nexus.port>443</onap.nexus.port>
45         <onap.nexus.protocol>https</onap.nexus.protocol>
46         <onap.nexus.public-url>https://nexus.onap.org/content/groups/public</onap.nexus.public-url>
47         <onap.nexus.staging-url>https://nexus.onap.org/content/groups/staging</onap.nexus.staging-url>
48         <onap.nexus.release-url>https://nexus.onap.org/content/repositories/releases</onap.nexus.release-url>
49         <onap.nexus.snapshot-url>https://nexus.onap.org/content/repositories/snapshots</onap.nexus.snapshot-url>
50         <onap.nexus.staging.server-id>ecomp-staging</onap.nexus.staging.server-id>
51         <onap.nexus.staging.profile-id>176c31dfe190a</onap.nexus.staging.profile-id>
52
53         <java.version.source>1.8</java.version.source>
54         <java.version.target>1.8</java.version.target>
55         <bundle.plugin.version>2.5.0</bundle.plugin.version>
56         <checkstyle.skip>true</checkstyle.skip>
57
58         <mariadb.connector.version>2.1.1</mariadb.connector.version>
59         <fasterxml.jackson.version>2.10.0</fasterxml.jackson.version>
60         <velocity.version>2.0</velocity.version>
61
62         <dmaap.listener.version>1.1.5</dmaap.listener.version>
63         <sdc.client.version>1.4.1</sdc.client.version>
64         <sdc.tosca.version>1.6.5</sdc.tosca.version>
65
66     </properties>
67
68     <dependencyManagement>
69         <dependencies>
70             <dependency>
71                 <groupId>org.onap.ccsdk.parent</groupId>
72                 <artifactId>dependencies-bom</artifactId>
73                 <version>2.1.1-SNAPSHOT</version>
74                 <type>pom</type>
75                 <scope>import</scope>
76             </dependency>
77             <dependency>
78                 <groupId>org.springframework.boot</groupId>
79                 <artifactId>spring-boot-dependencies</artifactId>
80                 <version>2.3.5.RELEASE</version>
81                 <type>pom</type>
82                 <scope>import</scope>
83             </dependency>
84
85             <dependency>
86                 <groupId>org.onap.sdc.sdc-distribution-client</groupId>
87                 <artifactId>sdc-distribution-client</artifactId>
88                 <version>${sdc.client.version}</version>
89                 <scope>compile</scope>
90             </dependency>
91             <dependency>
92                 <groupId>org.onap.sdc.sdc-tosca</groupId>
93                 <artifactId>sdc-tosca</artifactId>
94                 <version>${sdc.tosca.version}</version>
95                 <scope>compile</scope>
96             </dependency>
97             <dependency>
98                 <groupId>org.onap.dmaap.messagerouter.dmaapclient</groupId>
99                 <artifactId>dmaapClient</artifactId>
100                 <version>${dmaap.listener.version}</version>
101             </dependency>
102         </dependencies>
103     </dependencyManagement>
104     <dependencies>
105         <dependency>
106             <groupId>javax.annotation</groupId>
107             <artifactId>javax.annotation-api</artifactId>
108             <version>1.3.2</version>
109         </dependency>
110         <dependency>
111             <groupId>junit</groupId>
112             <artifactId>junit</artifactId>
113             <scope>test</scope>
114         </dependency>
115         <dependency>
116             <groupId>org.slf4j</groupId>
117             <artifactId>slf4j-api</artifactId>
118             <scope>provided</scope>
119         </dependency>
120         <dependency>
121             <groupId>org.slf4j</groupId>
122             <artifactId>slf4j-simple</artifactId>
123             <scope>test</scope>
124         </dependency>
125
126         <dependency>
127             <groupId>org.mockito</groupId>
128             <artifactId>mockito-core</artifactId>
129             <version>1.10.19</version>
130             <scope>test</scope>
131         </dependency>
132         <dependency>
133             <groupId>org.testng</groupId>
134             <artifactId>testng</artifactId>
135             <version>6.11</version>
136             <scope>test</scope>
137         </dependency>
138     </dependencies>
139
140     <repositories>
141         <repository>
142             <id>onap-public</id>
143             <url>https://nexus.onap.org/content/groups/public</url>
144             <releases>
145                 <enabled>true</enabled>
146                 <updatePolicy>never</updatePolicy>
147             </releases>
148             <snapshots>
149                 <enabled>true</enabled>
150                 <updatePolicy>always</updatePolicy>
151             </snapshots>
152         </repository>
153         <repository>
154             <id>onap-staging</id>
155             <url>https://nexus.onap.org/content/groups/staging</url>
156             <releases>
157                 <enabled>true</enabled>
158                 <updatePolicy>never</updatePolicy>
159             </releases>
160             <snapshots>
161                 <enabled>true</enabled>
162                 <updatePolicy>always</updatePolicy>
163             </snapshots>
164         </repository>
165         <repository>
166             <id>ecomp-release</id>
167             <name>onap-repository-releases</name>
168             <url>https://nexus.onap.org/content/repositories/releases</url>
169             <releases>
170                 <enabled>true</enabled>
171                 <updatePolicy>never</updatePolicy>
172             </releases>
173             <snapshots>
174                 <enabled>false</enabled>
175             </snapshots>
176         </repository>
177         <repository>
178             <id>ecomp-snapshot</id>
179             <name>onap-repository-snapshots</name>
180             <url>https://nexus.onap.org/content/repositories/snapshots</url>
181             <releases>
182                 <enabled>false</enabled>
183             </releases>
184             <snapshots>
185                 <enabled>true</enabled>
186             </snapshots>
187         </repository>
188     </repositories>
189
190     <build>
191         <pluginManagement>
192             <plugins>
193                 <plugin>
194                     <groupId>org.apache.maven.plugins</groupId>
195                     <artifactId>maven-deploy-plugin</artifactId>
196                     <!-- This version supports the "deployAtEnd" parameter -->
197                     <version>2.8</version>
198                     <configuration>
199                         <skip/>
200                         <deployAtEnd>true</deployAtEnd>
201                     </configuration>
202                 </plugin>
203                 <plugin>
204                     <groupId>org.apache.maven.plugins</groupId>
205                     <artifactId>maven-resources-plugin</artifactId>
206                     <version>3.2.0</version>
207                 </plugin>
208                 <plugin>
209                     <groupId>org.antlr</groupId>
210                     <artifactId>antlr4-maven-plugin</artifactId>
211                     <version>4.7.2</version>
212                 </plugin>
213             </plugins>
214         </pluginManagement>
215         <plugins>
216             <!-- Jacoco / Sonar -->
217             <plugin>
218                 <groupId>org.jacoco</groupId>
219                 <artifactId>jacoco-maven-plugin</artifactId>
220                 <version>${jacoco.version}</version>
221                 <executions>
222                     <execution>
223                         <id>pre-unit-test</id>
224                         <goals>
225                             <goal>prepare-agent</goal>
226                         </goals>
227                         <configuration>
228                             <!-- Sets the path to the file which contains the execution data. -->
229                             <destFile>${project.build.directory}/code-coverage/jacoco-ut.exec</destFile>
230                             <!-- Sets the name of the property containing the settings for JaCoCo
231                                                                  runtime agent. -->
232                             <propertyName>surefireArgLine</propertyName>
233                         </configuration>
234                     </execution>
235                     <!-- Ensures that the code coverage report for unit tests is created
236                                                  after unit tests have been run. -->
237                     <execution>
238                         <id>post-unit-test</id>
239                         <phase>test</phase>
240                         <goals>
241                             <goal>report</goal>
242                         </goals>
243                         <configuration>
244                             <!-- Sets the path to the file which contains the execution data. -->
245                             <dataFile>${project.build.directory}/code-coverage/jacoco-ut.exec</dataFile>
246                             <!-- Sets the output directory for the code coverage report. -->
247                             <outputDirectory>${project.reporting.outputDirectory}/jacoco-ut</outputDirectory>
248                         </configuration>
249                     </execution>
250                     <execution>
251                         <id>pre-integration-test</id>
252                         <phase>pre-integration-test</phase>
253                         <goals>
254                             <goal>prepare-agent</goal>
255                         </goals>
256                         <configuration>
257                             <!-- Sets the path to the file which contains the execution data. -->
258                             <destFile>${project.build.directory}/code-coverage/jacoco-it.exec</destFile>
259                             <!-- Sets the name of the property containing the settings for JaCoCo
260                                                                  runtime agent. -->
261                             <propertyName>failsafeArgLine</propertyName>
262                         </configuration>
263                     </execution>
264                     <!-- Ensures that the code coverage report for integration tests after
265                                                  integration tests have been run. -->
266                     <execution>
267                         <id>post-integration-test</id>
268                         <phase>post-integration-test</phase>
269                         <goals>
270                             <goal>report</goal>
271                         </goals>
272                         <configuration>
273                             <!-- Sets the path to the file which contains the execution data. -->
274                             <dataFile>${project.build.directory}/code-coverage/jacoco-it.exec</dataFile>
275                             <!-- Sets the output directory for the code coverage report. -->
276                             <outputDirectory>${project.reporting.outputDirectory}/jacoco-it</outputDirectory>
277                         </configuration>
278                     </execution>
279                     <execution>
280                         <id>default-prepare-agent</id>
281                         <goals>
282                             <goal>prepare-agent</goal>
283                         </goals>
284                     </execution>
285                     <execution>
286                         <id>default-report</id>
287                         <phase>prepare-package</phase>
288                         <goals>
289                             <goal>report</goal>
290                         </goals>
291                     </execution>
292                     <execution>
293                         <id>default-check</id>
294                         <goals>
295                             <goal>check</goal>
296                         </goals>
297                         <configuration>
298                             <rules>
299                                 <rule>
300                                     <element>PACKAGE</element>
301                                     <limits>
302                                         <limit>
303                                             <counter>COMPLEXITY</counter>
304                                             <value>COVEREDRATIO</value>
305                                             <minimum>0.0</minimum>
306                                         </limit>
307                                     </limits>
308                                 </rule>
309                             </rules>
310                         </configuration>
311                     </execution>
312                 </executions>
313             </plugin>
314             <plugin>
315                 <groupId>org.codehaus.mojo</groupId>
316                 <artifactId>versions-maven-plugin</artifactId>
317                 <version>2.5</version>
318                 <configuration>
319                     <processAllModules>true</processAllModules>
320                 </configuration>
321             </plugin>
322             <plugin>
323                 <groupId>org.apache.felix</groupId>
324                 <artifactId>maven-bundle-plugin</artifactId>
325                 <version>4.2.1</version>
326                 <extensions>true</extensions>
327             </plugin>
328             <plugin>
329                 <groupId>org.eclipse.m2e</groupId>
330                 <artifactId>lifecycle-mapping</artifactId>
331                 <version>1.0.0</version>
332                 <configuration>
333                     <lifecycleMappingMetadata>
334                         <pluginExecutions>
335                             <pluginExecution>
336                                 <pluginExecutionFilter>
337                                     <groupId>org.apache.felix</groupId>
338                                     <artifactId>maven-bundle-plugin</artifactId>
339                                     <versionRange>[1.0,)</versionRange>
340                                     <goals>
341                                         <goal>manifest</goal>
342                                     </goals>
343                                 </pluginExecutionFilter>
344                                 <action>
345                                     <execute />
346                                     <ignore />
347                                 </action>
348                             </pluginExecution>
349                         </pluginExecutions>
350                     </lifecycleMappingMetadata>
351                 </configuration>
352             </plugin>
353         </plugins>
354     </build>
355
356     <profiles>
357         <profile>
358             <id>sonar-jacoco-aggregate</id>
359             <activation>
360                 <property>
361                     <name>onap.jacoco.aggregateFile</name>
362                 </property>
363             </activation>
364             <build>
365                 <plugins>
366                     <plugin>
367                         <groupId>org.jacoco</groupId>
368                         <artifactId>jacoco-maven-plugin</artifactId>
369                         <executions>
370                             <execution>
371                                 <id>merge</id>
372                                 <goals>
373                                     <goal>merge</goal>
374                                 </goals>
375                                 <phase>generate-resources</phase>
376                                 <configuration>
377                                     <destFile>${onap.jacoco.aggregateFile}</destFile>
378                                     <fileSets>
379                                         <fileSet>
380                                             <directory>${project.basedir}</directory>
381                                             <includes>
382                                                 <include>**/target/code-coverage/*.exec</include>
383                                             </includes>
384                                         </fileSet>
385                                     </fileSets>
386                                 </configuration>
387                             </execution>
388                         </executions>
389                     </plugin>
390                 </plugins>
391             </build>
392         </profile>
393     </profiles>
394 </project>