blob: 32372400d0e77f27c9111d7b7d3f87ed484eb322 [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=======================================================
sebdetbfabac92021-01-06 17:24:18 +01004 ONAP POLICY-CLAMP
Determe, Sebastien (sd378r)e35744d2017-08-29 04:21:41 -07005 ================================================================================
sebdetbfabac92021-01-06 17:24:18 +01006 Copyright (C) 2017-2021 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"
sebdet078c34d2021-01-20 23:02:17 +010024 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.policy</groupId>
28 <artifactId>clamp</artifactId>
sebdete7e46e52021-03-25 09:48:06 +010029 <version>6.1.0-SNAPSHOT</version>
sebdet078c34d2021-01-20 23:02:17 +010030 <name>policy-clamp</name>
ChrisC5e9feb22017-06-21 02:38:57 -070031
sebdeta5243a42019-06-13 13:48:04 +020032
sebdet025e65f2020-12-10 15:10:15 +010033 <parent>
sebdet078c34d2021-01-20 23:02:17 +010034 <groupId>org.onap.policy.parent</groupId>
35 <artifactId>integration</artifactId>
sebdet25f228a2021-02-17 12:01:01 +010036 <version>3.3.0</version>
sebdet078c34d2021-01-20 23:02:17 +010037 <relativePath/>
sebdet025e65f2020-12-10 15:10:15 +010038 </parent>
Determe, Sebastien (sd378r)a66fe452017-08-08 06:42:49 -070039
sebdet078c34d2021-01-20 23:02:17 +010040 <description>
41 This is the MAVEN project that builds everything for ONAP POLICY-CLAMP.
42 Docker engine is normally requires to perfom all possible tasks (including integration tests)
Ted Humphrey01e5fde2020-01-27 18:57:39 -050043
sebdet078c34d2021-01-20 23:02:17 +010044 It can build:
45 - The ONAP POLICY-CLAMP JAR that contains CLAMP back-end code.
46 - The DOCKER images for:
47 * POLICY-CLAMP backend (Java Spring)
sebdet1f2d62d2021-04-07 10:10:45 +020048 * POLICY-CLAMP frontend (Javascript React)
Determe, Sebastien (sd378r)8bf33432017-08-08 02:49:33 -070049
sebdet078c34d2021-01-20 23:02:17 +010050 It can test:
51 - The POLICY-CLAMP backend, JAVA unit testing
52 - The POLICY-CLAMP backend, JAVA integration tests (with Spring + docker mariadb database + docker policy/dcae
53 emulator written in python)
sebdeteeaef282021-02-19 14:07:05 +010054 - The POLICY-CLAMP frontend, Javascript tests (NodeJS(NPM) + JEST and Enzyme for React)
Ted Humphrey01e5fde2020-01-27 18:57:39 -050055
sebdet078c34d2021-01-20 23:02:17 +010056 The test coverage for dev's can be found after a "clean install" build in:
57 - Clamp backend: target/jacoco-dev.exec (unit tests + integration tests merged)
58 or separately target/coverage-reports/jacoco.exec and target/coverage-reports/jacoco-it.exec
59 - Clamp frontend: target/ui-react/coverage
Determe, Sebastien (sd378r)8bf33432017-08-08 02:49:33 -070060
sebdet078c34d2021-01-20 23:02:17 +010061 Useful mvn commands:
62 - mvn clean install: Build Clamp backend JAR + unit tests + integration tests + NPM tests (+coverage for all)
63 - mvn clean install -DskipITs=true: Build Clamp backend JAR + unit tests + NPM tests (+coverage for all), it
64 does not require a DOCKER engine
65 - mvn clean install -DskipTests -P docker: Build Clamp backend JAR + all docker images
Determe, Sebastien (sd378r)8bf33432017-08-08 02:49:33 -070066
sebdet078c34d2021-01-20 23:02:17 +010067 To start POLICY-CLAMP (Build it before):
68 - Use docker-compose file in ./extra/docker/clamp/docker-compose.yml
69 - Use the script located in ./extra/bin/start-backend.sh + start-frontend.sh
70 - Use your IDE to use the Jar or start NVM/NPM
Determe, Sebastien (sd378r)8bf33432017-08-08 02:49:33 -070071
sebdet078c34d2021-01-20 23:02:17 +010072 </description>
ChrisCae04cf32018-02-05 05:21:59 -080073
sebdet078c34d2021-01-20 23:02:17 +010074 <properties>
75 <maven.build.timestamp.format>yyyyMMdd'T'HHmmss'Z'</maven.build.timestamp.format>
76 <clamp.project.version>${project.version}</clamp.project.version>
77 <clamp.build.timestamp>${maven.build.timestamp}</clamp.build.timestamp>
78 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
79 <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
Determe, Sebastien (sd378r)8bf33432017-08-08 02:49:33 -070080
sebdet078c34d2021-01-20 23:02:17 +010081 <eelf.core.version>1.0.0</eelf.core.version>
sebdet1f2d62d2021-04-07 10:10:45 +020082 <camel.version>3.7.3</camel.version>
83 <springboot.version>2.4.4</springboot.version>
Determe, Sebastien (sd378r)8bf33432017-08-08 02:49:33 -070084
sebdet078c34d2021-01-20 23:02:17 +010085 <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
86 <sonar.surefire.reportsPath>${project.build.directory}/surefire-reports</sonar.surefire.reportsPath>
87 <sonar.coverage.jacoco.xmlReportPaths>${project.build.directory}/jacoco-html-xml-reports/jacoco.xml
88 </sonar.coverage.jacoco.xmlReportPaths>
89 <sonar.projectVersion>${project.version}</sonar.projectVersion>
90 <sonar.log.level>DEBUG</sonar.log.level>
91 <sonar.nodejs.executable>${project.build.directory}/${ui.react.src}/node/node</sonar.nodejs.executable>
92 <sonar.verbose>true</sonar.verbose>
93 <sonar.sources>src/main,${project.build.directory}/${ui.react.src}/src</sonar.sources>
94 <sonar.exclusions>src/main/resources/**</sonar.exclusions>
95 <sonar.scm.exclusions.disabled>true</sonar.scm.exclusions.disabled>
96 <sonar.javascript.lcov.reportPaths>${project.build.directory}/${ui.react.src}/coverage/lcov.info
97 </sonar.javascript.lcov.reportPaths>
98 <sonar.coverage.exclusions>
99 src/main/resources/**,target/ui-react/src/**/*.test.js,target/ui-react/src/setupTests.js
100 </sonar.coverage.exclusions>
101 <docker.push.registry>localhost:5000</docker.push.registry>
102 <docker.pull.registry>nexus3.onap.org:10001</docker.pull.registry>
103 <docker.skip.build>true</docker.skip.build>
104 <docker.skip.push>true</docker.skip.push>
105 <docker.skip.tag>true</docker.skip.tag>
106 <skip.staging.artifacts>false</skip.staging.artifacts>
107 <python.http.proxy.param/>
sebdet1f2d62d2021-04-07 10:10:45 +0200108 <tomcat.version>9.0.45</tomcat.version>
sebdet078c34d2021-01-20 23:02:17 +0100109 <ui.react.src>ui-react</ui.react.src>
110 <ui.react.lib.src>ui-react-lib</ui.react.lib.src>
111 <npm.publish.url>https://nexus3.onap.org/repository/npm.snapshot/</npm.publish.url>
sebdeteeaef282021-02-19 14:07:05 +0100112
113 <policy.models.version>2.4.0</policy.models.version>
sebdet7f685aa2021-03-25 18:19:29 +0100114 <policy.common.version>1.8.1</policy.common.version>
sebdet078c34d2021-01-20 23:02:17 +0100115 </properties>
ChrisC5e9feb22017-06-21 02:38:57 -0700116
sebdet078c34d2021-01-20 23:02:17 +0100117 <profiles>
118 <!-- BEGIN: NOT USABLE profiles, those are defined when specific flags are enabled -->
119 <profile>
120 <id>without-test</id>
121 <activation>
122 <property>
123 <name>maven.test.skip</name>
124 <value>true</value>
125 </property>
126 </activation>
127 <properties>
128 <docker.skip.run>true</docker.skip.run>
129 <docker.skip>true</docker.skip>
130 </properties>
131 </profile>
132 <profile>
133 <id>without-IT-only</id>
134 <activation>
135 <property>
136 <name>skipITs</name>
137 <value>true</value>
138 </property>
139 </activation>
140 <properties>
141 <docker.skip.run>true</docker.skip.run>
142 <docker.skip>true</docker.skip>
143 </properties>
144 </profile>
145 <profile>
146 <id>without-IT-only2</id>
147 <activation>
148 <property>
149 <name>skipTests</name>
150 <value>true</value>
151 </property>
152 </activation>
153 <properties>
154 <docker.skip.run>true</docker.skip.run>
155 <docker.skip>true</docker.skip>
156 </properties>
157 </profile>
158 <!-- END: NOT USABLE profiles, those are defined when specific flags are enabled -->
159 <profile>
160 <id>docker</id>
161 <properties>
162 <skip.staging.artifacts>true</skip.staging.artifacts>
163 <docker.skip.build>false</docker.skip.build>
164 <docker.skip.tag>false</docker.skip.tag>
165 <docker.skip.push>false</docker.skip.push>
166 <docker.skip>false</docker.skip>
167 </properties>
168 </profile>
169 </profiles>
Determe, Sebastien (sd378r)d3428d82018-06-26 15:05:55 +0200170
sebdet078c34d2021-01-20 23:02:17 +0100171 <distributionManagement>
172 <repository>
173 <id>ecomp-releases</id>
174 <name>ONAP Release Repository</name>
175 <url>https://nexus.onap.org/content/repositories/releases/</url>
176 </repository>
177 <snapshotRepository>
178 <id>ecomp-snapshots</id>
179 <name>ONAP Snapshot Repository</name>
180 <url>https://nexus.onap.org/content/repositories/snapshots/</url>
181 </snapshotRepository>
182 <site>
183 <id>ecomp-site</id>
184 <url>dav:https://nexus.onap.org/content/sites/site/org/onap/policy/clamp/${project.version}</url>
185 </site>
186 </distributionManagement>
ChrisC5e9feb22017-06-21 02:38:57 -0700187
sebdet078c34d2021-01-20 23:02:17 +0100188 <repositories>
189 <repository>
190 <id>onap-public</id>
191 <name>onap-public</name>
192 <url>https://nexus.onap.org/content/repositories/public/</url>
193 <releases>
194 <enabled>true</enabled>
195 </releases>
196 <snapshots>
197 <enabled>false</enabled>
198 </snapshots>
199 </repository>
200 <repository>
201 <id>ecomp-releases</id>
202 <name>ONAP Release Repository</name>
203 <url>https://nexus.onap.org/content/repositories/releases/</url>
204 </repository>
205 <repository>
206 <id>ecomp-staging</id>
207 <name>ONAP Staging Repository</name>
208 <url>https://nexus.onap.org/content/repositories/staging/</url>
209 </repository>
210 <repository>
211 <id>ecomp-snapshots</id>
212 <name>ONAP Snapshot Repository</name>
213 <url>https://nexus.onap.org/content/repositories/snapshots/</url>
214 <snapshots>
215 <enabled>true</enabled>
216 </snapshots>
217 <releases>
218 <enabled>false</enabled>
219 </releases>
220 </repository>
221 <repository>
222 <id>central</id>
223 <url>http://repo1.maven.org/maven2/</url>
224 </repository>
225 </repositories>
226 <pluginRepositories>
227 <pluginRepository>
228 <id>onap-public</id>
229 <name>onap-public</name>
230 <url>https://nexus.onap.org/content/repositories/public/</url>
231 <releases>
232 <enabled>true</enabled>
233 </releases>
234 <snapshots>
235 <enabled>false</enabled>
236 </snapshots>
237 </pluginRepository>
238 <pluginRepository>
239 <id>central</id>
240 <url>http://repo1.maven.org/maven2/</url>
241 </pluginRepository>
242 </pluginRepositories>
ChrisC5e9feb22017-06-21 02:38:57 -0700243
sebdet078c34d2021-01-20 23:02:17 +0100244 <dependencyManagement>
245 <dependencies>
246 <!-- Spring Boot BOM -->
247 <dependency>
248 <groupId>org.springframework.boot</groupId>
249 <artifactId>spring-boot-dependencies</artifactId>
250 <version>${springboot.version}</version>
251 <type>pom</type>
252 <scope>import</scope>
253 </dependency>
254 <!-- Camel BOM -->
255 <dependency>
sebdet1f2d62d2021-04-07 10:10:45 +0200256 <groupId>org.apache.camel.springboot</groupId>
257 <artifactId>camel-spring-boot-bom</artifactId>
sebdet078c34d2021-01-20 23:02:17 +0100258 <version>${camel.version}</version>
259 <type>pom</type>
260 <scope>import</scope>
261 </dependency>
262 </dependencies>
263 </dependencyManagement>
sebdet101193d2019-09-05 18:25:59 +0200264
sebdet078c34d2021-01-20 23:02:17 +0100265 <dependencies>
266 <dependency>
267 <groupId>com.att.eelf</groupId>
268 <artifactId>eelf-core</artifactId>
269 <version>${eelf.core.version}</version>
270 <exclusions>
271 <exclusion>
272 <groupId>org.powermock</groupId>
273 <artifactId>powermock-module-junit4</artifactId>
274 </exclusion>
275 <exclusion>
276 <groupId>org.powermock</groupId>
277 <artifactId>powermock-api-mockito</artifactId>
278 </exclusion>
279 </exclusions>
280 </dependency>
281 <dependency>
282 <groupId>org.codehaus.janino</groupId>
283 <artifactId>janino</artifactId>
284 <version>3.0.8</version>
285 </dependency>
286 <dependency>
287 <groupId>org.apache.tomcat.embed</groupId>
288 <artifactId>tomcat-embed-core</artifactId>
289 <version>${tomcat.version}</version>
290 </dependency>
291 <dependency>
292 <groupId>org.apache.tomcat.embed</groupId>
293 <artifactId>tomcat-embed-el</artifactId>
294 <version>${tomcat.version}</version>
295 </dependency>
296 <dependency>
297 <groupId>org.apache.tomcat.embed</groupId>
298 <artifactId>tomcat-embed-websocket</artifactId>
299 <version>${tomcat.version}</version>
300 </dependency>
301 <dependency>
302 <groupId>org.apache.tomcat</groupId>
303 <artifactId>tomcat-annotations-api</artifactId>
304 <version>${tomcat.version}</version>
305 </dependency>
306 <!-- For CAMEL -->
307 <dependency>
sebdet1f2d62d2021-04-07 10:10:45 +0200308 <groupId>org.apache.camel.springboot</groupId>
309 <artifactId>camel-http-starter</artifactId>
sebdet078c34d2021-01-20 23:02:17 +0100310 </dependency>
311 <dependency>
sebdet1f2d62d2021-04-07 10:10:45 +0200312 <groupId>org.apache.camel.springboot</groupId>
sebdet078c34d2021-01-20 23:02:17 +0100313 <artifactId>camel-spring-boot-starter</artifactId>
314 </dependency>
315 <dependency>
sebdet1f2d62d2021-04-07 10:10:45 +0200316 <groupId>org.apache.camel.springboot</groupId>
sebdet078c34d2021-01-20 23:02:17 +0100317 <artifactId>camel-jaxb-starter</artifactId>
318 </dependency>
319 <dependency>
sebdet1f2d62d2021-04-07 10:10:45 +0200320 <groupId>org.apache.camel.springboot</groupId>
sebdet078c34d2021-01-20 23:02:17 +0100321 <artifactId>camel-servlet-starter</artifactId>
322 </dependency>
323 <dependency>
sebdet1f2d62d2021-04-07 10:10:45 +0200324 <groupId>org.apache.camel.springboot</groupId>
sebdet078c34d2021-01-20 23:02:17 +0100325 <artifactId>camel-gson-starter</artifactId>
326 </dependency>
327 <dependency>
sebdet1f2d62d2021-04-07 10:10:45 +0200328 <groupId>org.apache.camel.springboot</groupId>
sebdet078c34d2021-01-20 23:02:17 +0100329 <artifactId>camel-swagger-java-starter</artifactId>
330 <exclusions>
331 <exclusion>
332 <groupId>javax.ws.rs</groupId>
333 <artifactId>jsr311-api</artifactId>
334 </exclusion>
335 <exclusion>
336 <groupId>org.slf4j</groupId>
337 <artifactId>slf4j-ext</artifactId>
338 </exclusion>
339 </exclusions>
340 </dependency>
341 <!-- Spring famework -->
342 <dependency>
343 <groupId>org.springframework.boot</groupId>
344 <artifactId>spring-boot-starter-web</artifactId>
345 <exclusions>
346 <exclusion>
347 <groupId>org.springframework.boot</groupId>
348 <artifactId>spring-boot-starter-json</artifactId>
349 </exclusion>
350 </exclusions>
351 </dependency>
352 <dependency>
353 <groupId>org.springframework.boot</groupId>
354 <artifactId>spring-boot-starter-tomcat</artifactId>
sebdet001e0422021-04-19 15:23:56 +0200355 <exclusions>
356 <exclusion>
357 <groupId>org.glassfish</groupId>
358 <artifactId>jakarta.el</artifactId>
359 </exclusion>
360 </exclusions>
sebdet078c34d2021-01-20 23:02:17 +0100361 </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 <!-- Policy dependencies mainly for the models required -->
390 <dependency>
391 <groupId>org.onap.policy.models</groupId>
392 <artifactId>policy-models-pdp</artifactId>
sebdeteeaef282021-02-19 14:07:05 +0100393 <version>${policy.models.version}</version>
sebdet001e0422021-04-19 15:23:56 +0200394 <exclusions>
395 <exclusion>
396 <groupId>org.eclipse.jetty</groupId>
397 <artifactId>jetty-server</artifactId>
398 </exclusion>
399 <exclusion>
400 <groupId>org.glassfish.jersey.containers</groupId>
401 <artifactId>jersey-container-servlet</artifactId>
402 </exclusion>
sebdet9b5272f2021-04-22 09:33:47 +0200403 <exclusion>
404 <groupId>org.jetbrains.kotlin</groupId>
405 <artifactId>kotlin-reflect</artifactId>
406 </exclusion>
407 <exclusion>
408 <groupId>org.jetbrains.kotlin</groupId>
409 <artifactId>kotlin-stdlib</artifactId>
410 </exclusion>
411 <exclusion>
412 <groupId>org.jetbrains.kotlin</groupId>
413 <artifactId>kotlin-stdlib-common</artifactId>
414 </exclusion>
sebdet001e0422021-04-19 15:23:56 +0200415 </exclusions>
sebdet078c34d2021-01-20 23:02:17 +0100416 </dependency>
sebdet5ec88e42020-08-03 15:25:07 +0200417
sebdet078c34d2021-01-20 23:02:17 +0100418 <!-- Others dependencies -->
419 <!-- Jaxws is required for AAF -->
420 <dependency>
421 <groupId>javax.xml.ws</groupId>
422 <artifactId>jaxws-api</artifactId>
423 <version>2.3.1</version>
424 </dependency>
425 <dependency>
426 <groupId>org.onap.aaf.authz</groupId>
427 <artifactId>aaf-cadi-aaf</artifactId>
428 <version>2.1.15</version>
429 <exclusions>
430 <exclusion>
431 <groupId>javax.servlet</groupId>
432 <artifactId>servlet-api</artifactId>
433 </exclusion>
434 <exclusion>
435 <groupId>log4j</groupId>
436 <artifactId>log4j</artifactId>
437 </exclusion>
438 </exclusions>
439 </dependency>
440 <dependency>
441 <groupId>ch.qos.logback</groupId>
442 <artifactId>logback-core</artifactId>
443 <version>1.2.3</version>
444 </dependency>
445 <dependency>
446 <groupId>ch.qos.logback</groupId>
447 <artifactId>logback-classic</artifactId>
448 <version>1.2.3</version>
449 </dependency>
450 <dependency>
451 <groupId>commons-io</groupId>
452 <artifactId>commons-io</artifactId>
sebdet1f2d62d2021-04-07 10:10:45 +0200453 <version>2.8.0</version>
sebdet078c34d2021-01-20 23:02:17 +0100454 </dependency>
455 <dependency>
456 <groupId>com.googlecode.json-simple</groupId>
457 <artifactId>json-simple</artifactId>
458 <version>1.1.1</version>
459 </dependency>
460 <dependency>
461 <groupId>org.apache.commons</groupId>
462 <artifactId>commons-vfs2</artifactId>
sebdet1f2d62d2021-04-07 10:10:45 +0200463 <version>2.8.0</version>
sebdet001e0422021-04-19 15:23:56 +0200464 <exclusions>
465 <exclusion>
466 <groupId>com.squareup.okhttp</groupId>
467 <artifactId>okhttp</artifactId>
468 </exclusion>
469 </exclusions>
sebdet078c34d2021-01-20 23:02:17 +0100470 </dependency>
471 <dependency>
472 <groupId>org.slf4j</groupId>
473 <artifactId>slf4j-api</artifactId>
474 </dependency>
475 <dependency>
476 <groupId>javax.transaction</groupId>
477 <artifactId>jta</artifactId>
478 <version>1.1</version>
479 </dependency>
480 <dependency>
481 <groupId>javax.persistence</groupId>
482 <artifactId>persistence-api</artifactId>
483 <version>1.0.2</version>
484 </dependency>
485 <!-- Other dependencies to fix nexus IQ reported vulnerabilities -->
486 <dependency>
487 <groupId>commons-codec</groupId>
488 <artifactId>commons-codec</artifactId>
sebdet1f2d62d2021-04-07 10:10:45 +0200489 <version>1.15</version>
sebdet078c34d2021-01-20 23:02:17 +0100490 </dependency>
491 <dependency>
492 <groupId>org.codehaus.plexus</groupId>
493 <artifactId>plexus-utils</artifactId>
sebdet1f2d62d2021-04-07 10:10:45 +0200494 <version>3.3.0</version>
sebdet078c34d2021-01-20 23:02:17 +0100495 </dependency>
496 <dependency>
497 <groupId>org.jboss.spec.javax.ws.rs</groupId>
498 <artifactId>jboss-jaxrs-api_2.0_spec</artifactId>
499 <version>1.0.1.Final</version>
500 </dependency>
sebdet1f2d62d2021-04-07 10:10:45 +0200501
sebdet3b017732020-04-20 15:30:45 +0200502
sebdet078c34d2021-01-20 23:02:17 +0100503 <!-- Remove the MYSQL connector and replace it by Mariadb -->
504 <dependency>
505 <groupId>org.mariadb.jdbc</groupId>
506 <artifactId>mariadb-java-client</artifactId>
sebdet1f2d62d2021-04-07 10:10:45 +0200507 <version>2.7.2</version>
sebdet078c34d2021-01-20 23:02:17 +0100508 </dependency>
509 <!-- For SDC Controller -->
510 <dependency>
511 <groupId>org.onap.sdc.sdc-distribution-client</groupId>
512 <artifactId>sdc-distribution-client</artifactId>
513 <version>1.4.1</version>
514 </dependency>
515 <dependency>
516 <groupId>org.onap.sdc.sdc-tosca</groupId>
517 <artifactId>sdc-tosca</artifactId>
518 <version>1.5.1</version>
519 <exclusions>
520 <exclusion>
521 <groupId>com.fasterxml.jackson.core</groupId>
522 <artifactId>jackson-databind</artifactId>
523 </exclusion>
524 </exclusions>
525 </dependency>
526 <dependency>
527 <groupId>org.yaml</groupId>
528 <artifactId>snakeyaml</artifactId>
sebdet1f2d62d2021-04-07 10:10:45 +0200529 <version>1.28</version>
sebdet078c34d2021-01-20 23:02:17 +0100530 </dependency>
531 <dependency>
532 <groupId>org.dom4j</groupId>
533 <artifactId>dom4j</artifactId>
534 <version>2.1.3</version>
535 </dependency>
sebdet101193d2019-09-05 18:25:59 +0200536
sebdet078c34d2021-01-20 23:02:17 +0100537 <!-- TESTING -->
538 <dependency>
sebdet1f2d62d2021-04-07 10:10:45 +0200539 <groupId>org.junit.vintage</groupId>
540 <artifactId>junit-vintage-engine</artifactId>
541 <version>5.7.1</version>
sebdet078c34d2021-01-20 23:02:17 +0100542 <scope>test</scope>
543 </dependency>
544 <dependency>
545 <groupId>org.assertj</groupId>
546 <artifactId>assertj-core</artifactId>
547 <version>3.10.0</version>
548 <scope>test</scope>
549 </dependency>
550 <dependency>
sebdet078c34d2021-01-20 23:02:17 +0100551 <groupId>com.github.docker-java</groupId>
552 <artifactId>docker-java-core</artifactId>
sebdet1f2d62d2021-04-07 10:10:45 +0200553 <version>3.2.7</version>
sebdet078c34d2021-01-20 23:02:17 +0100554 <scope>test</scope>
555 <exclusions>
556 <exclusion>
557 <groupId>com.fasterxml.jackson.core</groupId>
558 <artifactId>jackson-databind</artifactId>
559 </exclusion>
560 </exclusions>
561 </dependency>
562 <dependency>
563 <groupId>com.github.docker-java</groupId>
564 <artifactId>docker-java</artifactId>
sebdet1f2d62d2021-04-07 10:10:45 +0200565 <version>3.2.7</version>
sebdet078c34d2021-01-20 23:02:17 +0100566 <scope>test</scope>
567 </dependency>
sebdet7f685aa2021-03-25 18:19:29 +0100568 <dependency>
569 <groupId>org.onap.policy.common</groupId>
570 <artifactId>utils-test</artifactId>
571 <version>${policy.common.version}</version>
572 <scope>test</scope>
573 </dependency>
sebdet078c34d2021-01-20 23:02:17 +0100574 </dependencies>
sebdet101193d2019-09-05 18:25:59 +0200575
sebdet078c34d2021-01-20 23:02:17 +0100576 <build>
577 <finalName>policy-clamp-backend</finalName>
sebdet101193d2019-09-05 18:25:59 +0200578
sebdet078c34d2021-01-20 23:02:17 +0100579 <testResources>
580 <testResource>
581 <directory>src/main/resources</directory>
582 <filtering>true</filtering>
583 <excludes>
584 <exclude>clds/aaf/**</exclude>
585 </excludes>
586 </testResource>
587 <testResource>
588 <directory>src/main/resources</directory>
589 <filtering>false</filtering>
590 <includes>
591 <include>clds/aaf/**</include>
592 </includes>
593 </testResource>
594 <testResource>
595 <directory>src/test/resources</directory>
596 <excludes>
597 <exclude>**/*.jks</exclude>
598 <exclude>**/*.csar</exclude>
599 </excludes>
600 <filtering>true</filtering>
601 </testResource>
602 <testResource>
603 <directory>src/test/resources/https</directory>
604 <includes>
605 <include>**.jks</include>
606 </includes>
607 <filtering>false</filtering>
608 <targetPath>https</targetPath>
609 </testResource>
610 <testResource>
611 <directory>src/test/resources/example/sdc</directory>
612 <includes>
613 <include>**.csar</include>
614 </includes>
615 <filtering>false</filtering>
616 <targetPath>example/sdc</targetPath>
617 </testResource>
618 </testResources>
619 <resources>
620 <!-- For AAF folder maven should not try to filter Keystores/Truststores ... Otherwise
621 they will be broken and unreadable -->
622 <resource>
623 <directory>src/main/resources</directory>
624 <filtering>true</filtering>
625 <excludes>
626 <exclude>clds/aaf/**</exclude>
627 </excludes>
628 </resource>
629 <resource>
630 <directory>src/main/resources</directory>
631 <filtering>false</filtering>
632 <includes>
633 <include>clds/aaf/**</include>
634 </includes>
635 </resource>
636 <resource>
637 <directory>${ui.react.src}</directory>
638 <excludes>
639 <exclude>node_modules</exclude>
640 </excludes>
641 <includes>
642 <include>src/**</include>
643 <include>public/**</include>
644 <include>package.json</include>
645 <include>package-lock.json</include>
646 </includes>
647 <filtering>true</filtering>
648 <targetPath>${project.build.directory}/${ui.react.src}</targetPath>
649 </resource>
650 <resource>
651 <directory>${ui.react.src}</directory>
652 <includes>
653 <include>src/**</include>
654 </includes>
655 <excludes>
656 <exclude>**/__snapshots__/**</exclude>
657 <exclude>**/**.test.js</exclude>
658 </excludes>
659 <filtering>true</filtering>
660 <targetPath>${project.build.directory}/${ui.react.lib.src}</targetPath>
661 </resource>
662 <resource>
663 <directory>${ui.react.lib.src}</directory>
664 <includes>
665 <include>**</include>
666 </includes>
667 <excludes>
668 <exclude>node_modules/**</exclude>
669 <exclude>package-lock.json</exclude>
670 </excludes>
671 <filtering>true</filtering>
672 <targetPath>${project.build.directory}/${ui.react.lib.src}</targetPath>
673 </resource>
674 </resources>
sebdet101193d2019-09-05 18:25:59 +0200675
sebdet078c34d2021-01-20 23:02:17 +0100676 <plugins>
677 <plugin>
678 <groupId>de.jpdigital</groupId>
679 <artifactId>hibernate52-ddl-maven-plugin</artifactId>
680 <version>2.2.0</version>
681 <dependencies>
682 <dependency>
683 <groupId>javax.xml.bind</groupId>
684 <artifactId>jaxb-api</artifactId>
685 <version>2.3.0</version>
686 </dependency>
687 </dependencies>
688 <executions>
689 <execution>
690 <phase>process-classes</phase>
691 <goals>
692 <goal>gen-ddl</goal>
693 </goals>
694 <configuration>
695 <packages>
696 <param>org.onap.policy.clamp</param>
697 </packages>
698 <dialects>
699 <param>MARIADB53</param>
700 </dialects>
701 <outputDirectory>${project.basedir}/extra/sql/bulkload/</outputDirectory>
702 <outputFileNameSuffix>create-tables</outputFileNameSuffix>
703 <!-- <createDropStatements>true</createDropStatements> -->
704 <omitDialectFromFileName>true</omitDialectFromFileName>
705 </configuration>
706 </execution>
707 </executions>
sebdet101193d2019-09-05 18:25:59 +0200708
sebdet078c34d2021-01-20 23:02:17 +0100709 </plugin>
710 <!-- Read the swagger.json file and the definition from SwaggerConfig.java; generate
711 a list of .adoc files containing the APIs info in more structured way -->
712 <plugin>
713 <groupId>io.github.swagger2markup</groupId>
714 <artifactId>swagger2markup-maven-plugin</artifactId>
715 <version>1.3.3</version>
716 <dependencies>
717 <dependency>
718 <groupId>io.github.swagger2markup</groupId>
719 <artifactId>swagger2markup-import-files-ext</artifactId>
720 <version>1.3.3</version>
721 </dependency>
722 <dependency>
723 <groupId>io.github.swagger2markup</groupId>
724 <artifactId>swagger2markup-spring-restdocs-ext</artifactId>
725 <version>1.3.3</version>
726 </dependency>
727 </dependencies>
728 <configuration>
729 <swaggerInput>${project.basedir}/docs/swagger/swagger.json</swaggerInput>
730 <outputDir>${project.build.directory}/asciidoc/generated</outputDir>
731 <config>
732 <swagger2markup.markupLanguage>ASCIIDOC</swagger2markup.markupLanguage>
733 </config>
734 </configuration>
735 <executions>
736 <execution>
737 <phase>post-integration-test</phase>
738 <goals>
739 <goal>convertSwagger2markup</goal>
740 </goals>
741 </execution>
742 </executions>
743 </plugin>
sebdet101193d2019-09-05 18:25:59 +0200744
sebdet078c34d2021-01-20 23:02:17 +0100745 <!-- Run the generated asciidoc through Asciidoctor to generate other documentation
746 types, such as PDFs or HTML5 -->
747 <plugin>
748 <groupId>org.asciidoctor</groupId>
749 <artifactId>asciidoctor-maven-plugin</artifactId>
750 <version>1.5.7.1</version>
751 <dependencies>
752 <dependency>
753 <groupId>org.asciidoctor</groupId>
754 <artifactId>asciidoctorj-pdf</artifactId>
755 <version>1.5.0-alpha.10.1</version>
756 </dependency>
757 </dependencies>
758 <configuration>
759 <sourceDirectory>${project.basedir}/src/main/resources/asciidoc</sourceDirectory>
760 <sourceDocumentName>swagger.adoc</sourceDocumentName>
761 <attributes>
762 <doctype>book</doctype>
763 <toc>left</toc>
764 <toclevels>3</toclevels>
765 <numbered/>
766 <hardbreaks/>
767 <sectlinks/>
768 <sectanchors/>
769 <generated>${project.build.directory}/asciidoc/generated</generated>
770 </attributes>
771 </configuration>
sebdet101193d2019-09-05 18:25:59 +0200772
sebdet078c34d2021-01-20 23:02:17 +0100773 <executions>
774 <execution>
775 <id>output-html</id>
776 <phase>post-integration-test</phase>
777 <goals>
778 <goal>process-asciidoc</goal>
779 </goals>
780 <configuration>
781 <backend>html5</backend>
782 <outputDirectory>${project.basedir}/docs/swagger</outputDirectory>
783 <outputDirectory>${project.basedir}/src/main/resources/META-INF/resources/</outputDirectory>
784 </configuration>
785 </execution>
786 <execution>
787 <id>output-pdf</id>
788 <phase>post-integration-test</phase>
789 <goals>
790 <goal>process-asciidoc</goal>
791 </goals>
792 <configuration>
793 <backend>pdf</backend>
794 <outputDirectory>${project.basedir}/docs/swagger</outputDirectory>
795 </configuration>
796 </execution>
797 </executions>
798 </plugin>
799 <plugin>
800 <groupId>org.codehaus.groovy.maven</groupId>
801 <artifactId>gmaven-plugin</artifactId>
802 <version>1.0</version>
803 <executions>
804 <execution>
805 <id>docker-tags</id>
806 <phase>validate</phase>
807 <goals>
808 <goal>execute</goal>
809 </goals>
810 <configuration>
811 <source>${project.basedir}/src/main/script/TagVersion.groovy</source>
812 </configuration>
813 </execution>
814 <execution>
815 <id>npm-repos-selection</id>
816 <phase>validate</phase>
817 <goals>
818 <goal>execute</goal>
819 </goals>
820 <configuration>
821 <source>${project.basedir}/src/main/script/SelectNpmRepo.groovy</source>
822 </configuration>
823 </execution>
824 </executions>
825 </plugin>
826 <plugin>
827 <groupId>org.apache.maven.plugins</groupId>
828 <artifactId>maven-jar-plugin</artifactId>
sebdet1f2d62d2021-04-07 10:10:45 +0200829 <version>3.2.0</version>
sebdet078c34d2021-01-20 23:02:17 +0100830 <executions>
831 <execution>
832 <id>jar-with-only-classes</id>
833 <phase>package</phase>
834 <goals>
835 <goal>jar</goal>
836 </goals>
837 <configuration>
838 <classifier>classes</classifier>
839 <includes>
840 <include>org/**</include>
841 </includes>
842 </configuration>
843 </execution>
844 </executions>
845 </plugin>
846 <plugin>
847 <groupId>org.codehaus.mojo</groupId>
848 <artifactId>build-helper-maven-plugin</artifactId>
sebdet1f2d62d2021-04-07 10:10:45 +0200849 <version>3.2.0</version>
sebdet078c34d2021-01-20 23:02:17 +0100850 <executions>
851 <execution>
852 <goals>
853 <goal>attach-artifact</goal>
854 </goals>
855 <phase>package</phase>
856 <configuration>
857 <artifacts>
858 <artifact>
859 <file>${project.build.directory}/policy-clamp-backend-classes.jar</file>
860 <type>jar</type>
861 <classifier>classes</classifier>
862 </artifact>
863 </artifacts>
864 </configuration>
865 </execution>
866 <execution>
867 <id>reserve-port-for-tests</id>
868 <phase>process-resources</phase>
869 <goals>
870 <goal>reserve-network-port</goal>
871 </goals>
872 <configuration>
873 <portNames>
874 <portName>docker.mariadb.port.host</portName>
875 <portName>docker.http-cache.port.host</portName>
876 <portName>clamp.it.tests.http-redirected</portName>
877 <portName>clamp.it.tests.robotframework.http</portName>
878 <portName>clamp.it.tests.https</portName>
879 <portName>clamp.it.tests.http</portName>
880 </portNames>
881 </configuration>
882 </execution>
883 </executions>
884 </plugin>
sebdet101193d2019-09-05 18:25:59 +0200885
sebdet078c34d2021-01-20 23:02:17 +0100886 <plugin>
887 <groupId>org.springframework.boot</groupId>
888 <artifactId>spring-boot-maven-plugin</artifactId>
889 <version>${springboot.version}</version>
890 <executions>
891 <execution>
892 <goals>
893 <goal>repackage</goal>
894 </goals>
895 <phase>package</phase>
896 </execution>
897 </executions>
898 </plugin>
899 <plugin>
900 <groupId>org.apache.maven.plugins</groupId>
901 <artifactId>maven-surefire-plugin</artifactId>
902 <version>2.22.2</version>
903 <configuration>
904 <forkCount>1C</forkCount>
905 <reuseForks>true</reuseForks>
906 <useSystemClassLoader>false</useSystemClassLoader>
907 <argLine>${surefireArgLine}</argLine>
908 </configuration>
909 </plugin>
sebdet101193d2019-09-05 18:25:59 +0200910
sebdet078c34d2021-01-20 23:02:17 +0100911 <plugin>
912 <groupId>org.apache.maven.plugins</groupId>
913 <artifactId>maven-failsafe-plugin</artifactId>
914 <version>2.22.2</version>
915 <executions>
916 <execution>
917 <id>integration-tests</id>
918 <goals>
919 <goal>integration-test</goal>
920 <goal>verify</goal>
921 </goals>
922 <configuration>
923 <additionalClasspathElements>
924 <additionalClasspathElement>${project.build.directory}/classes
925 </additionalClasspathElement>
926 </additionalClasspathElements>
927 <includes>
928 <include>**/*ItCase.java</include>
929 </includes>
930 <forkCount>1C</forkCount>
931 <reuseForks>true</reuseForks>
932 <useSystemClassLoader>false</useSystemClassLoader>
933 <argLine>${failsafeArgLine}</argLine>
934 </configuration>
935 </execution>
936 </executions>
937 </plugin>
938 <plugin>
939 <groupId>io.fabric8</groupId>
940 <artifactId>docker-maven-plugin</artifactId>
sebdet1f2d62d2021-04-07 10:10:45 +0200941 <version>0.35.0</version>
sebdet078c34d2021-01-20 23:02:17 +0100942 <dependencies>
943 <dependency>
944 <groupId>org.apache.httpcomponents</groupId>
945 <artifactId>httpclient</artifactId>
946 <version>4.5.5</version>
947 </dependency>
948 </dependencies>
949 <configuration>
950 <verbose>true</verbose>
951 <apiVersion>1.35</apiVersion>
952 <images>
953 <image>
954 <name>docker.io/mariadb:10.5.4</name>
955 <alias>mariadb</alias>
956 <run>
957 <env>
958 <MYSQL_ROOT_PASSWORD>strong_pitchou</MYSQL_ROOT_PASSWORD>
959 </env>
960 <hostname>mariadb</hostname>
961 <volumes>
962 <bind>
963 <volume>${project.basedir}/extra/sql/:/docker-entrypoint-initdb.d:rw</volume>
964 <volume>${project.basedir}/extra/docker/mariadb/conf1:/etc/mysql/conf.d</volume>
965 </bind>
966 </volumes>
967 <wait>
sebdetb8831e52021-03-12 19:30:22 +0100968 <log>port: 3306</log>
sebdet078c34d2021-01-20 23:02:17 +0100969 <time>300000</time>
970 <exec>
971 <preStop>/docker-entrypoint-initdb.d/dump/backup-data-only.sh</preStop>
972 </exec>
973 </wait>
974 <ports>
975 <port>${docker.mariadb.port.host}:3306</port>
976 </ports>
977 <network>
978 <mode>bridge</mode>
979 </network>
980 </run>
981 </image>
982 <image>
983 <name>docker.io/python:2-slim</name>
984 <alias>python</alias>
985 <run>
986 <hostname>python</hostname>
987 <volumes>
988 <bind>
989 <volume>
990 ${project.basedir}/src/test/resources/http-cache/:/usr/src/http-cache-app
991 </volume>
992 <volume>
993 ${project.basedir}/src/test/resources/http-cache/example/:/usr/src/http-cache-app/data-cache
994 </volume>
995 </bind>
996 </volumes>
997 <wait>
998 <tcp>
999 <ports>
1000 <port>8080</port>
1001 </ports>
1002 <mode>direct</mode>
1003 </tcp>
1004 <time>120000</time>
1005 </wait>
1006 <ports>
1007 <port>${docker.http-cache.port.host}:8080</port>
1008 </ports>
1009 <workingDir>/usr/src/http-cache-app</workingDir>
1010 <cmd>
1011 <shell>./start_http_cache.sh ${python.http.proxy.param}
1012 --python_proxyaddress=localhost:${docker.http-cache.port.host}
1013 </shell>
1014 </cmd>
1015 <network>
1016 <mode>bridge</mode>
1017 </network>
1018 </run>
1019 </image>
1020 <image>
1021 <name>onap/policy-clamp-backend</name>
1022 <alias>onap-policy-clamp-backend</alias>
1023 <run>
1024 <skip>true</skip>
1025 </run>
1026 <build>
1027 <cleanup>true</cleanup>
1028 <tags>
1029 <tag>latest</tag>
1030 <tag>${project.docker.latesttagtimestamp.version}</tag>
1031 <tag>${project.docker.latesttag.version}</tag>
1032 </tags>
1033 <!-- A relative path is looked up in ${project.basedir}/src/main/docker by
1034 default -->
1035 <dockerFile>backend/Dockerfile</dockerFile>
1036 <assembly>
1037 <descriptor>backend/backend-files.xml</descriptor>
1038 <name>onap-policy-clamp-backend</name>
1039 </assembly>
1040 </build>
1041 </image>
1042 <image>
1043 <name>onap/policy-clamp-frontend</name>
1044 <alias>onap-policy-clamp-frontend</alias>
1045 <run>
1046 <skip>true</skip>
1047 </run>
1048 <build>
1049 <cleanup>true</cleanup>
1050 <tags>
1051 <tag>latest</tag>
1052 <tag>${project.docker.latesttagtimestamp.version}</tag>
1053 <tag>${project.docker.latesttag.version}</tag>
1054 </tags>
1055 <!-- A relative path is looked up in ${project.basedir}/src/main/docker by
1056 default -->
1057 <dockerFile>frontend/Dockerfile</dockerFile>
1058 <assembly>
1059 <descriptor>frontend/frontend-files.xml</descriptor>
1060 <name>onap-policy-clamp-frontend</name>
1061 </assembly>
1062 </build>
1063 </image>
1064 </images>
1065 </configuration>
sebdet101193d2019-09-05 18:25:59 +02001066
sebdet078c34d2021-01-20 23:02:17 +01001067 <executions>
1068 <execution>
1069 <id>generate-images</id>
1070 <phase>install</phase>
1071 <goals>
1072 <goal>build</goal>
1073 </goals>
1074 </execution>
1075 <execution>
1076 <id>push-images</id>
1077 <phase>deploy</phase>
1078 <goals>
1079 <goal>push</goal>
1080 </goals>
1081 </execution>
1082 <execution>
1083 <id>docker-start-for-it</id>
1084 <phase>pre-integration-test</phase>
1085 <goals>
1086 <goal>start</goal>
1087 </goals>
1088 </execution>
1089 <execution>
1090 <id>docker-stop-for-it</id>
1091 <phase>post-integration-test</phase>
1092 <goals>
1093 <goal>stop</goal>
1094 </goals>
1095 </execution>
1096 </executions>
1097 </plugin>
sebdet101193d2019-09-05 18:25:59 +02001098
sebdet078c34d2021-01-20 23:02:17 +01001099 <plugin>
1100 <groupId>org.jacoco</groupId>
1101 <artifactId>jacoco-maven-plugin</artifactId>
1102 <version>0.8.5</version>
1103 <configuration>
1104 <dumpOnExit>true</dumpOnExit>
1105 <append>true</append>
1106 <includes>
1107 <include>org/onap/policy/clamp/**</include>
1108 </includes>
1109 </configuration>
1110 <executions>
1111 <execution>
1112 <id>pre-unit-test</id>
1113 <goals>
1114 <goal>prepare-agent</goal>
1115 </goals>
1116 <configuration>
1117 <destFile>${project.build.directory}/coverage-reports/jacoco.exec</destFile>
1118 <propertyName>surefireArgLine</propertyName>
1119 <!-- <append>true</append> -->
1120 </configuration>
1121 </execution>
1122 <execution>
1123 <id>pre-integration-test</id>
1124 <phase>pre-integration-test</phase>
1125 <goals>
1126 <goal>prepare-agent</goal>
1127 </goals>
1128 <configuration>
1129 <destFile>${project.build.directory}/coverage-reports/jacoco-it.exec</destFile>
1130 <propertyName>failsafeArgLine</propertyName>
1131 <!-- <append>true</append> -->
1132 <!-- Need to overwrite the policy integration parent flag -->
1133 <skip>false</skip>
1134 </configuration>
1135 </execution>
1136 <execution>
1137 <goals>
1138 <goal>merge</goal>
1139 </goals>
1140 <phase>post-integration-test</phase>
1141 <configuration>
1142 <fileSets>
1143 <fileSet
1144 implementation="org.apache.maven.shared.model.fileset.FileSet">
1145 <directory>${project.build.directory}/coverage-reports</directory>
1146 <includes>
1147 <include>*.exec</include>
1148 </includes>
1149 </fileSet>
1150 </fileSets>
1151 <destFile>${project.build.directory}/jacoco.exec</destFile>
1152 </configuration>
1153 </execution>
1154 <execution>
1155 <id>report-xml</id>
1156 <goals>
1157 <goal>report</goal>
1158 </goals>
1159 <configuration>
1160 <!-- Setting explicit path, so that we remember where it picks them up from -->
1161 <dataFile>${project.build.directory}/jacoco.exec</dataFile>
1162 <outputDirectory>${project.build.directory}/jacoco-html-xml-reports</outputDirectory>
1163 </configuration>
1164 </execution>
1165 </executions>
1166 </plugin>
sebdet101193d2019-09-05 18:25:59 +02001167
sebdet078c34d2021-01-20 23:02:17 +01001168 <!-- This plugin will be useful when we will have multi-modules project -->
1169 <plugin>
1170 <groupId>org.codehaus.mojo</groupId>
1171 <artifactId>versions-maven-plugin</artifactId>
1172 <version>1.3.1</version>
1173 </plugin>
1174
1175 <plugin>
1176 <groupId>com.github.eirslett</groupId>
1177 <artifactId>frontend-maven-plugin</artifactId>
sebdet1f2d62d2021-04-07 10:10:45 +02001178 <version>1.11.3</version>
sebdet078c34d2021-01-20 23:02:17 +01001179 <configuration>
1180 <installDirectory>${project.build.directory}/${ui.react.src}</installDirectory>
Jim Hahn44946f62021-04-09 14:50:26 -04001181 <npmDownloadRoot>${repo.npm}</npmDownloadRoot>
sebdet078c34d2021-01-20 23:02:17 +01001182 </configuration>
1183 <executions>
1184 <execution>
1185 <id>install_node_and_npm</id>
1186 <goals>
1187 <goal>install-node-and-npm</goal>
1188 </goals>
1189 <phase>generate-sources</phase>
1190 <configuration>
sebdet1f2d62d2021-04-07 10:10:45 +02001191 <nodeVersion>v14.16.1</nodeVersion>
1192 <npmVersion>6.14.12</npmVersion>
sebdet078c34d2021-01-20 23:02:17 +01001193 </configuration>
1194 </execution>
1195 <execution>
1196 <id>npm_install</id>
1197 <goals>
1198 <goal>npm</goal>
1199 </goals>
1200 <phase>compile</phase>
1201 <configuration>
1202 <workingDirectory>${project.build.directory}/${ui.react.src}</workingDirectory>
1203 <arguments>install</arguments>
1204 </configuration>
1205 </execution>
1206 <execution>
1207 <id>npm_test</id>
1208 <goals>
1209 <goal>npm</goal>
1210 </goals>
1211 <phase>test</phase>
1212 <configuration>
1213 <skip>${maven.test.skip}</skip>
1214 <arguments>run-script test:coverage</arguments>
1215 <workingDirectory>${project.build.directory}/${ui.react.src}</workingDirectory>
1216 </configuration>
1217 </execution>
1218 <execution>
1219 <id>npm_install_lib</id>
1220 <goals>
1221 <goal>npm</goal>
1222 </goals>
1223 <phase>deploy</phase>
1224 <configuration>
1225 <workingDirectory>${project.build.directory}/${ui.react.lib.src}</workingDirectory>
1226 <arguments>install</arguments>
1227 </configuration>
1228 </execution>
1229 <execution>
1230 <id>npm_build_lib</id>
1231 <goals>
1232 <goal>npm</goal>
1233 </goals>
1234 <phase>deploy</phase>
1235 <configuration>
1236 <workingDirectory>${project.build.directory}/${ui.react.lib.src}</workingDirectory>
1237 <arguments>run build</arguments>
1238 </configuration>
1239 </execution>
1240 <execution>
1241 <id>npm_publish</id>
1242 <goals>
1243 <goal>npm</goal>
1244 </goals>
1245 <phase>deploy</phase>
1246 <configuration>
1247 <workingDirectory>${project.build.directory}/${ui.react.lib.src}</workingDirectory>
1248 <arguments>publish</arguments>
1249 </configuration>
1250 </execution>
1251 </executions>
1252 </plugin>
1253 <plugin>
1254 <groupId>org.apache.maven.plugins</groupId>
1255 <artifactId>maven-compiler-plugin</artifactId>
1256 <version>3.8.1</version>
1257 <configuration>
1258 <source>11</source>
1259 <target>11</target>
1260 </configuration>
1261 </plugin>
1262 <plugin>
1263 <groupId>org.sonarsource.scanner.maven</groupId>
1264 <artifactId>sonar-maven-plugin</artifactId>
1265 <version>3.7.0.1746</version>
1266 </plugin>
Ted Humphreyfd8f0132020-06-02 09:39:30 -04001267 <plugin>
1268 <groupId>org.codehaus.mojo</groupId>
1269 <artifactId>exec-maven-plugin</artifactId>
sebdet078c34d2021-01-20 23:02:17 +01001270 <version>1.3.2</version>
1271 <executions>
Ted Humphreyfd8f0132020-06-02 09:39:30 -04001272 <execution>
1273 <id>libIndexCheck</id>
1274 <phase>validate</phase>
1275 <goals>
1276 <goal>exec</goal>
1277 </goals>
1278 </execution>
1279 </executions>
1280 <configuration>
1281 <executable>bash</executable>
1282 <arguments>
1283 <argument>${project.basedir}/src/main/script/checkLibIndex.sh</argument>
1284 </arguments>
1285 </configuration>
sebdet078c34d2021-01-20 23:02:17 +01001286 </plugin>
sebdetd2178bc2021-02-08 14:36:11 +01001287 <!-- Plugin to generate a X509 Certificate for https tests -->
1288 <plugin>
1289 <groupId>org.codehaus.mojo</groupId>
1290 <artifactId>keytool-maven-plugin</artifactId>
1291 <version>1.5</version>
1292 <executions>
1293 <execution>
1294 <id>add-certificate-for-dev</id>
1295 <configuration>
1296 <keystore>${project.build.directory}/classes/clds/aaf/org.onap.clamp.p12</keystore>
1297 <storepass>China in the Spring</storepass>
1298 <alias>clamptest</alias>
1299 <storetype>PKCS12</storetype>
1300 <keyalg>RSA</keyalg>
1301 <dname>cn=CN, ou=OU, o=O, c=C</dname>
1302 <validity>365</validity>
1303 </configuration>
1304 <goals>
1305 <goal>generateKeyPair</goal>
1306 </goals>
1307 <phase>generate-resources</phase>
1308 </execution>
1309 <execution>
1310 <id>add-certificate-for-test</id>
1311 <configuration>
1312 <keystore>${project.build.directory}/test-classes/clds/aaf/org.onap.clamp.p12</keystore>
1313 <storepass>China in the Spring</storepass>
1314 <alias>clamptest</alias>
1315 <storetype>PKCS12</storetype>
1316 <keyalg>RSA</keyalg>
1317 <dname>cn=CN, ou=OU, o=O, c=C</dname>
1318 <validity>365</validity>
1319 </configuration>
1320 <goals>
1321 <goal>generateKeyPair</goal>
1322 </goals>
1323 <phase>generate-test-resources</phase>
1324 </execution>
1325 </executions>
1326 </plugin>
sebdet078c34d2021-01-20 23:02:17 +01001327 </plugins>
1328 </build>
ChrisC5e9feb22017-06-21 02:38:57 -07001329</project>