1 <?xml version="1.0" encoding="UTF-8"?>
2 <!-- Copyright (c) 2018 Orange Licensed under the Apache License, Version
3 2.0 (the "License"); you may not use this file except in compliance with
4 the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
5 Unless required by applicable law or agreed to in writing, software distributed
6 under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES
7 OR CONDITIONS OF ANY KIND, either express or implied. See the License for
8 the specific language governing permissions and limitations under the License. -->
9 <project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
10 xmlns="http://maven.apache.org/POM/4.0.0"
11 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
12 <modelVersion>4.0.0</modelVersion>
14 <groupId>org.onap.externalapi-nbi</groupId>
15 <artifactId>nbi-rest-services</artifactId>
16 <version>3.0.1</version>
17 <packaging>jar</packaging>
19 <name>externalapi-nbi</name>
22 <groupId>org.springframework.boot</groupId>
23 <artifactId>spring-boot-starter-parent</artifactId>
24 <version>2.1.2.RELEASE</version>
25 <relativePath/> <!-- lookup parent from repository -->
29 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
30 <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
31 <nexusproxy>https://nexus.onap.org</nexusproxy>
32 <snapshotNexusPath>content/repositories/snapshots/</snapshotNexusPath>
33 <releaseNexusPath>content/repositories/releases/</releaseNexusPath>
34 <stagingNexusPath>content/repositories/staging/</stagingNexusPath>
35 <java.version>1.8</java.version>
36 <docker.pull.registry>nexus3.onap.org:10001</docker.pull.registry>
37 <docker.push.registry>nexus3.onap.org:10003</docker.push.registry>
38 <timestamp>${maven.build.timestamp}</timestamp>
39 <maven.build.timestamp.format>yyyyMMdd'T'HHmmss'Z'</maven.build.timestamp.format>
41 <docker.tag>${project.version}-${timestamp}</docker.tag>
42 <docker.latest.tag>${project.version}-latest</docker.latest.tag>
44 <sonar.language>java</sonar.language>
45 <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
46 <sonar.surefire.reportsPath>${project.build.directory}/surefire-reports
47 </sonar.surefire.reportsPath>
48 <sonar.jacoco.reportPath>${project.build.directory}/coverage-reports/jacoco.exec
49 </sonar.jacoco.reportPath>
50 <sonar.jacoco.itReportPath>${project.build.directory}/coverage-reports/jacoco-it.exec
51 </sonar.jacoco.itReportPath>
52 <sonar.jacoco.reportMissing.force.zero>true</sonar.jacoco.reportMissing.force.zero>
53 <sonar.projectVersion>${project.version}</sonar.projectVersion>
54 <sonar.coverage.exclusions>**/model/**/*</sonar.coverage.exclusions>
59 <id>maven2-repository.java.net</id>
60 <name>Java.net Repository for Maven</name>
61 <url>http://download.java.net/maven/2/</url>
62 <layout>default</layout>
65 <id>ecomp-snapshots</id>
66 <name>Snapshot Repository</name>
67 <url>https://nexus.onap.org/content/repositories/releases/</url>
70 <id>ecomp-staging</id>
71 <name>Staging Repository</name>
72 <url>https://nexus.onap.org/content/repositories/staging/</url>
76 <distributionManagement>
78 <id>ecomp-releases</id>
79 <name>Release Repository</name>
80 <url>${nexusproxy}/${releaseNexusPath}</url>
83 <id>ecomp-snapshots</id>
84 <name>Snapshot Repository</name>
85 <url>${nexusproxy}/${snapshotNexusPath}</url>
87 </distributionManagement>
92 <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
99 <groupId>org.springframework.boot</groupId>
100 <artifactId>spring-boot-starter-web</artifactId>
103 <groupId>ch.qos.logback</groupId>
104 <artifactId>logback-classic</artifactId>
107 <groupId>org.apache.tomcat.embed</groupId>
108 <artifactId>tomcat-embed-core</artifactId>
111 <groupId>com.fasterxml.jackson.core</groupId>
112 <artifactId>jackson-databind</artifactId>
118 <groupId>com.fasterxml.jackson.core</groupId>
119 <artifactId>jackson-databind</artifactId>
120 <version>2.9.4</version>
124 <groupId>org.apache.tomcat.embed</groupId>
125 <artifactId>tomcat-embed-core</artifactId>
126 <version>8.5.32</version>
130 <groupId>ch.qos.logback</groupId>
131 <artifactId>logback-classic</artifactId>
132 <version>1.2.3</version>
136 <groupId>org.springframework.boot</groupId>
137 <artifactId>spring-boot-starter-data-jpa</artifactId>
140 <groupId>org.springframework.data</groupId>
141 <artifactId>spring-data-commons</artifactId>
147 <groupId>org.springframework.data</groupId>
148 <artifactId>spring-data-commons</artifactId>
149 <version>2.1.4.RELEASE</version>
153 <groupId>org.springframework.boot</groupId>
154 <artifactId>spring-boot-starter-tomcat</artifactId>
155 <scope>provided</scope>
159 <groupId>org.springframework.boot</groupId>
160 <artifactId>spring-boot-starter-aop</artifactId>
164 <groupId>org.apache.commons</groupId>
165 <artifactId>commons-io</artifactId>
166 <version>1.3.2</version>
170 <groupId>commons-beanutils</groupId>
171 <artifactId>commons-beanutils</artifactId>
172 <version>1.9.3</version>
176 <groupId>javax.validation</groupId>
177 <artifactId>validation-api</artifactId>
178 <version>2.0.1.Final</version>
182 <groupId>org.apache.commons</groupId>
183 <artifactId>commons-lang3</artifactId>
184 <version>3.4</version>
190 <groupId>org.springframework.boot</groupId>
191 <artifactId>spring-boot-starter-data-mongodb</artifactId>
197 <groupId>org.mariadb.jdbc</groupId>
198 <artifactId>mariadb-java-client</artifactId>
199 <version>1.1.7</version>
205 <groupId>io.swagger</groupId>
206 <artifactId>swagger-annotations</artifactId>
207 <version>1.5.18</version>
213 <groupId>com.fasterxml.jackson.dataformat</groupId>
214 <artifactId>jackson-dataformat-yaml</artifactId>
215 <version>2.9.6</version>
218 <!-- sdc tosca parser -->
221 <groupId>org.onap.sdc.sdc-tosca</groupId>
222 <artifactId>sdc-tosca</artifactId>
223 <version>1.4.6</version>
229 <groupId>com.bazaarvoice.jolt</groupId>
230 <artifactId>jolt-core</artifactId>
231 <version>0.1.0</version>
234 <groupId>com.fasterxml.jackson.core</groupId>
235 <artifactId>jackson-databind</artifactId>
241 <groupId>com.bazaarvoice.jolt</groupId>
242 <artifactId>json-utils</artifactId>
243 <version>0.1.0</version>
246 <groupId>com.fasterxml.jackson.core</groupId>
247 <artifactId>jackson-databind</artifactId>
255 <groupId>org.springframework.boot</groupId>
256 <artifactId>spring-boot-starter-test</artifactId>
263 <groupId>com.h2database</groupId>
264 <artifactId>h2</artifactId>
269 <groupId>de.flapdoodle.embed</groupId>
270 <artifactId>de.flapdoodle.embed.mongo</artifactId>
271 <version>${embedded-mongo.version}</version>
275 <!-- test wiremock -->
278 <groupId>org.springframework.cloud</groupId>
279 <artifactId>spring-cloud-contract-wiremock</artifactId>
280 <version>1.2.6.RELEASE</version>
284 <groupId>com.fasterxml.jackson.core</groupId>
285 <artifactId>jackson-databind</artifactId>
291 <groupId>org.eclipse.jetty</groupId>
292 <artifactId>jetty-servlet</artifactId>
297 <groupId>org.eclipse.jetty</groupId>
298 <artifactId>jetty-servlets</artifactId>
305 <groupId>org.springframework.boot</groupId>
306 <artifactId>spring-boot-devtools</artifactId>
307 <scope>runtime</scope>
312 <groupId>org.onap.msb.java-sdk</groupId>
313 <artifactId>msb-java-sdk</artifactId>
314 <version>1.1.1</version>
317 <groupId>com.fasterxml.jackson.core</groupId>
318 <artifactId>jackson-databind</artifactId>
326 <groupId>com.intuit.karate</groupId>
327 <artifactId>karate-junit4</artifactId>
328 <version>0.9.0</version>
332 <groupId>com.intuit.karate</groupId>
333 <artifactId>karate-apache</artifactId>
334 <version>0.9.0</version>
344 <directory>src/test/java</directory>
346 <exclude>**/*.java</exclude>
350 <directory>src/test/resources</directory>
355 <groupId>org.springframework.boot</groupId>
356 <artifactId>spring-boot-maven-plugin</artifactId>
359 <groupId>org.apache.maven.plugins</groupId>
360 <artifactId>maven-surefire-plugin</artifactId>
363 <include>org/onap/nbi/test/KarateApiTest.java</include>
364 <include>org/onap/nbi/test/ExecutionTaskTest.java</include>
365 <include>org/onap/nbi/test/ServiceOrderRepositoryTest.java</include>
366 <include>org/onap/nbi/apis/servicecatalog/ToscaInfosProcessorTest.java</include>
371 <groupId>org.sonatype.plugins</groupId>
372 <artifactId>nexus-staging-maven-plugin</artifactId>
373 <version>1.6.7</version>
374 <extensions>true</extensions>
376 <nexusUrl>${nexusproxy}</nexusUrl>
377 <stagingProfileId>176c31dfe190a</stagingProfileId>
378 <serverId>ecomp-staging</serverId>
382 <groupId>org.apache.maven.plugins</groupId>
383 <artifactId>maven-site-plugin</artifactId>
384 <version>3.6</version>
387 <groupId>org.apache.maven.wagon</groupId>
388 <artifactId>wagon-webdav-jackrabbit</artifactId>
389 <version>2.10</version>
394 <groupId>com.mycila</groupId>
395 <artifactId>license-maven-plugin</artifactId>
396 <version>3.0</version>
398 <header>LICENSE.TXT</header>
400 <include>restclient/**</include>
401 <include>src/**</include>
402 <include>./**/*.xml</include>
403 <include>./**/*.xml</include>
404 <include>./**/*.yml</include>
405 <include>./**/*.yaml</include>
408 <!-- karate-config.js doesn't support comment, and is mandatory by
410 <exclude>src/test/java/karate-config.js</exclude>
412 <skipExistingHeaders>true</skipExistingHeaders>
415 <http>SCRIPT_STYLE</http>
421 <!-- Set goal to "format" to auto update license headers -->
424 <phase>process-sources</phase>
429 <groupId>org.codehaus.mojo</groupId>
430 <artifactId>sonar-maven-plugin</artifactId>
431 <version>3.2</version>
434 <!-- <groupId>org.jacoco</groupId> -->
435 <!-- <artifactId>jacoco-maven-plugin</artifactId> -->
436 <!-- <version>0.8.1</version> -->
437 <!-- <configuration> -->
438 <!-- <dumpOnExit>true</dumpOnExit> -->
440 <!-- <include>org.onap.nbi.*</include> -->
443 <!-- <exclude>**/model/**/*</exclude> -->
445 <!-- </configuration> -->
446 <!-- <executions> -->
448 <!-- <id>pre-unit-test</id> -->
450 <!-- <goal>prepare-agent</goal> -->
452 <!-- <configuration> -->
453 <!-- <destFile>${project.build.directory}/coverage-reports/jacoco.exec</destFile> -->
454 <!-- <append>true</append> -->
455 <!-- </configuration> -->
456 <!-- </execution> -->
458 <!-- <id>pre-integration-test</id> -->
459 <!-- <phase>pre-integration-test</phase> -->
461 <!-- <goal>prepare-agent</goal> -->
463 <!-- <configuration> -->
464 <!-- <destFile>${project.build.directory}/coverage-reports/jacoco-it.exec</destFile> -->
465 <!-- <append>true</append> -->
466 <!-- </configuration> -->
467 <!-- </execution> -->
470 <!-- <goal>merge</goal> -->
472 <!-- <phase>post-integration-test</phase> -->
473 <!-- <configuration> -->
476 <!-- implementation="org.apache.maven.shared.model.fileset.FileSet"> -->
477 <!-- <directory>${project.build.directory}/coverage-reports</directory> -->
479 <!-- <include>*.exec</include> -->
483 <!-- <destFile>${project.build.directory}/jacoco-dev.exec</destFile> -->
484 <!-- </configuration> -->
485 <!-- </execution> -->
486 <!-- </executions> -->
489 <artifactId>maven-source-plugin</artifactId>
492 <id>attach-sources</id>
493 <phase>deploy</phase>
495 <goal>jar-no-fork</goal>
510 <groupId>io.fabric8</groupId>
511 <artifactId>docker-maven-plugin</artifactId>
512 <version>0.26.1</version>
514 <verbose>true</verbose>
515 <apiVersion>1.23</apiVersion>
516 <pullRegistry>${docker.pull.registry}</pullRegistry>
517 <pushRegistry>${docker.push.registry}</pushRegistry>
520 <name>onap/externalapi/nbi:${docker.tag}</name>
522 <cleanup>true</cleanup>
525 <tag>${docker.latest.tag}</tag>
527 <dockerFileDir>${project.basedir}</dockerFileDir>
529 <PKG_FILENAME>${project.build.finalName}.${project.packaging}</PKG_FILENAME>
537 <id>clean-images</id>
538 <phase>pre-clean</phase>
543 <removeMode>all</removeMode>
547 <id>generate-images</id>
548 <phase>package</phase>
555 <phase>deploy</phase>