blob: ab21396d3cde62ab2aacc5c87ffb214343cece1f [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>
sebdet3dea3812020-11-09 12:01:57 +010029 <version>5.1.5-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
sebdet025e65f2020-12-10 15:10:15 +010033 <parent>
34 <groupId>org.onap.policy.parent</groupId>
35 <artifactId>integration</artifactId>
36 <version>3.3.0-SNAPSHOT</version>
37 <relativePath />
38 </parent>
Determe, Sebastien (sd378r)a66fe452017-08-08 06:42:49 -070039
sebdet101193d2019-09-05 18:25:59 +020040 <description>
41 This is the MAVEN project that builds everything for ONAP CLAMP.
42 Docker engine is normally requires to perfom all possible tasks (including integration tests)
Ted Humphrey01e5fde2020-01-27 18:57:39 -050043
sebdet101193d2019-09-05 18:25:59 +020044 It can build:
45 - The ONAP CLAMP JAR that contains CLAMP back-end code.
46 - The DOCKER images for:
47 * CLAMP backend (Java Spring)
48 * CLAMP frontend (Javscript React)
Determe, Sebastien (sd378r)8bf33432017-08-08 02:49:33 -070049
sebdet101193d2019-09-05 18:25:59 +020050 It can test:
51 - The CLAMP backend, JAVA unit testing
52 - The CLAMP backend, JAVA integration tests (with Spring + docker mariadb database + docker policy/dcae emulator written in python)
53 - The CLAMP frontend, Javascrip tests (NodeJS(NPM) + JEST + Enzyme fro React)
Ted Humphrey01e5fde2020-01-27 18:57:39 -050054
sebdet101193d2019-09-05 18:25:59 +020055 The test coverage for dev's can be found after a "clean install" build in:
56 - Clamp backend: target/jacoco-dev.exec (unit tests + integration tests merged)
57 or separately target/coverage-reports/jacoco.exec and target/coverage-reports/jacoco-it.exec
58 - Clamp frontend: target/ui-react/coverage
Determe, Sebastien (sd378r)8bf33432017-08-08 02:49:33 -070059
sebdet101193d2019-09-05 18:25:59 +020060 Useful mvn commands:
61 - mvn clean install: Build Clamp backend JAR + unit tests + integration tests + NPM tests (+coverage for all)
62 - mvn clean install -DskipITs=true: Build Clamp backend JAR + unit tests + NPM tests (+coverage for all), it does not require a DOCKER engine
63 - mvn clean install -DskipTests -P docker: Build Clamp backend JAR + all docker images
Determe, Sebastien (sd378r)8bf33432017-08-08 02:49:33 -070064
sebdet101193d2019-09-05 18:25:59 +020065 To start CLAMP (Build it before):
66 - Use docker-compose file in ./extra/docker/clamp/docker-compose.yml
67 - Use the script located in ./extra/bin/start-backend.sh + start-frontend.sh
68 - Use your IDE to use the Jar or start NVM/NPM
Determe, Sebastien (sd378r)8bf33432017-08-08 02:49:33 -070069
sebdet101193d2019-09-05 18:25:59 +020070 </description>
ChrisCae04cf32018-02-05 05:21:59 -080071
sebdet101193d2019-09-05 18:25:59 +020072 <properties>
73 <maven.build.timestamp.format>yyyyMMdd'T'HHmmss'Z'</maven.build.timestamp.format>
74 <clamp.project.version>${project.version}</clamp.project.version>
75 <clamp.build.timestamp>${maven.build.timestamp}</clamp.build.timestamp>
sebdet101193d2019-09-05 18:25:59 +020076 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
77 <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
Determe, Sebastien (sd378r)8bf33432017-08-08 02:49:33 -070078
sebdet101193d2019-09-05 18:25:59 +020079 <eelf.core.version>1.0.0</eelf.core.version>
sebdet32bfb482020-07-31 18:25:34 +020080 <camel.version>2.25.2</camel.version>
sebdet88fd35f2020-10-09 16:32:12 +020081 <springboot.version>2.2.10.RELEASE</springboot.version>
Determe, Sebastien (sd378r)8bf33432017-08-08 02:49:33 -070082
sebdet101193d2019-09-05 18:25:59 +020083 <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
84 <sonar.surefire.reportsPath>${project.build.directory}/surefire-reports</sonar.surefire.reportsPath>
ChrisC4c4c3fd2020-01-27 14:54:56 +010085 <sonar.coverage.jacoco.xmlReportPaths>${project.build.directory}/jacoco-html-xml-reports/jacoco.xml</sonar.coverage.jacoco.xmlReportPaths>
sebdet101193d2019-09-05 18:25:59 +020086 <sonar.jacoco.reportMissing.force.zero>true</sonar.jacoco.reportMissing.force.zero>
87 <sonar.projectVersion>${project.version}</sonar.projectVersion>
ChrisC9abd1982020-01-28 11:00:02 +010088 <sonar.log.level>DEBUG</sonar.log.level>
sebdetf2d71eb2020-01-30 16:37:27 +010089 <sonar.nodejs.executable>${project.build.directory}/${ui.react.src}/node/node</sonar.nodejs.executable>
90 <sonar.verbose>true</sonar.verbose>
ChrisCf04d3752020-01-28 14:14:53 +010091 <sonar.sources>src/main,${project.build.directory}/${ui.react.src}/src</sonar.sources>
sebdet156d6ea2019-09-06 15:52:18 +020092 <sonar.exclusions>src/main/resources/**</sonar.exclusions>
ChrisC83ad93c2020-01-27 17:26:24 +010093 <sonar.scm.exclusions.disabled>true</sonar.scm.exclusions.disabled>
94 <sonar.javascript.lcov.reportPaths>${project.build.directory}/${ui.react.src}/coverage/lcov.info</sonar.javascript.lcov.reportPaths>
sebdete06b7ef2020-02-10 15:51:07 +010095 <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 +020096 <docker.push.registry>localhost:5000</docker.push.registry>
97 <docker.pull.registry>nexus3.onap.org:10001</docker.pull.registry>
98 <docker.skip.build>true</docker.skip.build>
99 <docker.skip.push>true</docker.skip.push>
100 <docker.skip.tag>true</docker.skip.tag>
101 <skip.staging.artifacts>false</skip.staging.artifacts>
102 <python.http.proxy.param />
sebdetbc919702020-08-03 15:14:02 +0200103 <tomcat.version>9.0.37</tomcat.version>
sebdet101193d2019-09-05 18:25:59 +0200104 <ui.react.src>ui-react</ui.react.src>
Ted Humphrey01e5fde2020-01-27 18:57:39 -0500105 <ui.react.lib.src>ui-react-lib</ui.react.lib.src>
sebdetb0fba2f2020-02-10 18:25:49 +0100106 <npm.publish.url>https://nexus3.onap.org/repository/npm.snapshot/</npm.publish.url>
sebdet101193d2019-09-05 18:25:59 +0200107 </properties>
ChrisC5e9feb22017-06-21 02:38:57 -0700108
sebdet101193d2019-09-05 18:25:59 +0200109 <profiles>
sebdetf2d71eb2020-01-30 16:37:27 +0100110 <!-- BEGIN: NOT USABLE profiles, those are defined when specific flags are enabled -->
sebdet101193d2019-09-05 18:25:59 +0200111 <profile>
112 <id>without-test</id>
113 <activation>
114 <property>
115 <name>maven.test.skip</name>
116 <value>true</value>
117 </property>
118 </activation>
119 <properties>
120 <docker.skip.run>true</docker.skip.run>
121 <docker.skip>true</docker.skip>
122 </properties>
123 </profile>
124 <profile>
125 <id>without-IT-only</id>
126 <activation>
127 <property>
128 <name>skipITs</name>
129 <value>true</value>
130 </property>
131 </activation>
132 <properties>
133 <docker.skip.run>true</docker.skip.run>
134 <docker.skip>true</docker.skip>
135 </properties>
136 </profile>
137 <profile>
138 <id>without-IT-only2</id>
139 <activation>
140 <property>
141 <name>skipTests</name>
142 <value>true</value>
143 </property>
144 </activation>
145 <properties>
146 <docker.skip.run>true</docker.skip.run>
147 <docker.skip>true</docker.skip>
148 </properties>
149 </profile>
sebdetf2d71eb2020-01-30 16:37:27 +0100150 <!-- END: NOT USABLE profiles, those are defined when specific flags are enabled -->
sebdet101193d2019-09-05 18:25:59 +0200151 <profile>
152 <id>docker</id>
153 <properties>
154 <skip.staging.artifacts>true</skip.staging.artifacts>
155 <docker.skip.build>false</docker.skip.build>
156 <docker.skip.tag>false</docker.skip.tag>
157 <docker.skip.push>false</docker.skip.push>
158 <docker.skip>false</docker.skip>
159 </properties>
160 </profile>
161 </profiles>
Determe, Sebastien (sd378r)d3428d82018-06-26 15:05:55 +0200162
sebdet101193d2019-09-05 18:25:59 +0200163 <distributionManagement>
164 <repository>
165 <id>ecomp-releases</id>
166 <name>Clamp Release Repository</name>
167 <url>https://nexus.onap.org/content/repositories/releases/</url>
168 </repository>
169 <snapshotRepository>
170 <id>ecomp-snapshots</id>
171 <name>Clamp Snapshot Repository</name>
172 <url>https://nexus.onap.org/content/repositories/snapshots/</url>
173 </snapshotRepository>
174 <site>
175 <id>ecomp-site</id>
176 <url>dav:https://nexus.onap.org/content/sites/site/org/onap/clamp/${project.version}</url>
177 </site>
178 </distributionManagement>
ChrisC5e9feb22017-06-21 02:38:57 -0700179
sebdet101193d2019-09-05 18:25:59 +0200180 <repositories>
181 <repository>
182 <id>onap-public</id>
183 <name>onap-public</name>
184 <url>https://nexus.onap.org/content/repositories/public/</url>
185 <releases>
186 <enabled>true</enabled>
187 </releases>
188 <snapshots>
189 <enabled>false</enabled>
190 </snapshots>
191 </repository>
192 <repository>
193 <id>ecomp-releases</id>
194 <name>ONAP Release Repository</name>
195 <url>https://nexus.onap.org/content/repositories/releases/</url>
196 </repository>
197 <repository>
198 <id>ecomp-staging</id>
199 <name>ONAP Staging Repository</name>
200 <url>https://nexus.onap.org/content/repositories/staging/</url>
201 </repository>
202 <repository>
203 <id>ecomp-snapshots</id>
204 <name>ONAP Snapshot Repository</name>
205 <url>https://nexus.onap.org/content/repositories/snapshots/</url>
206 <snapshots>
207 <enabled>true</enabled>
208 </snapshots>
209 <releases>
210 <enabled>false</enabled>
211 </releases>
212 </repository>
213 <repository>
214 <id>central</id>
215 <url>http://repo1.maven.org/maven2/</url>
216 </repository>
217 </repositories>
218 <pluginRepositories>
219 <pluginRepository>
220 <id>onap-public</id>
221 <name>onap-public</name>
222 <url>https://nexus.onap.org/content/repositories/public/</url>
223 <releases>
224 <enabled>true</enabled>
225 </releases>
226 <snapshots>
227 <enabled>false</enabled>
228 </snapshots>
229 </pluginRepository>
230 <pluginRepository>
231 <id>central</id>
232 <url>http://repo1.maven.org/maven2/</url>
233 </pluginRepository>
234 </pluginRepositories>
ChrisC5e9feb22017-06-21 02:38:57 -0700235
sebdet101193d2019-09-05 18:25:59 +0200236 <dependencyManagement>
Determe, Sebastien (sd378r)b4f7cb62017-11-16 13:27:22 +0100237 <dependencies>
sebdet101193d2019-09-05 18:25:59 +0200238 <!-- Spring Boot BOM -->
Piotr Darosz6eb37422019-03-08 14:50:29 +0100239 <dependency>
sebdet101193d2019-09-05 18:25:59 +0200240 <groupId>org.springframework.boot</groupId>
241 <artifactId>spring-boot-dependencies</artifactId>
242 <version>${springboot.version}</version>
243 <type>pom</type>
244 <scope>import</scope>
Piotr Darosz6eb37422019-03-08 14:50:29 +0100245 </dependency>
sebdet101193d2019-09-05 18:25:59 +0200246 <!-- Camel BOM -->
Piotr Darosz6eb37422019-03-08 14:50:29 +0100247 <dependency>
sebdet101193d2019-09-05 18:25:59 +0200248 <groupId>org.apache.camel</groupId>
249 <artifactId>camel-spring-boot-dependencies</artifactId>
250 <version>${camel.version}</version>
251 <type>pom</type>
252 <scope>import</scope>
Piotr Darosz6eb37422019-03-08 14:50:29 +0100253 </dependency>
sebdet101193d2019-09-05 18:25:59 +0200254 </dependencies>
255 </dependencyManagement>
256
257 <dependencies>
258 <dependency>
sebdet101193d2019-09-05 18:25:59 +0200259 <groupId>com.att.eelf</groupId>
260 <artifactId>eelf-core</artifactId>
261 <version>${eelf.core.version}</version>
sebdet1b6a4282019-11-05 13:44:53 +0100262 <exclusions>
263 <exclusion>
264 <groupId>org.powermock</groupId>
265 <artifactId>powermock-module-junit4</artifactId>
266 </exclusion>
267 <exclusion>
268 <groupId>org.powermock</groupId>
269 <artifactId>powermock-api-mockito</artifactId>
270 </exclusion>
271 </exclusions>
sebdet101193d2019-09-05 18:25:59 +0200272 </dependency>
273 <dependency>
Sébastien Determe13ab1f62020-08-20 10:03:36 +0000274 <groupId>org.codehaus.janino</groupId>
275 <artifactId>janino</artifactId>
276 <version>3.0.8</version>
277 </dependency>
278 <dependency>
sebdet101193d2019-09-05 18:25:59 +0200279 <groupId>org.apache.tomcat.embed</groupId>
280 <artifactId>tomcat-embed-core</artifactId>
281 <version>${tomcat.version}</version>
282 </dependency>
283 <dependency>
284 <groupId>org.apache.tomcat.embed</groupId>
285 <artifactId>tomcat-embed-el</artifactId>
286 <version>${tomcat.version}</version>
287 </dependency>
288 <dependency>
289 <groupId>org.apache.tomcat.embed</groupId>
290 <artifactId>tomcat-embed-websocket</artifactId>
291 <version>${tomcat.version}</version>
292 </dependency>
293 <dependency>
294 <groupId>org.apache.tomcat</groupId>
295 <artifactId>tomcat-annotations-api</artifactId>
296 <version>${tomcat.version}</version>
297 </dependency>
298 <!-- For CAMEL -->
299 <dependency>
300 <groupId>org.apache.camel</groupId>
301 <artifactId>camel-http4-starter</artifactId>
302 </dependency>
303 <dependency>
304 <groupId>org.apache.camel</groupId>
305 <artifactId>camel-spring-boot-starter</artifactId>
306 </dependency>
307 <dependency>
308 <groupId>org.apache.camel</groupId>
309 <artifactId>camel-jaxb-starter</artifactId>
310 </dependency>
311 <dependency>
312 <groupId>org.apache.camel</groupId>
313 <artifactId>camel-servlet-starter</artifactId>
314 </dependency>
315 <dependency>
316 <groupId>org.apache.camel</groupId>
317 <artifactId>camel-gson-starter</artifactId>
318 </dependency>
319 <dependency>
320 <groupId>org.apache.camel</groupId>
321 <artifactId>camel-swagger-java-starter</artifactId>
322 <exclusions>
323 <exclusion>
324 <groupId>javax.ws.rs</groupId>
325 <artifactId>jsr311-api</artifactId>
326 </exclusion>
327 <exclusion>
328 <groupId>org.slf4j</groupId>
329 <artifactId>slf4j-ext</artifactId>
330 </exclusion>
sebdet101193d2019-09-05 18:25:59 +0200331 </exclusions>
332 </dependency>
sebdet101193d2019-09-05 18:25:59 +0200333 <!-- Spring famework -->
334 <dependency>
335 <groupId>org.springframework.boot</groupId>
336 <artifactId>spring-boot-starter-web</artifactId>
337 <exclusions>
338 <exclusion>
339 <groupId>org.springframework.boot</groupId>
340 <artifactId>spring-boot-starter-json</artifactId>
341 </exclusion>
342 </exclusions>
343 </dependency>
344 <dependency>
345 <groupId>org.springframework.boot</groupId>
346 <artifactId>spring-boot-starter-tomcat</artifactId>
347 </dependency>
348 <dependency>
349 <groupId>org.springframework</groupId>
350 <artifactId>spring-jdbc</artifactId>
351 </dependency>
352 <dependency>
353 <groupId>org.springframework.boot</groupId>
354 <artifactId>spring-boot-starter-security</artifactId>
355 </dependency>
356 <dependency>
357 <groupId>org.springframework.boot</groupId>
358 <artifactId>spring-boot-autoconfigure</artifactId>
359 </dependency>
360 <dependency>
361 <groupId>org.springframework.boot</groupId>
362 <artifactId>spring-boot-starter-test</artifactId>
363 <scope>test</scope>
364 <exclusions>
365 <exclusion>
366 <groupId>com.vaadin.external.google</groupId>
367 <artifactId>android-json</artifactId>
368 </exclusion>
369 </exclusions>
370 </dependency>
371 <dependency>
372 <groupId>org.springframework.boot</groupId>
373 <artifactId>spring-boot-starter-data-jpa</artifactId>
374 </dependency>
375 <!-- Others dependencies -->
sebdet68af8102020-09-15 22:43:01 +0200376 <!-- Jaxws is required for AAF -->
377 <dependency>
378 <groupId>javax.xml.ws</groupId>
379 <artifactId>jaxws-api</artifactId>
380 <version>2.3.1</version>
381 </dependency>
sebdet101193d2019-09-05 18:25:59 +0200382 <dependency>
383 <groupId>org.onap.aaf.authz</groupId>
384 <artifactId>aaf-cadi-aaf</artifactId>
sebdetdcc4bdc2019-10-15 14:04:00 +0200385 <version>2.1.15</version>
sebdet101193d2019-09-05 18:25:59 +0200386 <exclusions>
387 <exclusion>
388 <groupId>javax.servlet</groupId>
389 <artifactId>servlet-api</artifactId>
390 </exclusion>
JulienBead6ab002020-03-23 17:37:33 +0100391 <exclusion>
392 <groupId>log4j</groupId>
393 <artifactId>log4j</artifactId>
394 </exclusion>
sebdet101193d2019-09-05 18:25:59 +0200395 </exclusions>
396 </dependency>
397 <dependency>
398 <groupId>ch.qos.logback</groupId>
399 <artifactId>logback-core</artifactId>
400 <version>1.2.3</version>
401 </dependency>
402 <dependency>
403 <groupId>ch.qos.logback</groupId>
404 <artifactId>logback-classic</artifactId>
405 <version>1.2.3</version>
406 </dependency>
407 <dependency>
sebdet101193d2019-09-05 18:25:59 +0200408 <groupId>commons-io</groupId>
409 <artifactId>commons-io</artifactId>
410 <version>2.6</version>
411 </dependency>
412 <dependency>
413 <groupId>com.googlecode.json-simple</groupId>
414 <artifactId>json-simple</artifactId>
415 <version>1.1.1</version>
416 </dependency>
417 <dependency>
418 <groupId>org.apache.commons</groupId>
419 <artifactId>commons-vfs2</artifactId>
420 <version>2.2</version>
421 </dependency>
422 <dependency>
sebdet101193d2019-09-05 18:25:59 +0200423 <groupId>org.slf4j</groupId>
424 <artifactId>slf4j-api</artifactId>
425 </dependency>
426 <dependency>
sebdet101193d2019-09-05 18:25:59 +0200427 <groupId>javax.transaction</groupId>
428 <artifactId>jta</artifactId>
429 <version>1.1</version>
430 </dependency>
431 <dependency>
432 <groupId>javax.persistence</groupId>
433 <artifactId>persistence-api</artifactId>
434 <version>1.0.2</version>
435 </dependency>
sebdet101193d2019-09-05 18:25:59 +0200436 <!-- Other dependencies to fix nexus IQ reported vulnerabilities -->
437 <dependency>
sebdetacb239a2020-08-03 16:03:49 +0200438 <groupId>commons-codec</groupId>
439 <artifactId>commons-codec</artifactId>
440 <version>1.14</version>
441 </dependency>
442 <dependency>
sebdet5ad6a2f2020-04-27 18:26:28 +0200443 <groupId>org.springframework.security</groupId>
444 <artifactId>spring-security-web</artifactId>
445 <version>5.2.3.RELEASE</version>
446 </dependency>
447 <dependency>
sebdet101193d2019-09-05 18:25:59 +0200448 <groupId>org.codehaus.plexus</groupId>
449 <artifactId>plexus-utils</artifactId>
450 <version>3.0.24</version>
451 </dependency>
452 <dependency>
453 <groupId>org.jboss.spec.javax.ws.rs</groupId>
454 <artifactId>jboss-jaxrs-api_2.0_spec</artifactId>
455 <version>1.0.1.Final</version>
456 </dependency>
457 <dependency>
458 <groupId>com.google.guava</groupId>
459 <artifactId>guava</artifactId>
460 <version>27.0-jre</version>
461 </dependency>
sebdet5ec88e42020-08-03 15:25:07 +0200462
sebdet101193d2019-09-05 18:25:59 +0200463 <!-- Remove the MYSQL connector and replace it by Mariadb -->
464 <dependency>
465 <groupId>org.mariadb.jdbc</groupId>
466 <artifactId>mariadb-java-client</artifactId>
sebdet298352b2020-08-03 16:18:22 +0200467 <version>2.6.2</version>
sebdet101193d2019-09-05 18:25:59 +0200468 </dependency>
469 <!-- For SDC Controller -->
470 <dependency>
471 <groupId>org.onap.sdc.sdc-distribution-client</groupId>
472 <artifactId>sdc-distribution-client</artifactId>
sebdet88fd35f2020-10-09 16:32:12 +0200473 <version>1.4.1</version>
sebdet101193d2019-09-05 18:25:59 +0200474 </dependency>
475 <dependency>
476 <groupId>org.onap.sdc.sdc-tosca</groupId>
477 <artifactId>sdc-tosca</artifactId>
478 <version>1.5.1</version>
sebdet32bfb482020-07-31 18:25:34 +0200479 <exclusions>
480 <exclusion>
481 <groupId>com.fasterxml.jackson.core</groupId>
482 <artifactId>jackson-databind</artifactId>
483 </exclusion>
484 </exclusions>
sebdet101193d2019-09-05 18:25:59 +0200485 </dependency>
sebdet3ed8d432020-03-24 15:49:19 -0700486 <dependency>
487 <groupId>org.yaml</groupId>
488 <artifactId>snakeyaml</artifactId>
489 <version>1.26</version>
490 </dependency>
sebdet3b017732020-04-20 15:30:45 +0200491 <dependency>
492 <groupId>org.dom4j</groupId>
493 <artifactId>dom4j</artifactId>
494 <version>2.1.3</version>
495 </dependency>
496
sebdet101193d2019-09-05 18:25:59 +0200497 <!-- TESTING -->
498 <dependency>
sebdete22fc902020-08-03 17:20:56 +0200499 <groupId>junit</groupId>
500 <artifactId>junit</artifactId>
501 <scope>test</scope>
502 </dependency>
503 <dependency>
sebdet101193d2019-09-05 18:25:59 +0200504 <groupId>org.assertj</groupId>
505 <artifactId>assertj-core</artifactId>
506 <version>3.10.0</version>
507 <scope>test</scope>
508 </dependency>
509 <dependency>
510 <groupId>org.mockito</groupId>
511 <artifactId>mockito-core</artifactId>
sebdet1b6a4282019-11-05 13:44:53 +0100512 <version>2.28.2</version>
513 <scope>test</scope>
514 </dependency>
515 <dependency>
516 <groupId>org.powermock</groupId>
517 <artifactId>powermock-api-mockito2</artifactId>
518 <version>2.0.4</version>
519 <scope>test</scope>
520 </dependency>
521 <dependency>
522 <groupId>org.powermock</groupId>
523 <artifactId>powermock-module-junit4</artifactId>
524 <version>2.0.4</version>
sebdet101193d2019-09-05 18:25:59 +0200525 <scope>test</scope>
526 </dependency>
JulienBe09da64a2020-05-14 17:40:52 +0200527 <dependency>
528 <groupId>com.github.docker-java</groupId>
529 <artifactId>docker-java-core</artifactId>
530 <version>3.2.1</version>
531 <scope>test</scope>
sebdet32bfb482020-07-31 18:25:34 +0200532 <exclusions>
533 <exclusion>
534 <groupId>com.fasterxml.jackson.core</groupId>
535 <artifactId>jackson-databind</artifactId>
536 </exclusion>
537 </exclusions>
JulienBe09da64a2020-05-14 17:40:52 +0200538 </dependency>
539 <dependency>
540 <groupId>com.github.docker-java</groupId>
541 <artifactId>docker-java</artifactId>
542 <version>3.2.1</version>
543 <scope>test</scope>
544 </dependency>
sebdet101193d2019-09-05 18:25:59 +0200545 </dependencies>
546
547 <build>
548 <finalName>clamp</finalName>
549
550 <testResources>
551 <testResource>
sebdet29e3cd12020-02-13 05:49:21 -0800552 <directory>src/main/resources</directory>
553 <filtering>true</filtering>
554 <excludes>
555 <exclude>clds/aaf/**</exclude>
556 </excludes>
557 </testResource>
558 <testResource>
559 <directory>src/main/resources</directory>
560 <filtering>false</filtering>
561 <includes>
562 <include>clds/aaf/**</include>
563 </includes>
564 </testResource>
565 <testResource>
sebdet101193d2019-09-05 18:25:59 +0200566 <directory>src/test/resources</directory>
567 <excludes>
568 <exclude>**/*.jks</exclude>
569 <exclude>**/*.csar</exclude>
570 </excludes>
571 <filtering>true</filtering>
572 </testResource>
573 <testResource>
574 <directory>src/test/resources/https</directory>
575 <includes>
576 <include>**.jks</include>
577 </includes>
578 <filtering>false</filtering>
579 <targetPath>https</targetPath>
580 </testResource>
581 <testResource>
582 <directory>src/test/resources/example/sdc</directory>
583 <includes>
584 <include>**.csar</include>
585 </includes>
586 <filtering>false</filtering>
587 <targetPath>example/sdc</targetPath>
588 </testResource>
589 </testResources>
590 <resources>
Ted Humphrey01e5fde2020-01-27 18:57:39 -0500591 <!-- For AAF folder maven should not try to filter Keystores/Truststores ... Otherwise
sebdet101193d2019-09-05 18:25:59 +0200592 they will be broken and unreadable -->
593 <resource>
594 <directory>src/main/resources</directory>
595 <filtering>true</filtering>
596 <excludes>
597 <exclude>clds/aaf/**</exclude>
598 </excludes>
599 </resource>
600 <resource>
601 <directory>src/main/resources</directory>
602 <filtering>false</filtering>
603 <includes>
604 <include>clds/aaf/**</include>
605 </includes>
606 </resource>
607 <resource>
608 <directory>${ui.react.src}</directory>
Ted Humphrey01e5fde2020-01-27 18:57:39 -0500609 <excludes>
610 <exclude>node_modules</exclude>
611 </excludes>
sebdet101193d2019-09-05 18:25:59 +0200612 <includes>
613 <include>src/**</include>
614 <include>public/**</include>
615 <include>package.json</include>
616 <include>package-lock.json</include>
617 </includes>
618 <filtering>true</filtering>
619 <targetPath>${project.build.directory}/${ui.react.src}</targetPath>
620 </resource>
Ted Humphrey01e5fde2020-01-27 18:57:39 -0500621 <resource>
622 <directory>${ui.react.src}</directory>
623 <includes>
624 <include>src/**</include>
625 </includes>
626 <excludes>
627 <exclude>**/__snapshots__/**</exclude>
628 <exclude>**/**.test.js</exclude>
629 </excludes>
630 <filtering>true</filtering>
631 <targetPath>${project.build.directory}/${ui.react.lib.src}</targetPath>
632 </resource>
633 <resource>
634 <directory>${ui.react.lib.src}</directory>
635 <includes>
636 <include>**</include>
637 </includes>
638 <excludes>
639 <exclude>node_modules/**</exclude>
640 <exclude>package-lock.json</exclude>
641 </excludes>
642 <filtering>true</filtering>
643 <targetPath>${project.build.directory}/${ui.react.lib.src}</targetPath>
644 </resource>
sebdet101193d2019-09-05 18:25:59 +0200645 </resources>
646
647 <plugins>
648 <plugin>
nrpandya82561262019-11-21 11:51:18 -0600649 <groupId>de.jpdigital</groupId>
650 <artifactId>hibernate52-ddl-maven-plugin</artifactId>
651 <version>2.2.0</version>
sebdet101193d2019-09-05 18:25:59 +0200652 <dependencies>
653 <dependency>
Determe, Sebastien (sd378r)f7855162018-04-27 14:02:39 +0200654 <groupId>javax.xml.bind</groupId>
655 <artifactId>jaxb-api</artifactId>
656 <version>2.3.0</version>
sebdet101193d2019-09-05 18:25:59 +0200657 </dependency>
658 </dependencies>
659 <executions>
660 <execution>
661 <phase>process-classes</phase>
662 <goals>
663 <goal>gen-ddl</goal>
664 </goals>
sebdete4422002018-10-16 17:47:54 +0200665 <configuration>
sebdet101193d2019-09-05 18:25:59 +0200666 <packages>
nrpandya82561262019-11-21 11:51:18 -0600667 <param>org.onap.clamp</param>
sebdet101193d2019-09-05 18:25:59 +0200668 </packages>
669 <dialects>
670 <param>MARIADB53</param>
671 </dialects>
672 <outputDirectory>${project.basedir}/extra/sql/bulkload/</outputDirectory>
673 <outputFileNameSuffix>create-tables</outputFileNameSuffix>
674 <!-- <createDropStatements>true</createDropStatements> -->
675 <omitDialectFromFileName>true</omitDialectFromFileName>
sebdete4422002018-10-16 17:47:54 +0200676 </configuration>
sebdet101193d2019-09-05 18:25:59 +0200677 </execution>
678 </executions>
679
680 </plugin>
Ted Humphrey01e5fde2020-01-27 18:57:39 -0500681 <!-- Read the swagger.json file and the definition from SwaggerConfig.java; generate
sebdet101193d2019-09-05 18:25:59 +0200682 a list of .adoc files containing the APIs info in more structured way -->
683 <plugin>
684 <groupId>io.github.swagger2markup</groupId>
685 <artifactId>swagger2markup-maven-plugin</artifactId>
686 <version>1.3.3</version>
687 <dependencies>
688 <dependency>
689 <groupId>io.github.swagger2markup</groupId>
690 <artifactId>swagger2markup-import-files-ext</artifactId>
691 <version>1.3.3</version>
692 </dependency>
693 <dependency>
694 <groupId>io.github.swagger2markup</groupId>
695 <artifactId>swagger2markup-spring-restdocs-ext</artifactId>
696 <version>1.3.3</version>
697 </dependency>
698 </dependencies>
699 <configuration>
700 <swaggerInput>${project.basedir}/docs/swagger/swagger.json</swaggerInput>
701 <outputDir>${project.build.directory}/asciidoc/generated</outputDir>
702 <config>
703 <swagger2markup.markupLanguage>ASCIIDOC</swagger2markup.markupLanguage>
704 </config>
705 </configuration>
706 <executions>
707 <execution>
708 <phase>post-integration-test</phase>
709 <goals>
710 <goal>convertSwagger2markup</goal>
711 </goals>
712 </execution>
713 </executions>
714 </plugin>
715
Ted Humphrey01e5fde2020-01-27 18:57:39 -0500716 <!-- Run the generated asciidoc through Asciidoctor to generate other documentation
sebdet101193d2019-09-05 18:25:59 +0200717 types, such as PDFs or HTML5 -->
718 <plugin>
719 <groupId>org.asciidoctor</groupId>
720 <artifactId>asciidoctor-maven-plugin</artifactId>
721 <version>1.5.7.1</version>
722 <dependencies>
723 <dependency>
724 <groupId>org.asciidoctor</groupId>
725 <artifactId>asciidoctorj-pdf</artifactId>
726 <version>1.5.0-alpha.10.1</version>
727 </dependency>
728 </dependencies>
729 <configuration>
730 <sourceDirectory>${project.basedir}/src/main/resources/asciidoc</sourceDirectory>
731 <sourceDocumentName>swagger.adoc</sourceDocumentName>
732 <attributes>
733 <doctype>book</doctype>
734 <toc>left</toc>
735 <toclevels>3</toclevels>
736 <numbered />
737 <hardbreaks />
738 <sectlinks />
739 <sectanchors />
740 <generated>${project.build.directory}/asciidoc/generated</generated>
741 </attributes>
742 </configuration>
743
744 <executions>
745 <execution>
746 <id>output-html</id>
747 <phase>post-integration-test</phase>
748 <goals>
749 <goal>process-asciidoc</goal>
750 </goals>
751 <configuration>
752 <backend>html5</backend>
753 <outputDirectory>${project.basedir}/docs/swagger</outputDirectory>
754 <outputDirectory>${project.basedir}/src/main/resources/META-INF/resources/</outputDirectory>
755 </configuration>
756 </execution>
757 <execution>
758 <id>output-pdf</id>
759 <phase>post-integration-test</phase>
760 <goals>
761 <goal>process-asciidoc</goal>
762 </goals>
763 <configuration>
764 <backend>pdf</backend>
765 <outputDirectory>${project.basedir}/docs/swagger</outputDirectory>
766 </configuration>
767 </execution>
768 </executions>
769 </plugin>
770 <plugin>
771 <groupId>org.codehaus.groovy.maven</groupId>
772 <artifactId>gmaven-plugin</artifactId>
773 <version>1.0</version>
774 <executions>
775 <execution>
sebdet7a739a52020-03-25 09:11:54 -0700776 <id>docker-tags</id>
sebdet101193d2019-09-05 18:25:59 +0200777 <phase>validate</phase>
778 <goals>
779 <goal>execute</goal>
780 </goals>
781 <configuration>
782 <source>${project.basedir}/src/main/script/TagVersion.groovy</source>
783 </configuration>
784 </execution>
sebdetc6622c42019-11-05 18:28:05 +0100785 <execution>
sebdet7a739a52020-03-25 09:11:54 -0700786 <id>npm-repos-selection</id>
sebdetc6622c42019-11-05 18:28:05 +0100787 <phase>validate</phase>
788 <goals>
789 <goal>execute</goal>
790 </goals>
791 <configuration>
792 <source>${project.basedir}/src/main/script/SelectNpmRepo.groovy</source>
793 </configuration>
794 </execution>
795 </executions>
796 </plugin>
797 <plugin>
sebdet101193d2019-09-05 18:25:59 +0200798 <groupId>org.apache.maven.plugins</groupId>
799 <artifactId>maven-jar-plugin</artifactId>
800 <version>3.0.2</version>
801 <executions>
802 <execution>
803 <id>jar-with-only-classes</id>
804 <phase>package</phase>
805 <goals>
806 <goal>jar</goal>
807 </goals>
808 <configuration>
809 <classifier>classes</classifier>
810 <includes>
811 <include>org/**</include>
812 </includes>
813 </configuration>
814 </execution>
815 </executions>
816 </plugin>
817 <plugin>
818 <groupId>org.codehaus.mojo</groupId>
819 <artifactId>build-helper-maven-plugin</artifactId>
820 <version>3.0.0</version>
821 <executions>
822 <execution>
823 <goals>
824 <goal>attach-artifact</goal>
825 </goals>
826 <phase>package</phase>
827 <configuration>
828 <artifacts>
829 <artifact>
830 <file>${project.build.directory}/clamp-classes.jar</file>
831 <type>jar</type>
832 <classifier>classes</classifier>
833 </artifact>
834 </artifacts>
835 </configuration>
836 </execution>
837 <execution>
838 <id>reserve-port-for-tests</id>
839 <phase>process-resources</phase>
840 <goals>
841 <goal>reserve-network-port</goal>
842 </goals>
843 <configuration>
844 <portNames>
845 <portName>docker.mariadb.port.host</portName>
846 <portName>docker.http-cache.port.host</portName>
847 <portName>clamp.it.tests.http-redirected</portName>
JulienBe09da64a2020-05-14 17:40:52 +0200848 <portName>clamp.it.tests.robotframework.http</portName>
sebdet101193d2019-09-05 18:25:59 +0200849 <portName>clamp.it.tests.https</portName>
850 <portName>clamp.it.tests.http</portName>
851 </portNames>
852 </configuration>
853 </execution>
854 </executions>
855 </plugin>
856
857 <plugin>
858 <groupId>org.springframework.boot</groupId>
859 <artifactId>spring-boot-maven-plugin</artifactId>
sebdete65d4572020-03-24 08:51:20 -0700860 <version>${springboot.version}</version>
sebdet101193d2019-09-05 18:25:59 +0200861 <executions>
862 <execution>
863 <goals>
864 <goal>repackage</goal>
865 </goals>
866 <phase>package</phase>
867 </execution>
868 </executions>
869 </plugin>
870 <plugin>
871 <groupId>org.apache.maven.plugins</groupId>
872 <artifactId>maven-surefire-plugin</artifactId>
sebdet1b6a4282019-11-05 13:44:53 +0100873 <version>2.22.2</version>
sebdet101193d2019-09-05 18:25:59 +0200874 <configuration>
875 <forkCount>1C</forkCount>
876 <reuseForks>true</reuseForks>
877 <useSystemClassLoader>false</useSystemClassLoader>
878 <argLine>${surefireArgLine}</argLine>
879 </configuration>
880 </plugin>
881
882 <plugin>
883 <groupId>org.apache.maven.plugins</groupId>
884 <artifactId>maven-failsafe-plugin</artifactId>
sebdet1b6a4282019-11-05 13:44:53 +0100885 <version>2.22.2</version>
sebdet101193d2019-09-05 18:25:59 +0200886 <executions>
887 <execution>
888 <id>integration-tests</id>
889 <goals>
890 <goal>integration-test</goal>
891 <goal>verify</goal>
892 </goals>
893 <configuration>
894 <additionalClasspathElements>
895 <additionalClasspathElement>${project.build.directory}/classes</additionalClasspathElement>
896 </additionalClasspathElements>
897 <includes>
898 <include>**/*ItCase.java</include>
899 </includes>
sebdet4bf786e2020-08-06 21:28:47 +0200900 <forkCount>1C</forkCount>
sebdetd6f44132020-07-27 17:49:18 +0200901 <reuseForks>true</reuseForks>
sebdet101193d2019-09-05 18:25:59 +0200902 <useSystemClassLoader>false</useSystemClassLoader>
903 <argLine>${failsafeArgLine}</argLine>
904 </configuration>
905 </execution>
906 </executions>
sebdet101193d2019-09-05 18:25:59 +0200907 </plugin>
908 <plugin>
909 <groupId>io.fabric8</groupId>
910 <artifactId>docker-maven-plugin</artifactId>
sebdet1b6a4282019-11-05 13:44:53 +0100911 <version>0.31.0</version>
sebdet101193d2019-09-05 18:25:59 +0200912 <dependencies>
913 <dependency>
914 <groupId>org.apache.httpcomponents</groupId>
915 <artifactId>httpclient</artifactId>
916 <version>4.5.5</version>
917 </dependency>
918 </dependencies>
919 <configuration>
920 <verbose>true</verbose>
921 <apiVersion>1.35</apiVersion>
922 <images>
923 <image>
sebdet32bfb482020-07-31 18:25:34 +0200924 <name>docker.io/mariadb:10.5.4</name>
sebdet101193d2019-09-05 18:25:59 +0200925 <alias>mariadb</alias>
926 <run>
927 <env>
928 <MYSQL_ROOT_PASSWORD>strong_pitchou</MYSQL_ROOT_PASSWORD>
929 </env>
930 <hostname>mariadb</hostname>
931 <volumes>
932 <bind>
sebdetfdfde212019-09-12 10:59:15 +0200933 <volume>${project.basedir}/extra/sql/:/docker-entrypoint-initdb.d:rw</volume>
sebdet101193d2019-09-05 18:25:59 +0200934 <volume>${project.basedir}/extra/docker/mariadb/conf1:/etc/mysql/conf.d</volume>
935 </bind>
936 </volumes>
937 <wait>
sebdet32bfb482020-07-31 18:25:34 +0200938 <log>socket: '/run/mysqld/mysqld.sock' port: 3306 mariadb.org binary distribution</log>
939 <time>300000</time>
sebdetfdfde212019-09-12 10:59:15 +0200940 <exec>
941 <preStop>/docker-entrypoint-initdb.d/dump/backup-data-only.sh</preStop>
942 </exec>
sebdet101193d2019-09-05 18:25:59 +0200943 </wait>
944 <ports>
945 <port>${docker.mariadb.port.host}:3306</port>
946 </ports>
sebdet1b6a4282019-11-05 13:44:53 +0100947 <network>
948 <mode>bridge</mode>
949 </network>
sebdet101193d2019-09-05 18:25:59 +0200950 </run>
951 </image>
952 <image>
sebdetd7698b32020-07-29 16:27:16 +0200953 <name>docker.io/python:2-slim</name>
sebdet101193d2019-09-05 18:25:59 +0200954 <alias>python</alias>
955 <run>
956 <hostname>python</hostname>
957 <volumes>
958 <bind>
959 <volume>${project.basedir}/src/test/resources/http-cache/:/usr/src/http-cache-app</volume>
960 <volume>${project.basedir}/src/test/resources/http-cache/example/:/usr/src/http-cache-app/data-cache</volume>
961 </bind>
962 </volumes>
963 <wait>
964 <tcp>
965 <ports>
966 <port>8080</port>
967 </ports>
968 <mode>direct</mode>
969 </tcp>
970 <time>120000</time>
971 </wait>
972 <ports>
973 <port>${docker.http-cache.port.host}:8080</port>
974 </ports>
975 <workingDir>/usr/src/http-cache-app</workingDir>
976 <cmd>
977 <shell>./start_http_cache.sh ${python.http.proxy.param}
978 --python_proxyaddress=localhost:${docker.http-cache.port.host}</shell>
979 </cmd>
sebdet1b6a4282019-11-05 13:44:53 +0100980 <network>
981 <mode>bridge</mode>
982 </network>
sebdet101193d2019-09-05 18:25:59 +0200983 </run>
984 </image>
985 <image>
986 <name>onap/clamp-backend</name>
987 <alias>onap-clamp-backend</alias>
988 <run>
989 <skip>true</skip>
990 </run>
991 <build>
992 <cleanup>true</cleanup>
993 <tags>
994 <tag>latest</tag>
995 <tag>${project.docker.latesttagtimestamp.version}</tag>
996 <tag>${project.docker.latesttag.version}</tag>
997 </tags>
Ted Humphrey01e5fde2020-01-27 18:57:39 -0500998 <!-- A relative path is looked up in ${project.basedir}/src/main/docker by
sebdet101193d2019-09-05 18:25:59 +0200999 default -->
1000 <dockerFile>backend/Dockerfile</dockerFile>
1001 <assembly>
1002 <descriptor>backend/backend-files.xml</descriptor>
1003 <name>onap-clamp-backend</name>
1004 </assembly>
1005 </build>
1006 </image>
1007 <image>
1008 <name>onap/clamp-frontend</name>
1009 <alias>onap-clamp-frontend</alias>
1010 <run>
1011 <skip>true</skip>
1012 </run>
1013 <build>
1014 <cleanup>true</cleanup>
1015 <tags>
1016 <tag>latest</tag>
1017 <tag>${project.docker.latesttagtimestamp.version}</tag>
1018 <tag>${project.docker.latesttag.version}</tag>
1019 </tags>
Ted Humphrey01e5fde2020-01-27 18:57:39 -05001020 <!-- A relative path is looked up in ${project.basedir}/src/main/docker by
sebdet101193d2019-09-05 18:25:59 +02001021 default -->
1022 <dockerFile>frontend/Dockerfile</dockerFile>
1023 <assembly>
1024 <descriptor>frontend/frontend-files.xml</descriptor>
1025 <name>onap-clamp-frontend</name>
1026 </assembly>
1027 </build>
1028 </image>
sebdet101193d2019-09-05 18:25:59 +02001029 </images>
1030 </configuration>
1031
1032 <executions>
1033 <execution>
1034 <id>generate-images</id>
1035 <phase>install</phase>
1036 <goals>
1037 <goal>build</goal>
1038 </goals>
1039 </execution>
1040 <execution>
1041 <id>push-images</id>
1042 <phase>deploy</phase>
1043 <goals>
1044 <goal>push</goal>
1045 </goals>
1046 </execution>
1047 <execution>
1048 <id>docker-start-for-it</id>
1049 <phase>pre-integration-test</phase>
1050 <goals>
1051 <goal>start</goal>
1052 </goals>
1053 </execution>
1054 <execution>
1055 <id>docker-stop-for-it</id>
1056 <phase>post-integration-test</phase>
1057 <goals>
1058 <goal>stop</goal>
1059 </goals>
1060 </execution>
1061 </executions>
1062 </plugin>
1063
1064 <plugin>
1065 <groupId>org.jacoco</groupId>
1066 <artifactId>jacoco-maven-plugin</artifactId>
sebdet1b6a4282019-11-05 13:44:53 +01001067 <version>0.8.5</version>
sebdet101193d2019-09-05 18:25:59 +02001068 <configuration>
1069 <dumpOnExit>true</dumpOnExit>
1070 <append>true</append>
1071 <includes>
ChrisC4c4c3fd2020-01-27 14:54:56 +01001072 <include>org/onap/clamp/**</include>
sebdet101193d2019-09-05 18:25:59 +02001073 </includes>
1074 </configuration>
1075 <executions>
1076 <execution>
1077 <id>pre-unit-test</id>
1078 <goals>
1079 <goal>prepare-agent</goal>
1080 </goals>
1081 <configuration>
1082 <destFile>${project.build.directory}/coverage-reports/jacoco.exec</destFile>
1083 <propertyName>surefireArgLine</propertyName>
1084 <!-- <append>true</append> -->
1085 </configuration>
1086 </execution>
1087 <execution>
1088 <id>pre-integration-test</id>
1089 <phase>pre-integration-test</phase>
1090 <goals>
1091 <goal>prepare-agent</goal>
1092 </goals>
1093 <configuration>
1094 <destFile>${project.build.directory}/coverage-reports/jacoco-it.exec</destFile>
1095 <propertyName>failsafeArgLine</propertyName>
1096 <!-- <append>true</append> -->
1097 </configuration>
1098 </execution>
1099 <execution>
1100 <goals>
1101 <goal>merge</goal>
1102 </goals>
1103 <phase>post-integration-test</phase>
1104 <configuration>
1105 <fileSets>
1106 <fileSet
1107 implementation="org.apache.maven.shared.model.fileset.FileSet">
1108 <directory>${project.build.directory}/coverage-reports</directory>
1109 <includes>
1110 <include>*.exec</include>
1111 </includes>
1112 </fileSet>
1113 </fileSets>
sebdetf332e2e2020-01-24 13:49:49 +01001114 <destFile>${project.build.directory}/jacoco.exec</destFile>
sebdet101193d2019-09-05 18:25:59 +02001115 </configuration>
1116 </execution>
sebdet749c0f12020-01-23 13:35:34 +01001117 <execution>
sebdetf332e2e2020-01-24 13:49:49 +01001118 <id>report-xml</id>
sebdet749c0f12020-01-23 13:35:34 +01001119 <goals>
1120 <goal>report</goal>
1121 </goals>
sebdet749c0f12020-01-23 13:35:34 +01001122 <configuration>
ChrisC4c4c3fd2020-01-27 14:54:56 +01001123 <!-- Setting explicit path, so that we remember where it picks them up from -->
1124 <dataFile>${project.build.directory}/jacoco.exec</dataFile>
1125 <outputDirectory>${project.build.directory}/jacoco-html-xml-reports</outputDirectory>
sebdet749c0f12020-01-23 13:35:34 +01001126 </configuration>
1127 </execution>
sebdet101193d2019-09-05 18:25:59 +02001128 </executions>
1129 </plugin>
1130
1131 <!-- This plugin will be useful when we will have multi-modules project -->
1132 <plugin>
1133 <groupId>org.codehaus.mojo</groupId>
1134 <artifactId>versions-maven-plugin</artifactId>
1135 <version>1.3.1</version>
1136 </plugin>
1137
1138 <plugin>
1139 <groupId>com.github.eirslett</groupId>
1140 <artifactId>frontend-maven-plugin</artifactId>
1141 <version>1.8.0</version>
1142 <configuration>
1143 <installDirectory>${project.build.directory}/${ui.react.src}</installDirectory>
sebdet101193d2019-09-05 18:25:59 +02001144 </configuration>
1145 <executions>
1146 <execution>
1147 <id>install_node_and_npm</id>
1148 <goals>
1149 <goal>install-node-and-npm</goal>
1150 </goals>
1151 <phase>generate-sources</phase>
1152 <configuration>
Ted Humphrey01e5fde2020-01-27 18:57:39 -05001153 <nodeVersion>v12.13.0</nodeVersion>
1154 <npmVersion>6.13.0</npmVersion>
sebdet101193d2019-09-05 18:25:59 +02001155 </configuration>
1156 </execution>
1157 <execution>
1158 <id>npm_install</id>
1159 <goals>
1160 <goal>npm</goal>
1161 </goals>
1162 <phase>compile</phase>
1163 <configuration>
Ted Humphrey01e5fde2020-01-27 18:57:39 -05001164 <workingDirectory>${project.build.directory}/${ui.react.src}</workingDirectory>
sebdet996071f2019-10-25 13:25:57 +02001165 <arguments>install</arguments>
sebdet101193d2019-09-05 18:25:59 +02001166 </configuration>
1167 </execution>
1168 <execution>
1169 <id>npm_test</id>
1170 <goals>
1171 <goal>npm</goal>
1172 </goals>
1173 <phase>test</phase>
1174 <configuration>
sebdet2dd4e992020-03-04 15:47:39 -08001175 <skip>${maven.test.skip}</skip>
sebdet101193d2019-09-05 18:25:59 +02001176 <arguments>run-script test:coverage</arguments>
Ted Humphrey01e5fde2020-01-27 18:57:39 -05001177 <workingDirectory>${project.build.directory}/${ui.react.src}</workingDirectory>
1178 </configuration>
1179 </execution>
1180 <execution>
1181 <id>npm_install_lib</id>
1182 <goals>
1183 <goal>npm</goal>
1184 </goals>
1185 <phase>deploy</phase>
1186 <configuration>
1187 <workingDirectory>${project.build.directory}/${ui.react.lib.src}</workingDirectory>
1188 <arguments>install</arguments>
1189 </configuration>
1190 </execution>
1191 <execution>
1192 <id>npm_build_lib</id>
1193 <goals>
1194 <goal>npm</goal>
1195 </goals>
1196 <phase>deploy</phase>
1197 <configuration>
1198 <workingDirectory>${project.build.directory}/${ui.react.lib.src}</workingDirectory>
1199 <arguments>run build</arguments>
sebdet101193d2019-09-05 18:25:59 +02001200 </configuration>
1201 </execution>
1202 <execution>
1203 <id>npm_publish</id>
1204 <goals>
1205 <goal>npm</goal>
1206 </goals>
1207 <phase>deploy</phase>
1208 <configuration>
Ted Humphrey01e5fde2020-01-27 18:57:39 -05001209 <workingDirectory>${project.build.directory}/${ui.react.lib.src}</workingDirectory>
sebdetdd107682019-11-13 13:13:07 +01001210 <arguments>publish</arguments>
sebdet101193d2019-09-05 18:25:59 +02001211 </configuration>
1212 </execution>
1213 </executions>
1214 </plugin>
sebdet1b6a4282019-11-05 13:44:53 +01001215 <plugin>
1216 <groupId>org.apache.maven.plugins</groupId>
1217 <artifactId>maven-compiler-plugin</artifactId>
1218 <version>3.8.1</version>
1219 <configuration>
sebdete17bc1b2019-11-18 17:57:32 +01001220 <source>11</source>
1221 <target>11</target>
sebdet1b6a4282019-11-05 13:44:53 +01001222 </configuration>
1223 </plugin>
sebdetd07b6502019-11-08 13:49:44 +01001224 <plugin>
1225 <groupId>org.sonarsource.scanner.maven</groupId>
1226 <artifactId>sonar-maven-plugin</artifactId>
1227 <version>3.7.0.1746</version>
1228 </plugin>
Ted Humphreyfd8f0132020-06-02 09:39:30 -04001229 <plugin>
1230 <groupId>org.codehaus.mojo</groupId>
1231 <artifactId>exec-maven-plugin</artifactId>
1232 <version>1.3.2</version>
1233 <executions>
1234 <execution>
1235 <id>libIndexCheck</id>
1236 <phase>validate</phase>
1237 <goals>
1238 <goal>exec</goal>
1239 </goals>
1240 </execution>
1241 </executions>
1242 <configuration>
1243 <executable>bash</executable>
1244 <arguments>
1245 <argument>${project.basedir}/src/main/script/checkLibIndex.sh</argument>
1246 </arguments>
1247 </configuration>
1248 </plugin>
sebdet101193d2019-09-05 18:25:59 +02001249 </plugins>
1250 </build>
ChrisC5e9feb22017-06-21 02:38:57 -07001251</project>