blob: 7a696154a5a6b52201bd26ce3b90885686d4be35 [file] [log] [blame]
ChrisC5e9feb22017-06-21 02:38:57 -07001<?xml version="1.0" encoding="UTF-8"?>
Determe, Sebastien (sd378r)e35744d2017-08-29 04:21:41 -07002<!--
3 ============LICENSE_START=======================================================
4 ONAP CLAMP
5 ================================================================================
TedHumphrey4aedf732019-08-13 15:56:33 +00006 Copyright (C) 2017-2019 AT&T Intellectual Property. All rights
Determe, Sebastien (sd378r)e35744d2017-08-29 04:21:41 -07007 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
ChrisC6c9759e2017-08-30 01:13:58 -070012
Determe, Sebastien (sd378r)e35744d2017-08-29 04:21:41 -070013 http://www.apache.org/licenses/LICENSE-2.0
ChrisC6c9759e2017-08-30 01:13:58 -070014
Determe, Sebastien (sd378r)e35744d2017-08-29 04:21:41 -070015 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 ===================================================================
Determe, Sebastien (sd378r)e35744d2017-08-29 04:21:41 -070022-->
sebdet101193d2019-09-05 18:25:59 +020023<project xmlns="http://maven.apache.org/POM/4.0.0"
24 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
25 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
26 <modelVersion>4.0.0</modelVersion>
27 <groupId>org.onap.clamp</groupId>
28 <artifactId>clds</artifactId>
sebdet0c297962020-05-04 16:43:42 +020029 <version>5.1.0-SNAPSHOT</version>
sebdet101193d2019-09-05 18:25:59 +020030 <name>clamp</name>
ChrisC5e9feb22017-06-21 02:38:57 -070031
sebdeta5243a42019-06-13 13:48:04 +020032
sebdet101193d2019-09-05 18:25:59 +020033 <parent>
34 <groupId>org.onap.oparent</groupId>
35 <artifactId>oparent</artifactId>
sebdet715f0ac2019-11-07 15:03:18 +010036 <version>2.1.0</version>
sebdet101193d2019-09-05 18:25:59 +020037 </parent>
Determe, Sebastien (sd378r)a66fe452017-08-08 06:42:49 -070038
sebdet101193d2019-09-05 18:25:59 +020039 <description>
40 This is the MAVEN project that builds everything for ONAP CLAMP.
41 Docker engine is normally requires to perfom all possible tasks (including integration tests)
Ted Humphrey01e5fde2020-01-27 18:57:39 -050042
sebdet101193d2019-09-05 18:25:59 +020043 It can build:
44 - The ONAP CLAMP JAR that contains CLAMP back-end code.
45 - The DOCKER images for:
46 * CLAMP backend (Java Spring)
47 * CLAMP frontend (Javscript React)
Determe, Sebastien (sd378r)8bf33432017-08-08 02:49:33 -070048
sebdet101193d2019-09-05 18:25:59 +020049 It can test:
50 - The CLAMP backend, JAVA unit testing
51 - The CLAMP backend, JAVA integration tests (with Spring + docker mariadb database + docker policy/dcae emulator written in python)
52 - The CLAMP frontend, Javascrip tests (NodeJS(NPM) + JEST + Enzyme fro React)
Ted Humphrey01e5fde2020-01-27 18:57:39 -050053
sebdet101193d2019-09-05 18:25:59 +020054 The test coverage for dev's can be found after a "clean install" build in:
55 - Clamp backend: target/jacoco-dev.exec (unit tests + integration tests merged)
56 or separately target/coverage-reports/jacoco.exec and target/coverage-reports/jacoco-it.exec
57 - Clamp frontend: target/ui-react/coverage
Determe, Sebastien (sd378r)8bf33432017-08-08 02:49:33 -070058
sebdet101193d2019-09-05 18:25:59 +020059 Useful mvn commands:
60 - mvn clean install: Build Clamp backend JAR + unit tests + integration tests + NPM tests (+coverage for all)
61 - mvn clean install -DskipITs=true: Build Clamp backend JAR + unit tests + NPM tests (+coverage for all), it does not require a DOCKER engine
62 - mvn clean install -DskipTests -P docker: Build Clamp backend JAR + all docker images
Determe, Sebastien (sd378r)8bf33432017-08-08 02:49:33 -070063
sebdet101193d2019-09-05 18:25:59 +020064 To start CLAMP (Build it before):
65 - Use docker-compose file in ./extra/docker/clamp/docker-compose.yml
66 - Use the script located in ./extra/bin/start-backend.sh + start-frontend.sh
67 - Use your IDE to use the Jar or start NVM/NPM
Determe, Sebastien (sd378r)8bf33432017-08-08 02:49:33 -070068
sebdet101193d2019-09-05 18:25:59 +020069 </description>
ChrisCae04cf32018-02-05 05:21:59 -080070
sebdet101193d2019-09-05 18:25:59 +020071 <properties>
72 <maven.build.timestamp.format>yyyyMMdd'T'HHmmss'Z'</maven.build.timestamp.format>
73 <clamp.project.version>${project.version}</clamp.project.version>
74 <clamp.build.timestamp>${maven.build.timestamp}</clamp.build.timestamp>
sebdet101193d2019-09-05 18:25:59 +020075 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
76 <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
Determe, Sebastien (sd378r)8bf33432017-08-08 02:49:33 -070077
sebdet101193d2019-09-05 18:25:59 +020078 <eelf.core.version>1.0.0</eelf.core.version>
sebdet32bfb482020-07-31 18:25:34 +020079 <camel.version>2.25.2</camel.version>
80 <springboot.version>2.2.9.RELEASE</springboot.version>
Determe, Sebastien (sd378r)8bf33432017-08-08 02:49:33 -070081
sebdet101193d2019-09-05 18:25:59 +020082 <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
83 <sonar.surefire.reportsPath>${project.build.directory}/surefire-reports</sonar.surefire.reportsPath>
ChrisC4c4c3fd2020-01-27 14:54:56 +010084 <sonar.coverage.jacoco.xmlReportPaths>${project.build.directory}/jacoco-html-xml-reports/jacoco.xml</sonar.coverage.jacoco.xmlReportPaths>
sebdet101193d2019-09-05 18:25:59 +020085 <sonar.jacoco.reportMissing.force.zero>true</sonar.jacoco.reportMissing.force.zero>
86 <sonar.projectVersion>${project.version}</sonar.projectVersion>
ChrisC9abd1982020-01-28 11:00:02 +010087 <sonar.log.level>DEBUG</sonar.log.level>
sebdetf2d71eb2020-01-30 16:37:27 +010088 <sonar.nodejs.executable>${project.build.directory}/${ui.react.src}/node/node</sonar.nodejs.executable>
89 <sonar.verbose>true</sonar.verbose>
ChrisCf04d3752020-01-28 14:14:53 +010090 <sonar.sources>src/main,${project.build.directory}/${ui.react.src}/src</sonar.sources>
sebdet156d6ea2019-09-06 15:52:18 +020091 <sonar.exclusions>src/main/resources/**</sonar.exclusions>
ChrisC83ad93c2020-01-27 17:26:24 +010092 <sonar.scm.exclusions.disabled>true</sonar.scm.exclusions.disabled>
93 <sonar.javascript.lcov.reportPaths>${project.build.directory}/${ui.react.src}/coverage/lcov.info</sonar.javascript.lcov.reportPaths>
sebdete06b7ef2020-02-10 15:51:07 +010094 <sonar.coverage.exclusions>src/main/resources/**,target/ui-react/src/**/*.test.js,target/ui-react/src/setupTests.js</sonar.coverage.exclusions>
sebdet101193d2019-09-05 18:25:59 +020095 <docker.push.registry>localhost:5000</docker.push.registry>
96 <docker.pull.registry>nexus3.onap.org:10001</docker.pull.registry>
97 <docker.skip.build>true</docker.skip.build>
98 <docker.skip.push>true</docker.skip.push>
99 <docker.skip.tag>true</docker.skip.tag>
100 <skip.staging.artifacts>false</skip.staging.artifacts>
101 <python.http.proxy.param />
sebdetbc919702020-08-03 15:14:02 +0200102 <tomcat.version>9.0.37</tomcat.version>
sebdet101193d2019-09-05 18:25:59 +0200103 <ui.react.src>ui-react</ui.react.src>
Ted Humphrey01e5fde2020-01-27 18:57:39 -0500104 <ui.react.lib.src>ui-react-lib</ui.react.lib.src>
sebdetb0fba2f2020-02-10 18:25:49 +0100105 <npm.publish.url>https://nexus3.onap.org/repository/npm.snapshot/</npm.publish.url>
sebdet101193d2019-09-05 18:25:59 +0200106 </properties>
ChrisC5e9feb22017-06-21 02:38:57 -0700107
sebdet101193d2019-09-05 18:25:59 +0200108 <profiles>
sebdetf2d71eb2020-01-30 16:37:27 +0100109 <!-- BEGIN: NOT USABLE profiles, those are defined when specific flags are enabled -->
sebdet101193d2019-09-05 18:25:59 +0200110 <profile>
111 <id>without-test</id>
112 <activation>
113 <property>
114 <name>maven.test.skip</name>
115 <value>true</value>
116 </property>
117 </activation>
118 <properties>
119 <docker.skip.run>true</docker.skip.run>
120 <docker.skip>true</docker.skip>
121 </properties>
122 </profile>
123 <profile>
124 <id>without-IT-only</id>
125 <activation>
126 <property>
127 <name>skipITs</name>
128 <value>true</value>
129 </property>
130 </activation>
131 <properties>
132 <docker.skip.run>true</docker.skip.run>
133 <docker.skip>true</docker.skip>
134 </properties>
135 </profile>
136 <profile>
137 <id>without-IT-only2</id>
138 <activation>
139 <property>
140 <name>skipTests</name>
141 <value>true</value>
142 </property>
143 </activation>
144 <properties>
145 <docker.skip.run>true</docker.skip.run>
146 <docker.skip>true</docker.skip>
147 </properties>
148 </profile>
sebdetf2d71eb2020-01-30 16:37:27 +0100149 <!-- END: NOT USABLE profiles, those are defined when specific flags are enabled -->
sebdet101193d2019-09-05 18:25:59 +0200150 <profile>
151 <id>docker</id>
152 <properties>
153 <skip.staging.artifacts>true</skip.staging.artifacts>
154 <docker.skip.build>false</docker.skip.build>
155 <docker.skip.tag>false</docker.skip.tag>
156 <docker.skip.push>false</docker.skip.push>
157 <docker.skip>false</docker.skip>
158 </properties>
159 </profile>
160 </profiles>
Determe, Sebastien (sd378r)d3428d82018-06-26 15:05:55 +0200161
sebdet101193d2019-09-05 18:25:59 +0200162 <distributionManagement>
163 <repository>
164 <id>ecomp-releases</id>
165 <name>Clamp Release Repository</name>
166 <url>https://nexus.onap.org/content/repositories/releases/</url>
167 </repository>
168 <snapshotRepository>
169 <id>ecomp-snapshots</id>
170 <name>Clamp Snapshot Repository</name>
171 <url>https://nexus.onap.org/content/repositories/snapshots/</url>
172 </snapshotRepository>
173 <site>
174 <id>ecomp-site</id>
175 <url>dav:https://nexus.onap.org/content/sites/site/org/onap/clamp/${project.version}</url>
176 </site>
177 </distributionManagement>
ChrisC5e9feb22017-06-21 02:38:57 -0700178
sebdet101193d2019-09-05 18:25:59 +0200179 <repositories>
180 <repository>
181 <id>onap-public</id>
182 <name>onap-public</name>
183 <url>https://nexus.onap.org/content/repositories/public/</url>
184 <releases>
185 <enabled>true</enabled>
186 </releases>
187 <snapshots>
188 <enabled>false</enabled>
189 </snapshots>
190 </repository>
191 <repository>
192 <id>ecomp-releases</id>
193 <name>ONAP Release Repository</name>
194 <url>https://nexus.onap.org/content/repositories/releases/</url>
195 </repository>
196 <repository>
197 <id>ecomp-staging</id>
198 <name>ONAP Staging Repository</name>
199 <url>https://nexus.onap.org/content/repositories/staging/</url>
200 </repository>
201 <repository>
202 <id>ecomp-snapshots</id>
203 <name>ONAP Snapshot Repository</name>
204 <url>https://nexus.onap.org/content/repositories/snapshots/</url>
205 <snapshots>
206 <enabled>true</enabled>
207 </snapshots>
208 <releases>
209 <enabled>false</enabled>
210 </releases>
211 </repository>
212 <repository>
213 <id>central</id>
214 <url>http://repo1.maven.org/maven2/</url>
215 </repository>
216 </repositories>
217 <pluginRepositories>
218 <pluginRepository>
219 <id>onap-public</id>
220 <name>onap-public</name>
221 <url>https://nexus.onap.org/content/repositories/public/</url>
222 <releases>
223 <enabled>true</enabled>
224 </releases>
225 <snapshots>
226 <enabled>false</enabled>
227 </snapshots>
228 </pluginRepository>
229 <pluginRepository>
230 <id>central</id>
231 <url>http://repo1.maven.org/maven2/</url>
232 </pluginRepository>
233 </pluginRepositories>
ChrisC5e9feb22017-06-21 02:38:57 -0700234
sebdet101193d2019-09-05 18:25:59 +0200235 <dependencyManagement>
Determe, Sebastien (sd378r)b4f7cb62017-11-16 13:27:22 +0100236 <dependencies>
sebdet101193d2019-09-05 18:25:59 +0200237 <!-- Spring Boot BOM -->
Piotr Darosz6eb37422019-03-08 14:50:29 +0100238 <dependency>
sebdet101193d2019-09-05 18:25:59 +0200239 <groupId>org.springframework.boot</groupId>
240 <artifactId>spring-boot-dependencies</artifactId>
241 <version>${springboot.version}</version>
242 <type>pom</type>
243 <scope>import</scope>
Piotr Darosz6eb37422019-03-08 14:50:29 +0100244 </dependency>
sebdet101193d2019-09-05 18:25:59 +0200245 <!-- Camel BOM -->
Piotr Darosz6eb37422019-03-08 14:50:29 +0100246 <dependency>
sebdet101193d2019-09-05 18:25:59 +0200247 <groupId>org.apache.camel</groupId>
248 <artifactId>camel-spring-boot-dependencies</artifactId>
249 <version>${camel.version}</version>
250 <type>pom</type>
251 <scope>import</scope>
Piotr Darosz6eb37422019-03-08 14:50:29 +0100252 </dependency>
sebdet101193d2019-09-05 18:25:59 +0200253 </dependencies>
254 </dependencyManagement>
255
256 <dependencies>
257 <dependency>
sebdet101193d2019-09-05 18:25:59 +0200258 <groupId>com.att.eelf</groupId>
259 <artifactId>eelf-core</artifactId>
260 <version>${eelf.core.version}</version>
sebdet1b6a4282019-11-05 13:44:53 +0100261 <exclusions>
262 <exclusion>
263 <groupId>org.powermock</groupId>
264 <artifactId>powermock-module-junit4</artifactId>
265 </exclusion>
266 <exclusion>
267 <groupId>org.powermock</groupId>
268 <artifactId>powermock-api-mockito</artifactId>
269 </exclusion>
270 </exclusions>
sebdet101193d2019-09-05 18:25:59 +0200271 </dependency>
272 <dependency>
273 <groupId>org.codehaus.janino</groupId>
274 <artifactId>janino</artifactId>
275 <version>3.0.8</version>
276 </dependency>
277 <dependency>
278 <groupId>org.apache.tomcat.embed</groupId>
279 <artifactId>tomcat-embed-core</artifactId>
280 <version>${tomcat.version}</version>
281 </dependency>
282 <dependency>
283 <groupId>org.apache.tomcat.embed</groupId>
284 <artifactId>tomcat-embed-el</artifactId>
285 <version>${tomcat.version}</version>
286 </dependency>
287 <dependency>
288 <groupId>org.apache.tomcat.embed</groupId>
289 <artifactId>tomcat-embed-websocket</artifactId>
290 <version>${tomcat.version}</version>
291 </dependency>
292 <dependency>
293 <groupId>org.apache.tomcat</groupId>
294 <artifactId>tomcat-annotations-api</artifactId>
295 <version>${tomcat.version}</version>
296 </dependency>
297 <!-- For CAMEL -->
298 <dependency>
299 <groupId>org.apache.camel</groupId>
300 <artifactId>camel-http4-starter</artifactId>
301 </dependency>
302 <dependency>
303 <groupId>org.apache.camel</groupId>
304 <artifactId>camel-spring-boot-starter</artifactId>
305 </dependency>
306 <dependency>
307 <groupId>org.apache.camel</groupId>
308 <artifactId>camel-jaxb-starter</artifactId>
309 </dependency>
310 <dependency>
311 <groupId>org.apache.camel</groupId>
312 <artifactId>camel-servlet-starter</artifactId>
313 </dependency>
314 <dependency>
315 <groupId>org.apache.camel</groupId>
316 <artifactId>camel-gson-starter</artifactId>
317 </dependency>
318 <dependency>
319 <groupId>org.apache.camel</groupId>
320 <artifactId>camel-swagger-java-starter</artifactId>
321 <exclusions>
322 <exclusion>
323 <groupId>javax.ws.rs</groupId>
324 <artifactId>jsr311-api</artifactId>
325 </exclusion>
326 <exclusion>
327 <groupId>org.slf4j</groupId>
328 <artifactId>slf4j-ext</artifactId>
329 </exclusion>
sebdet101193d2019-09-05 18:25:59 +0200330 </exclusions>
331 </dependency>
332 <dependency>
sebdet1ccb7072020-03-27 10:40:14 -0700333 <groupId>javax.xml.ws</groupId>
334 <artifactId>jaxws-api</artifactId>
335 <version>2.3.1</version>
336 </dependency>
337 <dependency>
sebdet101193d2019-09-05 18:25:59 +0200338 <groupId>javax.xml.bind</groupId>
339 <artifactId>jaxb-api</artifactId>
340 <version>2.3.0</version>
341 </dependency>
342 <dependency>
343 <groupId>org.glassfish.jersey.core</groupId>
344 <artifactId>jersey-common</artifactId>
345 <version>2.27</version>
346 </dependency>
347 <!-- Spring famework -->
348 <dependency>
349 <groupId>org.springframework.boot</groupId>
350 <artifactId>spring-boot-starter-web</artifactId>
351 <exclusions>
352 <exclusion>
353 <groupId>org.springframework.boot</groupId>
354 <artifactId>spring-boot-starter-json</artifactId>
355 </exclusion>
356 </exclusions>
357 </dependency>
358 <dependency>
359 <groupId>org.springframework.boot</groupId>
360 <artifactId>spring-boot-starter-tomcat</artifactId>
361 </dependency>
362 <dependency>
363 <groupId>org.springframework</groupId>
364 <artifactId>spring-jdbc</artifactId>
365 </dependency>
366 <dependency>
367 <groupId>org.springframework.boot</groupId>
368 <artifactId>spring-boot-starter-security</artifactId>
369 </dependency>
370 <dependency>
371 <groupId>org.springframework.boot</groupId>
372 <artifactId>spring-boot-autoconfigure</artifactId>
373 </dependency>
374 <dependency>
375 <groupId>org.springframework.boot</groupId>
376 <artifactId>spring-boot-starter-test</artifactId>
377 <scope>test</scope>
378 <exclusions>
379 <exclusion>
380 <groupId>com.vaadin.external.google</groupId>
381 <artifactId>android-json</artifactId>
382 </exclusion>
383 </exclusions>
384 </dependency>
385 <dependency>
386 <groupId>org.springframework.boot</groupId>
387 <artifactId>spring-boot-starter-data-jpa</artifactId>
388 </dependency>
389 <!-- Others dependencies -->
390 <dependency>
391 <groupId>org.onap.aaf.authz</groupId>
392 <artifactId>aaf-cadi-aaf</artifactId>
sebdetdcc4bdc2019-10-15 14:04:00 +0200393 <version>2.1.15</version>
sebdet101193d2019-09-05 18:25:59 +0200394 <exclusions>
395 <exclusion>
396 <groupId>javax.servlet</groupId>
397 <artifactId>servlet-api</artifactId>
398 </exclusion>
JulienBead6ab002020-03-23 17:37:33 +0100399 <exclusion>
400 <groupId>log4j</groupId>
401 <artifactId>log4j</artifactId>
402 </exclusion>
sebdet101193d2019-09-05 18:25:59 +0200403 </exclusions>
404 </dependency>
405 <dependency>
406 <groupId>ch.qos.logback</groupId>
407 <artifactId>logback-core</artifactId>
408 <version>1.2.3</version>
409 </dependency>
410 <dependency>
411 <groupId>ch.qos.logback</groupId>
412 <artifactId>logback-classic</artifactId>
413 <version>1.2.3</version>
414 </dependency>
415 <dependency>
416 <groupId>commons-dbcp</groupId>
417 <artifactId>commons-dbcp</artifactId>
418 <version>1.4</version>
419 </dependency>
420 <dependency>
421 <groupId>commons-io</groupId>
422 <artifactId>commons-io</artifactId>
423 <version>2.6</version>
424 </dependency>
425 <dependency>
426 <groupId>com.googlecode.json-simple</groupId>
427 <artifactId>json-simple</artifactId>
428 <version>1.1.1</version>
429 </dependency>
430 <dependency>
431 <groupId>org.apache.commons</groupId>
432 <artifactId>commons-vfs2</artifactId>
433 <version>2.2</version>
434 </dependency>
435 <dependency>
sebdet101193d2019-09-05 18:25:59 +0200436 <groupId>org.slf4j</groupId>
437 <artifactId>slf4j-api</artifactId>
438 </dependency>
439 <dependency>
440 <groupId>javax.ws.rs</groupId>
441 <artifactId>javax.ws.rs-api</artifactId>
442 <version>2.0</version>
443 </dependency>
444 <dependency>
445 <groupId>junit</groupId>
446 <artifactId>junit</artifactId>
447 </dependency>
448 <dependency>
449 <groupId>javax.transaction</groupId>
450 <artifactId>jta</artifactId>
451 <version>1.1</version>
452 </dependency>
453 <dependency>
454 <groupId>javax.persistence</groupId>
455 <artifactId>persistence-api</artifactId>
456 <version>1.0.2</version>
457 </dependency>
458 <dependency>
sebdet101193d2019-09-05 18:25:59 +0200459 <groupId>org.apache.commons</groupId>
460 <artifactId>commons-csv</artifactId>
461 <version>1.3</version>
462 </dependency>
463 <!-- Other dependencies to fix nexus IQ reported vulnerabilities -->
464 <dependency>
sebdet5ad6a2f2020-04-27 18:26:28 +0200465 <groupId>org.springframework.security</groupId>
466 <artifactId>spring-security-web</artifactId>
467 <version>5.2.3.RELEASE</version>
468 </dependency>
469 <dependency>
sebdet101193d2019-09-05 18:25:59 +0200470 <groupId>org.codehaus.plexus</groupId>
471 <artifactId>plexus-utils</artifactId>
472 <version>3.0.24</version>
473 </dependency>
474 <dependency>
475 <groupId>org.jboss.spec.javax.ws.rs</groupId>
476 <artifactId>jboss-jaxrs-api_2.0_spec</artifactId>
477 <version>1.0.1.Final</version>
478 </dependency>
479 <dependency>
480 <groupId>com.google.guava</groupId>
481 <artifactId>guava</artifactId>
482 <version>27.0-jre</version>
483 </dependency>
sebdete77e0ff2019-09-09 13:18:35 +0200484 <dependency>
485 <groupId>commons-codec</groupId>
486 <artifactId>commons-codec</artifactId>
487 <version>1.13</version>
488 </dependency>
sebdet101193d2019-09-05 18:25:59 +0200489 <!-- Remove the MYSQL connector and replace it by Mariadb -->
490 <dependency>
491 <groupId>org.mariadb.jdbc</groupId>
492 <artifactId>mariadb-java-client</artifactId>
493 <version>2.2.1</version>
494 </dependency>
495 <!-- For SDC Controller -->
496 <dependency>
497 <groupId>org.onap.sdc.sdc-distribution-client</groupId>
498 <artifactId>sdc-distribution-client</artifactId>
499 <version>1.3.0</version>
500 </dependency>
501 <dependency>
502 <groupId>org.onap.sdc.sdc-tosca</groupId>
503 <artifactId>sdc-tosca</artifactId>
504 <version>1.5.1</version>
sebdet32bfb482020-07-31 18:25:34 +0200505 <exclusions>
506 <exclusion>
507 <groupId>com.fasterxml.jackson.core</groupId>
508 <artifactId>jackson-databind</artifactId>
509 </exclusion>
510 </exclusions>
sebdet101193d2019-09-05 18:25:59 +0200511 </dependency>
sebdet3ed8d432020-03-24 15:49:19 -0700512 <dependency>
513 <groupId>org.yaml</groupId>
514 <artifactId>snakeyaml</artifactId>
515 <version>1.26</version>
516 </dependency>
sebdet3b017732020-04-20 15:30:45 +0200517 <dependency>
518 <groupId>org.dom4j</groupId>
519 <artifactId>dom4j</artifactId>
520 <version>2.1.3</version>
521 </dependency>
522
sebdet101193d2019-09-05 18:25:59 +0200523 <!-- TESTING -->
524 <dependency>
525 <groupId>org.assertj</groupId>
526 <artifactId>assertj-core</artifactId>
527 <version>3.10.0</version>
528 <scope>test</scope>
529 </dependency>
530 <dependency>
531 <groupId>org.mockito</groupId>
532 <artifactId>mockito-core</artifactId>
sebdet1b6a4282019-11-05 13:44:53 +0100533 <version>2.28.2</version>
534 <scope>test</scope>
535 </dependency>
536 <dependency>
537 <groupId>org.powermock</groupId>
538 <artifactId>powermock-api-mockito2</artifactId>
539 <version>2.0.4</version>
540 <scope>test</scope>
541 </dependency>
542 <dependency>
543 <groupId>org.powermock</groupId>
544 <artifactId>powermock-module-junit4</artifactId>
545 <version>2.0.4</version>
sebdet101193d2019-09-05 18:25:59 +0200546 <scope>test</scope>
547 </dependency>
JulienBe09da64a2020-05-14 17:40:52 +0200548 <dependency>
549 <groupId>com.github.docker-java</groupId>
550 <artifactId>docker-java-core</artifactId>
551 <version>3.2.1</version>
552 <scope>test</scope>
sebdet32bfb482020-07-31 18:25:34 +0200553 <exclusions>
554 <exclusion>
555 <groupId>com.fasterxml.jackson.core</groupId>
556 <artifactId>jackson-databind</artifactId>
557 </exclusion>
558 </exclusions>
JulienBe09da64a2020-05-14 17:40:52 +0200559 </dependency>
560 <dependency>
561 <groupId>com.github.docker-java</groupId>
562 <artifactId>docker-java</artifactId>
563 <version>3.2.1</version>
564 <scope>test</scope>
565 </dependency>
sebdet101193d2019-09-05 18:25:59 +0200566 </dependencies>
567
568 <build>
569 <finalName>clamp</finalName>
570
571 <testResources>
572 <testResource>
sebdet29e3cd12020-02-13 05:49:21 -0800573 <directory>src/main/resources</directory>
574 <filtering>true</filtering>
575 <excludes>
576 <exclude>clds/aaf/**</exclude>
577 </excludes>
578 </testResource>
579 <testResource>
580 <directory>src/main/resources</directory>
581 <filtering>false</filtering>
582 <includes>
583 <include>clds/aaf/**</include>
584 </includes>
585 </testResource>
586 <testResource>
sebdet101193d2019-09-05 18:25:59 +0200587 <directory>src/test/resources</directory>
588 <excludes>
589 <exclude>**/*.jks</exclude>
590 <exclude>**/*.csar</exclude>
591 </excludes>
592 <filtering>true</filtering>
593 </testResource>
594 <testResource>
595 <directory>src/test/resources/https</directory>
596 <includes>
597 <include>**.jks</include>
598 </includes>
599 <filtering>false</filtering>
600 <targetPath>https</targetPath>
601 </testResource>
602 <testResource>
603 <directory>src/test/resources/example/sdc</directory>
604 <includes>
605 <include>**.csar</include>
606 </includes>
607 <filtering>false</filtering>
608 <targetPath>example/sdc</targetPath>
609 </testResource>
610 </testResources>
611 <resources>
Ted Humphrey01e5fde2020-01-27 18:57:39 -0500612 <!-- For AAF folder maven should not try to filter Keystores/Truststores ... Otherwise
sebdet101193d2019-09-05 18:25:59 +0200613 they will be broken and unreadable -->
614 <resource>
615 <directory>src/main/resources</directory>
616 <filtering>true</filtering>
617 <excludes>
618 <exclude>clds/aaf/**</exclude>
619 </excludes>
620 </resource>
621 <resource>
622 <directory>src/main/resources</directory>
623 <filtering>false</filtering>
624 <includes>
625 <include>clds/aaf/**</include>
626 </includes>
627 </resource>
628 <resource>
629 <directory>${ui.react.src}</directory>
Ted Humphrey01e5fde2020-01-27 18:57:39 -0500630 <excludes>
631 <exclude>node_modules</exclude>
632 </excludes>
sebdet101193d2019-09-05 18:25:59 +0200633 <includes>
634 <include>src/**</include>
635 <include>public/**</include>
636 <include>package.json</include>
637 <include>package-lock.json</include>
638 </includes>
639 <filtering>true</filtering>
640 <targetPath>${project.build.directory}/${ui.react.src}</targetPath>
641 </resource>
Ted Humphrey01e5fde2020-01-27 18:57:39 -0500642 <resource>
643 <directory>${ui.react.src}</directory>
644 <includes>
645 <include>src/**</include>
646 </includes>
647 <excludes>
648 <exclude>**/__snapshots__/**</exclude>
649 <exclude>**/**.test.js</exclude>
650 </excludes>
651 <filtering>true</filtering>
652 <targetPath>${project.build.directory}/${ui.react.lib.src}</targetPath>
653 </resource>
654 <resource>
655 <directory>${ui.react.lib.src}</directory>
656 <includes>
657 <include>**</include>
658 </includes>
659 <excludes>
660 <exclude>node_modules/**</exclude>
661 <exclude>package-lock.json</exclude>
662 </excludes>
663 <filtering>true</filtering>
664 <targetPath>${project.build.directory}/${ui.react.lib.src}</targetPath>
665 </resource>
sebdet101193d2019-09-05 18:25:59 +0200666 </resources>
667
668 <plugins>
669 <plugin>
nrpandya82561262019-11-21 11:51:18 -0600670 <groupId>de.jpdigital</groupId>
671 <artifactId>hibernate52-ddl-maven-plugin</artifactId>
672 <version>2.2.0</version>
sebdet101193d2019-09-05 18:25:59 +0200673 <dependencies>
674 <dependency>
Determe, Sebastien (sd378r)f7855162018-04-27 14:02:39 +0200675 <groupId>javax.xml.bind</groupId>
676 <artifactId>jaxb-api</artifactId>
677 <version>2.3.0</version>
sebdet101193d2019-09-05 18:25:59 +0200678 </dependency>
679 </dependencies>
680 <executions>
681 <execution>
682 <phase>process-classes</phase>
683 <goals>
684 <goal>gen-ddl</goal>
685 </goals>
sebdete4422002018-10-16 17:47:54 +0200686 <configuration>
sebdet101193d2019-09-05 18:25:59 +0200687 <packages>
nrpandya82561262019-11-21 11:51:18 -0600688 <param>org.onap.clamp</param>
sebdet101193d2019-09-05 18:25:59 +0200689 </packages>
690 <dialects>
691 <param>MARIADB53</param>
692 </dialects>
693 <outputDirectory>${project.basedir}/extra/sql/bulkload/</outputDirectory>
694 <outputFileNameSuffix>create-tables</outputFileNameSuffix>
695 <!-- <createDropStatements>true</createDropStatements> -->
696 <omitDialectFromFileName>true</omitDialectFromFileName>
sebdete4422002018-10-16 17:47:54 +0200697 </configuration>
sebdet101193d2019-09-05 18:25:59 +0200698 </execution>
699 </executions>
700
701 </plugin>
Ted Humphrey01e5fde2020-01-27 18:57:39 -0500702 <!-- Read the swagger.json file and the definition from SwaggerConfig.java; generate
sebdet101193d2019-09-05 18:25:59 +0200703 a list of .adoc files containing the APIs info in more structured way -->
704 <plugin>
705 <groupId>io.github.swagger2markup</groupId>
706 <artifactId>swagger2markup-maven-plugin</artifactId>
707 <version>1.3.3</version>
708 <dependencies>
709 <dependency>
710 <groupId>io.github.swagger2markup</groupId>
711 <artifactId>swagger2markup-import-files-ext</artifactId>
712 <version>1.3.3</version>
713 </dependency>
714 <dependency>
715 <groupId>io.github.swagger2markup</groupId>
716 <artifactId>swagger2markup-spring-restdocs-ext</artifactId>
717 <version>1.3.3</version>
718 </dependency>
719 </dependencies>
720 <configuration>
721 <swaggerInput>${project.basedir}/docs/swagger/swagger.json</swaggerInput>
722 <outputDir>${project.build.directory}/asciidoc/generated</outputDir>
723 <config>
724 <swagger2markup.markupLanguage>ASCIIDOC</swagger2markup.markupLanguage>
725 </config>
726 </configuration>
727 <executions>
728 <execution>
729 <phase>post-integration-test</phase>
730 <goals>
731 <goal>convertSwagger2markup</goal>
732 </goals>
733 </execution>
734 </executions>
735 </plugin>
736
Ted Humphrey01e5fde2020-01-27 18:57:39 -0500737 <!-- Run the generated asciidoc through Asciidoctor to generate other documentation
sebdet101193d2019-09-05 18:25:59 +0200738 types, such as PDFs or HTML5 -->
739 <plugin>
740 <groupId>org.asciidoctor</groupId>
741 <artifactId>asciidoctor-maven-plugin</artifactId>
742 <version>1.5.7.1</version>
743 <dependencies>
744 <dependency>
745 <groupId>org.asciidoctor</groupId>
746 <artifactId>asciidoctorj-pdf</artifactId>
747 <version>1.5.0-alpha.10.1</version>
748 </dependency>
749 </dependencies>
750 <configuration>
751 <sourceDirectory>${project.basedir}/src/main/resources/asciidoc</sourceDirectory>
752 <sourceDocumentName>swagger.adoc</sourceDocumentName>
753 <attributes>
754 <doctype>book</doctype>
755 <toc>left</toc>
756 <toclevels>3</toclevels>
757 <numbered />
758 <hardbreaks />
759 <sectlinks />
760 <sectanchors />
761 <generated>${project.build.directory}/asciidoc/generated</generated>
762 </attributes>
763 </configuration>
764
765 <executions>
766 <execution>
767 <id>output-html</id>
768 <phase>post-integration-test</phase>
769 <goals>
770 <goal>process-asciidoc</goal>
771 </goals>
772 <configuration>
773 <backend>html5</backend>
774 <outputDirectory>${project.basedir}/docs/swagger</outputDirectory>
775 <outputDirectory>${project.basedir}/src/main/resources/META-INF/resources/</outputDirectory>
776 </configuration>
777 </execution>
778 <execution>
779 <id>output-pdf</id>
780 <phase>post-integration-test</phase>
781 <goals>
782 <goal>process-asciidoc</goal>
783 </goals>
784 <configuration>
785 <backend>pdf</backend>
786 <outputDirectory>${project.basedir}/docs/swagger</outputDirectory>
787 </configuration>
788 </execution>
789 </executions>
790 </plugin>
791 <plugin>
792 <groupId>org.codehaus.groovy.maven</groupId>
793 <artifactId>gmaven-plugin</artifactId>
794 <version>1.0</version>
795 <executions>
796 <execution>
sebdet7a739a52020-03-25 09:11:54 -0700797 <id>docker-tags</id>
sebdet101193d2019-09-05 18:25:59 +0200798 <phase>validate</phase>
799 <goals>
800 <goal>execute</goal>
801 </goals>
802 <configuration>
803 <source>${project.basedir}/src/main/script/TagVersion.groovy</source>
804 </configuration>
805 </execution>
sebdetc6622c42019-11-05 18:28:05 +0100806 <execution>
sebdet7a739a52020-03-25 09:11:54 -0700807 <id>npm-repos-selection</id>
sebdetc6622c42019-11-05 18:28:05 +0100808 <phase>validate</phase>
809 <goals>
810 <goal>execute</goal>
811 </goals>
812 <configuration>
813 <source>${project.basedir}/src/main/script/SelectNpmRepo.groovy</source>
814 </configuration>
815 </execution>
816 </executions>
817 </plugin>
818 <plugin>
sebdet101193d2019-09-05 18:25:59 +0200819 <groupId>org.apache.maven.plugins</groupId>
820 <artifactId>maven-jar-plugin</artifactId>
821 <version>3.0.2</version>
822 <executions>
823 <execution>
824 <id>jar-with-only-classes</id>
825 <phase>package</phase>
826 <goals>
827 <goal>jar</goal>
828 </goals>
829 <configuration>
830 <classifier>classes</classifier>
831 <includes>
832 <include>org/**</include>
833 </includes>
834 </configuration>
835 </execution>
836 </executions>
837 </plugin>
838 <plugin>
839 <groupId>org.codehaus.mojo</groupId>
840 <artifactId>build-helper-maven-plugin</artifactId>
841 <version>3.0.0</version>
842 <executions>
843 <execution>
844 <goals>
845 <goal>attach-artifact</goal>
846 </goals>
847 <phase>package</phase>
848 <configuration>
849 <artifacts>
850 <artifact>
851 <file>${project.build.directory}/clamp-classes.jar</file>
852 <type>jar</type>
853 <classifier>classes</classifier>
854 </artifact>
855 </artifacts>
856 </configuration>
857 </execution>
858 <execution>
859 <id>reserve-port-for-tests</id>
860 <phase>process-resources</phase>
861 <goals>
862 <goal>reserve-network-port</goal>
863 </goals>
864 <configuration>
865 <portNames>
866 <portName>docker.mariadb.port.host</portName>
867 <portName>docker.http-cache.port.host</portName>
868 <portName>clamp.it.tests.http-redirected</portName>
JulienBe09da64a2020-05-14 17:40:52 +0200869 <portName>clamp.it.tests.robotframework.http</portName>
sebdet101193d2019-09-05 18:25:59 +0200870 <portName>clamp.it.tests.https</portName>
871 <portName>clamp.it.tests.http</portName>
872 </portNames>
873 </configuration>
874 </execution>
875 </executions>
876 </plugin>
877
878 <plugin>
879 <groupId>org.springframework.boot</groupId>
880 <artifactId>spring-boot-maven-plugin</artifactId>
sebdete65d4572020-03-24 08:51:20 -0700881 <version>${springboot.version}</version>
sebdet101193d2019-09-05 18:25:59 +0200882 <executions>
883 <execution>
884 <goals>
885 <goal>repackage</goal>
886 </goals>
887 <phase>package</phase>
888 </execution>
889 </executions>
890 </plugin>
891 <plugin>
892 <groupId>org.apache.maven.plugins</groupId>
893 <artifactId>maven-surefire-plugin</artifactId>
sebdet1b6a4282019-11-05 13:44:53 +0100894 <version>2.22.2</version>
sebdet101193d2019-09-05 18:25:59 +0200895 <configuration>
896 <forkCount>1C</forkCount>
897 <reuseForks>true</reuseForks>
898 <useSystemClassLoader>false</useSystemClassLoader>
899 <argLine>${surefireArgLine}</argLine>
900 </configuration>
901 </plugin>
902
903 <plugin>
904 <groupId>org.apache.maven.plugins</groupId>
905 <artifactId>maven-failsafe-plugin</artifactId>
sebdet1b6a4282019-11-05 13:44:53 +0100906 <version>2.22.2</version>
sebdet101193d2019-09-05 18:25:59 +0200907 <executions>
908 <execution>
909 <id>integration-tests</id>
910 <goals>
911 <goal>integration-test</goal>
912 <goal>verify</goal>
913 </goals>
914 <configuration>
915 <additionalClasspathElements>
916 <additionalClasspathElement>${project.build.directory}/classes</additionalClasspathElement>
917 </additionalClasspathElements>
918 <includes>
919 <include>**/*ItCase.java</include>
920 </includes>
sebdetd6f44132020-07-27 17:49:18 +0200921 <forkCount>1</forkCount>
922 <reuseForks>true</reuseForks>
sebdet101193d2019-09-05 18:25:59 +0200923 <useSystemClassLoader>false</useSystemClassLoader>
924 <argLine>${failsafeArgLine}</argLine>
925 </configuration>
926 </execution>
927 </executions>
sebdet101193d2019-09-05 18:25:59 +0200928 </plugin>
929 <plugin>
930 <groupId>io.fabric8</groupId>
931 <artifactId>docker-maven-plugin</artifactId>
sebdet1b6a4282019-11-05 13:44:53 +0100932 <version>0.31.0</version>
sebdet101193d2019-09-05 18:25:59 +0200933 <dependencies>
934 <dependency>
935 <groupId>org.apache.httpcomponents</groupId>
936 <artifactId>httpclient</artifactId>
937 <version>4.5.5</version>
938 </dependency>
939 </dependencies>
940 <configuration>
941 <verbose>true</verbose>
942 <apiVersion>1.35</apiVersion>
943 <images>
944 <image>
sebdet32bfb482020-07-31 18:25:34 +0200945 <name>docker.io/mariadb:10.5.4</name>
sebdet101193d2019-09-05 18:25:59 +0200946 <alias>mariadb</alias>
947 <run>
948 <env>
949 <MYSQL_ROOT_PASSWORD>strong_pitchou</MYSQL_ROOT_PASSWORD>
950 </env>
951 <hostname>mariadb</hostname>
952 <volumes>
953 <bind>
sebdetfdfde212019-09-12 10:59:15 +0200954 <volume>${project.basedir}/extra/sql/:/docker-entrypoint-initdb.d:rw</volume>
sebdet101193d2019-09-05 18:25:59 +0200955 <volume>${project.basedir}/extra/docker/mariadb/conf1:/etc/mysql/conf.d</volume>
956 </bind>
957 </volumes>
958 <wait>
sebdet32bfb482020-07-31 18:25:34 +0200959 <log>socket: '/run/mysqld/mysqld.sock' port: 3306 mariadb.org binary distribution</log>
960 <time>300000</time>
sebdetfdfde212019-09-12 10:59:15 +0200961 <exec>
962 <preStop>/docker-entrypoint-initdb.d/dump/backup-data-only.sh</preStop>
963 </exec>
sebdet101193d2019-09-05 18:25:59 +0200964 </wait>
965 <ports>
966 <port>${docker.mariadb.port.host}:3306</port>
967 </ports>
sebdet1b6a4282019-11-05 13:44:53 +0100968 <network>
969 <mode>bridge</mode>
970 </network>
sebdet101193d2019-09-05 18:25:59 +0200971 </run>
972 </image>
973 <image>
sebdetd7698b32020-07-29 16:27:16 +0200974 <name>docker.io/python:2-slim</name>
sebdet101193d2019-09-05 18:25:59 +0200975 <alias>python</alias>
976 <run>
977 <hostname>python</hostname>
978 <volumes>
979 <bind>
980 <volume>${project.basedir}/src/test/resources/http-cache/:/usr/src/http-cache-app</volume>
981 <volume>${project.basedir}/src/test/resources/http-cache/example/:/usr/src/http-cache-app/data-cache</volume>
982 </bind>
983 </volumes>
984 <wait>
985 <tcp>
986 <ports>
987 <port>8080</port>
988 </ports>
989 <mode>direct</mode>
990 </tcp>
991 <time>120000</time>
992 </wait>
993 <ports>
994 <port>${docker.http-cache.port.host}:8080</port>
995 </ports>
996 <workingDir>/usr/src/http-cache-app</workingDir>
997 <cmd>
998 <shell>./start_http_cache.sh ${python.http.proxy.param}
999 --python_proxyaddress=localhost:${docker.http-cache.port.host}</shell>
1000 </cmd>
sebdet1b6a4282019-11-05 13:44:53 +01001001 <network>
1002 <mode>bridge</mode>
1003 </network>
sebdet101193d2019-09-05 18:25:59 +02001004 </run>
1005 </image>
1006 <image>
1007 <name>onap/clamp-backend</name>
1008 <alias>onap-clamp-backend</alias>
1009 <run>
1010 <skip>true</skip>
1011 </run>
1012 <build>
1013 <cleanup>true</cleanup>
1014 <tags>
1015 <tag>latest</tag>
1016 <tag>${project.docker.latesttagtimestamp.version}</tag>
1017 <tag>${project.docker.latesttag.version}</tag>
1018 </tags>
Ted Humphrey01e5fde2020-01-27 18:57:39 -05001019 <!-- A relative path is looked up in ${project.basedir}/src/main/docker by
sebdet101193d2019-09-05 18:25:59 +02001020 default -->
1021 <dockerFile>backend/Dockerfile</dockerFile>
1022 <assembly>
1023 <descriptor>backend/backend-files.xml</descriptor>
1024 <name>onap-clamp-backend</name>
1025 </assembly>
1026 </build>
1027 </image>
1028 <image>
1029 <name>onap/clamp-frontend</name>
1030 <alias>onap-clamp-frontend</alias>
1031 <run>
1032 <skip>true</skip>
1033 </run>
1034 <build>
1035 <cleanup>true</cleanup>
1036 <tags>
1037 <tag>latest</tag>
1038 <tag>${project.docker.latesttagtimestamp.version}</tag>
1039 <tag>${project.docker.latesttag.version}</tag>
1040 </tags>
Ted Humphrey01e5fde2020-01-27 18:57:39 -05001041 <!-- A relative path is looked up in ${project.basedir}/src/main/docker by
sebdet101193d2019-09-05 18:25:59 +02001042 default -->
1043 <dockerFile>frontend/Dockerfile</dockerFile>
1044 <assembly>
1045 <descriptor>frontend/frontend-files.xml</descriptor>
1046 <name>onap-clamp-frontend</name>
1047 </assembly>
1048 </build>
1049 </image>
sebdet101193d2019-09-05 18:25:59 +02001050 </images>
1051 </configuration>
1052
1053 <executions>
1054 <execution>
1055 <id>generate-images</id>
1056 <phase>install</phase>
1057 <goals>
1058 <goal>build</goal>
1059 </goals>
1060 </execution>
1061 <execution>
1062 <id>push-images</id>
1063 <phase>deploy</phase>
1064 <goals>
1065 <goal>push</goal>
1066 </goals>
1067 </execution>
1068 <execution>
1069 <id>docker-start-for-it</id>
1070 <phase>pre-integration-test</phase>
1071 <goals>
1072 <goal>start</goal>
1073 </goals>
1074 </execution>
1075 <execution>
1076 <id>docker-stop-for-it</id>
1077 <phase>post-integration-test</phase>
1078 <goals>
1079 <goal>stop</goal>
1080 </goals>
1081 </execution>
1082 </executions>
1083 </plugin>
1084
1085 <plugin>
1086 <groupId>org.jacoco</groupId>
1087 <artifactId>jacoco-maven-plugin</artifactId>
sebdet1b6a4282019-11-05 13:44:53 +01001088 <version>0.8.5</version>
sebdet101193d2019-09-05 18:25:59 +02001089 <configuration>
1090 <dumpOnExit>true</dumpOnExit>
1091 <append>true</append>
1092 <includes>
ChrisC4c4c3fd2020-01-27 14:54:56 +01001093 <include>org/onap/clamp/**</include>
sebdet101193d2019-09-05 18:25:59 +02001094 </includes>
1095 </configuration>
1096 <executions>
1097 <execution>
1098 <id>pre-unit-test</id>
1099 <goals>
1100 <goal>prepare-agent</goal>
1101 </goals>
1102 <configuration>
1103 <destFile>${project.build.directory}/coverage-reports/jacoco.exec</destFile>
1104 <propertyName>surefireArgLine</propertyName>
1105 <!-- <append>true</append> -->
1106 </configuration>
1107 </execution>
1108 <execution>
1109 <id>pre-integration-test</id>
1110 <phase>pre-integration-test</phase>
1111 <goals>
1112 <goal>prepare-agent</goal>
1113 </goals>
1114 <configuration>
1115 <destFile>${project.build.directory}/coverage-reports/jacoco-it.exec</destFile>
1116 <propertyName>failsafeArgLine</propertyName>
1117 <!-- <append>true</append> -->
1118 </configuration>
1119 </execution>
1120 <execution>
1121 <goals>
1122 <goal>merge</goal>
1123 </goals>
1124 <phase>post-integration-test</phase>
1125 <configuration>
1126 <fileSets>
1127 <fileSet
1128 implementation="org.apache.maven.shared.model.fileset.FileSet">
1129 <directory>${project.build.directory}/coverage-reports</directory>
1130 <includes>
1131 <include>*.exec</include>
1132 </includes>
1133 </fileSet>
1134 </fileSets>
sebdetf332e2e2020-01-24 13:49:49 +01001135 <destFile>${project.build.directory}/jacoco.exec</destFile>
sebdet101193d2019-09-05 18:25:59 +02001136 </configuration>
1137 </execution>
sebdet749c0f12020-01-23 13:35:34 +01001138 <execution>
sebdetf332e2e2020-01-24 13:49:49 +01001139 <id>report-xml</id>
sebdet749c0f12020-01-23 13:35:34 +01001140 <goals>
1141 <goal>report</goal>
1142 </goals>
sebdet749c0f12020-01-23 13:35:34 +01001143 <configuration>
ChrisC4c4c3fd2020-01-27 14:54:56 +01001144 <!-- Setting explicit path, so that we remember where it picks them up from -->
1145 <dataFile>${project.build.directory}/jacoco.exec</dataFile>
1146 <outputDirectory>${project.build.directory}/jacoco-html-xml-reports</outputDirectory>
sebdet749c0f12020-01-23 13:35:34 +01001147 </configuration>
1148 </execution>
sebdet101193d2019-09-05 18:25:59 +02001149 </executions>
1150 </plugin>
1151
1152 <!-- This plugin will be useful when we will have multi-modules project -->
1153 <plugin>
1154 <groupId>org.codehaus.mojo</groupId>
1155 <artifactId>versions-maven-plugin</artifactId>
1156 <version>1.3.1</version>
1157 </plugin>
1158
1159 <plugin>
1160 <groupId>com.github.eirslett</groupId>
1161 <artifactId>frontend-maven-plugin</artifactId>
1162 <version>1.8.0</version>
1163 <configuration>
1164 <installDirectory>${project.build.directory}/${ui.react.src}</installDirectory>
sebdet101193d2019-09-05 18:25:59 +02001165 </configuration>
1166 <executions>
1167 <execution>
1168 <id>install_node_and_npm</id>
1169 <goals>
1170 <goal>install-node-and-npm</goal>
1171 </goals>
1172 <phase>generate-sources</phase>
1173 <configuration>
Ted Humphrey01e5fde2020-01-27 18:57:39 -05001174 <nodeVersion>v12.13.0</nodeVersion>
1175 <npmVersion>6.13.0</npmVersion>
sebdet101193d2019-09-05 18:25:59 +02001176 </configuration>
1177 </execution>
1178 <execution>
1179 <id>npm_install</id>
1180 <goals>
1181 <goal>npm</goal>
1182 </goals>
1183 <phase>compile</phase>
1184 <configuration>
Ted Humphrey01e5fde2020-01-27 18:57:39 -05001185 <workingDirectory>${project.build.directory}/${ui.react.src}</workingDirectory>
sebdet996071f2019-10-25 13:25:57 +02001186 <arguments>install</arguments>
sebdet101193d2019-09-05 18:25:59 +02001187 </configuration>
1188 </execution>
1189 <execution>
1190 <id>npm_test</id>
1191 <goals>
1192 <goal>npm</goal>
1193 </goals>
1194 <phase>test</phase>
1195 <configuration>
sebdet2dd4e992020-03-04 15:47:39 -08001196 <skip>${maven.test.skip}</skip>
sebdet101193d2019-09-05 18:25:59 +02001197 <arguments>run-script test:coverage</arguments>
Ted Humphrey01e5fde2020-01-27 18:57:39 -05001198 <workingDirectory>${project.build.directory}/${ui.react.src}</workingDirectory>
1199 </configuration>
1200 </execution>
1201 <execution>
1202 <id>npm_install_lib</id>
1203 <goals>
1204 <goal>npm</goal>
1205 </goals>
1206 <phase>deploy</phase>
1207 <configuration>
1208 <workingDirectory>${project.build.directory}/${ui.react.lib.src}</workingDirectory>
1209 <arguments>install</arguments>
1210 </configuration>
1211 </execution>
1212 <execution>
1213 <id>npm_build_lib</id>
1214 <goals>
1215 <goal>npm</goal>
1216 </goals>
1217 <phase>deploy</phase>
1218 <configuration>
1219 <workingDirectory>${project.build.directory}/${ui.react.lib.src}</workingDirectory>
1220 <arguments>run build</arguments>
sebdet101193d2019-09-05 18:25:59 +02001221 </configuration>
1222 </execution>
1223 <execution>
1224 <id>npm_publish</id>
1225 <goals>
1226 <goal>npm</goal>
1227 </goals>
1228 <phase>deploy</phase>
1229 <configuration>
Ted Humphrey01e5fde2020-01-27 18:57:39 -05001230 <workingDirectory>${project.build.directory}/${ui.react.lib.src}</workingDirectory>
sebdetdd107682019-11-13 13:13:07 +01001231 <arguments>publish</arguments>
sebdet101193d2019-09-05 18:25:59 +02001232 </configuration>
1233 </execution>
1234 </executions>
1235 </plugin>
sebdet1b6a4282019-11-05 13:44:53 +01001236 <plugin>
1237 <groupId>org.apache.maven.plugins</groupId>
1238 <artifactId>maven-compiler-plugin</artifactId>
1239 <version>3.8.1</version>
1240 <configuration>
sebdete17bc1b2019-11-18 17:57:32 +01001241 <source>11</source>
1242 <target>11</target>
sebdet1b6a4282019-11-05 13:44:53 +01001243 </configuration>
1244 </plugin>
sebdetd07b6502019-11-08 13:49:44 +01001245 <plugin>
1246 <groupId>org.sonarsource.scanner.maven</groupId>
1247 <artifactId>sonar-maven-plugin</artifactId>
1248 <version>3.7.0.1746</version>
1249 </plugin>
Ted Humphreyfd8f0132020-06-02 09:39:30 -04001250 <plugin>
1251 <groupId>org.codehaus.mojo</groupId>
1252 <artifactId>exec-maven-plugin</artifactId>
1253 <version>1.3.2</version>
1254 <executions>
1255 <execution>
1256 <id>libIndexCheck</id>
1257 <phase>validate</phase>
1258 <goals>
1259 <goal>exec</goal>
1260 </goals>
1261 </execution>
1262 </executions>
1263 <configuration>
1264 <executable>bash</executable>
1265 <arguments>
1266 <argument>${project.basedir}/src/main/script/checkLibIndex.sh</argument>
1267 </arguments>
1268 </configuration>
1269 </plugin>
sebdet101193d2019-09-05 18:25:59 +02001270 </plugins>
1271 </build>
ChrisC5e9feb22017-06-21 02:38:57 -07001272</project>