1 <?xml version="1.0" encoding="UTF-8"?>
3 ============LICENSE_START=======================================================
5 ================================================================================
6 Copyright (C) 2017-2019 AT&T Intellectual Property. All rights
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
13 http://www.apache.org/licenses/LICENSE-2.0
15 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 ===================================================================
23 <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>
29 <version>4.2.0-SNAPSHOT</version>
34 <groupId>org.onap.oparent</groupId>
35 <artifactId>oparent</artifactId>
36 <version>2.1.0</version>
40 This is the MAVEN project that builds everything for ONAP CLAMP.
41 Docker engine is normally requires to perfom all possible tasks (including integration tests)
44 - The ONAP CLAMP JAR that contains CLAMP back-end code.
45 - The DOCKER images for:
46 * CLAMP backend (Java Spring)
47 * CLAMP frontend (Javscript React)
48 * The dashboard - Elastic search
49 * The dashboard - Logstash
50 * The dashboard - Kibana
53 - The CLAMP backend, JAVA unit testing
54 - The CLAMP backend, JAVA integration tests (with Spring + docker mariadb database + docker policy/dcae emulator written in python)
55 - The CLAMP frontend, Javascrip tests (NodeJS(NPM) + JEST + Enzyme fro React)
57 The test coverage for dev's can be found after a "clean install" build in:
58 - Clamp backend: target/jacoco-dev.exec (unit tests + integration tests merged)
59 or separately target/coverage-reports/jacoco.exec and target/coverage-reports/jacoco-it.exec
60 - Clamp frontend: target/ui-react/coverage
63 - mvn clean install: Build Clamp backend JAR + unit tests + integration tests + NPM tests (+coverage for all)
64 - mvn clean install -DskipITs=true: Build Clamp backend JAR + unit tests + NPM tests (+coverage for all), it does not require a DOCKER engine
65 - mvn clean install -DskipTests -P docker: Build Clamp backend JAR + all docker images
67 To start 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
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>
81 <eelf.core.version>1.0.0</eelf.core.version>
82 <camel.version>2.24.0</camel.version>
83 <springboot.version>2.2.0.RELEASE</springboot.version>
85 <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
86 <sonar.surefire.reportsPath>${project.build.directory}/surefire-reports</sonar.surefire.reportsPath>
87 <!-- The value below comes from the jacoco maven plugin output, sonar now takes xml only -->
88 <sonar.coverage.jacoco.xmlReportPaths>${project.build.directory}/jacoco-html-xml-reports/jacoco.xml</sonar.coverage.jacoco.xmlReportPaths>
89 <!-- <sonar.jacoco.reportPath>${project.build.directory}/coverage-reports/jacoco.exec</sonar.jacoco.reportPath>
90 <sonar.jacoco.itReportPath>${project.build.directory}/coverage-reports/jacoco-it.exec</sonar.jacoco.itReportPath> -->
91 <sonar.jacoco.reportMissing.force.zero>true</sonar.jacoco.reportMissing.force.zero>
92 <sonar.projectVersion>${project.version}</sonar.projectVersion>
93 <!-- Enable language to disable javascript analysis -->
94 <!-- <sonar.language>java</sonar.language> -->
95 <!-- Parameters for Javascript coverage -->
96 <sonar.verbose>true</sonar.verbose>
97 <sonar.sources>.</sonar.sources>
98 <sonar.inclusions>src/main/**,{ui.react.src}/src/**</sonar.inclusions>
99 <sonar.exclusions>src/main/resources/**</sonar.exclusions>
100 <sonar.scm.exclusions.disabled>true</sonar.scm.exclusions.disabled>
101 <sonar.javascript.lcov.reportPaths>${project.build.directory}/${ui.react.src}/coverage/lcov.info</sonar.javascript.lcov.reportPaths>
102 <sonar.coverage.exclusions>src/main/resources/**,target/ui-react/src/**/*.test.js,target/ui-react/src/setupTests.js,src/main/docker/kibana/*.py</sonar.coverage.exclusions>
103 <docker.push.registry>localhost:5000</docker.push.registry>
104 <docker.pull.registry>nexus3.onap.org:10001</docker.pull.registry>
105 <docker.skip.build>true</docker.skip.build>
106 <docker.skip.push>true</docker.skip.push>
107 <docker.skip.tag>true</docker.skip.tag>
108 <skip.staging.artifacts>false</skip.staging.artifacts>
109 <python.http.proxy.param />
110 <tomcat.version>9.0.27</tomcat.version>
111 <ui.react.src>ui-react</ui.react.src>
112 <npm.publish.url>https://nexus3.onap.org/repository/npm.release/</npm.publish.url>
117 <id>without-test</id>
120 <name>maven.test.skip</name>
125 <docker.skip.run>true</docker.skip.run>
126 <docker.skip>true</docker.skip>
130 <id>without-IT-only</id>
138 <docker.skip.run>true</docker.skip.run>
139 <docker.skip>true</docker.skip>
143 <id>without-IT-only2</id>
146 <name>skipTests</name>
151 <docker.skip.run>true</docker.skip.run>
152 <docker.skip>true</docker.skip>
158 <skip.staging.artifacts>true</skip.staging.artifacts>
159 <docker.skip.build>false</docker.skip.build>
160 <docker.skip.tag>false</docker.skip.tag>
161 <docker.skip.push>false</docker.skip.push>
162 <docker.skip>false</docker.skip>
167 <distributionManagement>
169 <id>ecomp-releases</id>
170 <name>Clamp Release Repository</name>
171 <url>https://nexus.onap.org/content/repositories/releases/</url>
174 <id>ecomp-snapshots</id>
175 <name>Clamp Snapshot Repository</name>
176 <url>https://nexus.onap.org/content/repositories/snapshots/</url>
177 </snapshotRepository>
180 <url>dav:https://nexus.onap.org/content/sites/site/org/onap/clamp/${project.version}</url>
182 </distributionManagement>
187 <name>onap-public</name>
188 <url>https://nexus.onap.org/content/repositories/public/</url>
190 <enabled>true</enabled>
193 <enabled>false</enabled>
197 <id>ecomp-releases</id>
198 <name>ONAP Release Repository</name>
199 <url>https://nexus.onap.org/content/repositories/releases/</url>
202 <id>ecomp-staging</id>
203 <name>ONAP Staging Repository</name>
204 <url>https://nexus.onap.org/content/repositories/staging/</url>
207 <id>ecomp-snapshots</id>
208 <name>ONAP Snapshot Repository</name>
209 <url>https://nexus.onap.org/content/repositories/snapshots/</url>
211 <enabled>true</enabled>
214 <enabled>false</enabled>
219 <url>http://repo1.maven.org/maven2/</url>
225 <name>onap-public</name>
226 <url>https://nexus.onap.org/content/repositories/public/</url>
228 <enabled>true</enabled>
231 <enabled>false</enabled>
236 <url>http://repo1.maven.org/maven2/</url>
238 </pluginRepositories>
240 <dependencyManagement>
242 <!-- Spring Boot BOM -->
244 <groupId>org.springframework.boot</groupId>
245 <artifactId>spring-boot-dependencies</artifactId>
246 <version>${springboot.version}</version>
248 <scope>import</scope>
252 <groupId>org.apache.camel</groupId>
253 <artifactId>camel-spring-boot-dependencies</artifactId>
254 <version>${camel.version}</version>
256 <scope>import</scope>
259 </dependencyManagement>
263 <groupId>org.apache.xmlgraphics</groupId>
264 <artifactId>batik-svggen</artifactId>
265 <version>1.11</version>
268 <groupId>xml-apis</groupId>
269 <artifactId>xml-apis</artifactId>
274 <groupId>org.apache.xmlgraphics</groupId>
275 <artifactId>batik-svg-dom</artifactId>
276 <version>1.11</version>
279 <groupId>org.apache.xmlgraphics</groupId>
280 <artifactId>batik-transcoder</artifactId>
281 <version>1.11</version>
284 <groupId>com.att.eelf</groupId>
285 <artifactId>eelf-core</artifactId>
286 <version>${eelf.core.version}</version>
289 <groupId>org.powermock</groupId>
290 <artifactId>powermock-module-junit4</artifactId>
293 <groupId>org.powermock</groupId>
294 <artifactId>powermock-api-mockito</artifactId>
299 <groupId>org.codehaus.janino</groupId>
300 <artifactId>janino</artifactId>
301 <version>3.0.8</version>
304 <groupId>org.apache.tomcat.embed</groupId>
305 <artifactId>tomcat-embed-core</artifactId>
306 <version>${tomcat.version}</version>
309 <groupId>org.apache.tomcat.embed</groupId>
310 <artifactId>tomcat-embed-el</artifactId>
311 <version>${tomcat.version}</version>
314 <groupId>org.apache.tomcat.embed</groupId>
315 <artifactId>tomcat-embed-websocket</artifactId>
316 <version>${tomcat.version}</version>
319 <groupId>org.apache.tomcat</groupId>
320 <artifactId>tomcat-annotations-api</artifactId>
321 <version>${tomcat.version}</version>
325 <groupId>org.apache.camel</groupId>
326 <artifactId>camel-http4-starter</artifactId>
329 <groupId>org.apache.camel</groupId>
330 <artifactId>camel-spring-boot-starter</artifactId>
333 <groupId>org.apache.camel</groupId>
334 <artifactId>camel-jaxb-starter</artifactId>
337 <groupId>org.apache.camel</groupId>
338 <artifactId>camel-servlet-starter</artifactId>
341 <groupId>org.apache.camel</groupId>
342 <artifactId>camel-gson-starter</artifactId>
345 <groupId>org.apache.camel</groupId>
346 <artifactId>camel-swagger-java-starter</artifactId>
349 <groupId>javax.ws.rs</groupId>
350 <artifactId>jsr311-api</artifactId>
353 <groupId>org.slf4j</groupId>
354 <artifactId>slf4j-ext</artifactId>
357 <groupId>com.fasterxml.jackson.core</groupId>
358 <artifactId>jackson-databind</artifactId>
363 <groupId>javax.xml.bind</groupId>
364 <artifactId>jaxb-api</artifactId>
365 <version>2.3.0</version>
368 <groupId>org.glassfish.jersey.core</groupId>
369 <artifactId>jersey-common</artifactId>
370 <version>2.27</version>
372 <!-- Spring famework -->
374 <groupId>org.springframework.boot</groupId>
375 <artifactId>spring-boot-starter-web</artifactId>
378 <groupId>org.springframework.boot</groupId>
379 <artifactId>spring-boot-starter-json</artifactId>
384 <groupId>org.springframework.boot</groupId>
385 <artifactId>spring-boot-starter-tomcat</artifactId>
388 <groupId>org.springframework</groupId>
389 <artifactId>spring-jdbc</artifactId>
392 <groupId>org.springframework.boot</groupId>
393 <artifactId>spring-boot-starter-security</artifactId>
396 <groupId>org.springframework.boot</groupId>
397 <artifactId>spring-boot-autoconfigure</artifactId>
400 <groupId>org.springframework.boot</groupId>
401 <artifactId>spring-boot-starter-test</artifactId>
405 <groupId>com.vaadin.external.google</groupId>
406 <artifactId>android-json</artifactId>
411 <groupId>org.springframework.boot</groupId>
412 <artifactId>spring-boot-starter-data-jpa</artifactId>
414 <!-- Others dependencies -->
416 <groupId>org.onap.aaf.authz</groupId>
417 <artifactId>aaf-cadi-aaf</artifactId>
418 <version>2.1.15</version>
421 <groupId>javax.servlet</groupId>
422 <artifactId>servlet-api</artifactId>
427 <groupId>ch.qos.logback</groupId>
428 <artifactId>logback-core</artifactId>
429 <version>1.2.3</version>
432 <groupId>ch.qos.logback</groupId>
433 <artifactId>logback-classic</artifactId>
434 <version>1.2.3</version>
437 <groupId>commons-dbcp</groupId>
438 <artifactId>commons-dbcp</artifactId>
439 <version>1.4</version>
442 <groupId>commons-io</groupId>
443 <artifactId>commons-io</artifactId>
444 <version>2.6</version>
447 <groupId>com.googlecode.json-simple</groupId>
448 <artifactId>json-simple</artifactId>
449 <version>1.1.1</version>
452 <groupId>org.apache.commons</groupId>
453 <artifactId>commons-vfs2</artifactId>
454 <version>2.2</version>
457 <groupId>joda-time</groupId>
458 <artifactId>joda-time</artifactId>
461 <groupId>org.slf4j</groupId>
462 <artifactId>slf4j-api</artifactId>
465 <groupId>javax.ws.rs</groupId>
466 <artifactId>javax.ws.rs-api</artifactId>
467 <version>2.0</version>
470 <groupId>junit</groupId>
471 <artifactId>junit</artifactId>
474 <groupId>javax.transaction</groupId>
475 <artifactId>jta</artifactId>
476 <version>1.1</version>
479 <groupId>javax.persistence</groupId>
480 <artifactId>persistence-api</artifactId>
481 <version>1.0.2</version>
484 <groupId>org.apache.commons</groupId>
485 <artifactId>commons-csv</artifactId>
486 <version>1.3</version>
488 <!-- Other dependencies to fix nexus IQ reported vulnerabilities -->
490 <groupId>org.codehaus.plexus</groupId>
491 <artifactId>plexus-utils</artifactId>
492 <version>3.0.24</version>
495 <groupId>org.jboss.spec.javax.ws.rs</groupId>
496 <artifactId>jboss-jaxrs-api_2.0_spec</artifactId>
497 <version>1.0.1.Final</version>
500 <groupId>com.google.guava</groupId>
501 <artifactId>guava</artifactId>
502 <version>27.0-jre</version>
505 <groupId>commons-codec</groupId>
506 <artifactId>commons-codec</artifactId>
507 <version>1.13</version>
509 <!-- Remove the MYSQL connector and replace it by Mariadb -->
511 <groupId>org.mariadb.jdbc</groupId>
512 <artifactId>mariadb-java-client</artifactId>
513 <version>2.2.1</version>
515 <!-- For SDC Controller -->
517 <groupId>org.onap.sdc.sdc-distribution-client</groupId>
518 <artifactId>sdc-distribution-client</artifactId>
519 <version>1.3.0</version>
522 <groupId>org.onap.sdc.sdc-tosca</groupId>
523 <artifactId>sdc-tosca</artifactId>
524 <version>1.5.1</version>
528 <groupId>org.assertj</groupId>
529 <artifactId>assertj-core</artifactId>
530 <version>3.10.0</version>
534 <groupId>org.mockito</groupId>
535 <artifactId>mockito-core</artifactId>
536 <version>2.28.2</version>
540 <groupId>org.powermock</groupId>
541 <artifactId>powermock-api-mockito2</artifactId>
542 <version>2.0.4</version>
546 <groupId>org.powermock</groupId>
547 <artifactId>powermock-module-junit4</artifactId>
548 <version>2.0.4</version>
554 <finalName>clamp</finalName>
558 <directory>src/test/resources</directory>
560 <exclude>**/*.jks</exclude>
561 <exclude>**/*.csar</exclude>
563 <filtering>true</filtering>
566 <directory>src/test/resources/https</directory>
568 <include>**.jks</include>
570 <filtering>false</filtering>
571 <targetPath>https</targetPath>
574 <directory>src/test/resources/example/sdc</directory>
576 <include>**.csar</include>
578 <filtering>false</filtering>
579 <targetPath>example/sdc</targetPath>
583 <!-- For AAF folder maven should not try to filter Keystores/Truststores ... Otherwise
584 they will be broken and unreadable -->
586 <directory>src/main/resources</directory>
587 <filtering>true</filtering>
589 <exclude>clds/aaf/**</exclude>
593 <directory>src/main/resources</directory>
594 <filtering>false</filtering>
596 <include>clds/aaf/**</include>
600 <directory>${ui.react.src}</directory>
602 <include>src/**</include>
603 <include>public/**</include>
604 <include>package.json</include>
605 <include>package-lock.json</include>
607 <filtering>true</filtering>
608 <targetPath>${project.build.directory}/${ui.react.src}</targetPath>
614 <groupId>de.jpdigital</groupId>
615 <artifactId>hibernate52-ddl-maven-plugin</artifactId>
616 <version>2.2.0</version>
619 <groupId>javax.xml.bind</groupId>
620 <artifactId>jaxb-api</artifactId>
621 <version>2.3.0</version>
626 <phase>process-classes</phase>
632 <param>org.onap.clamp</param>
635 <param>MARIADB53</param>
637 <outputDirectory>${project.basedir}/extra/sql/bulkload/</outputDirectory>
638 <outputFileNameSuffix>create-tables</outputFileNameSuffix>
639 <!-- <createDropStatements>true</createDropStatements> -->
640 <omitDialectFromFileName>true</omitDialectFromFileName>
646 <!-- Read the swagger.json file and the definition from SwaggerConfig.java; generate
647 a list of .adoc files containing the APIs info in more structured way -->
649 <groupId>io.github.swagger2markup</groupId>
650 <artifactId>swagger2markup-maven-plugin</artifactId>
651 <version>1.3.3</version>
654 <groupId>io.github.swagger2markup</groupId>
655 <artifactId>swagger2markup-import-files-ext</artifactId>
656 <version>1.3.3</version>
659 <groupId>io.github.swagger2markup</groupId>
660 <artifactId>swagger2markup-spring-restdocs-ext</artifactId>
661 <version>1.3.3</version>
665 <swaggerInput>${project.basedir}/docs/swagger/swagger.json</swaggerInput>
666 <outputDir>${project.build.directory}/asciidoc/generated</outputDir>
668 <swagger2markup.markupLanguage>ASCIIDOC</swagger2markup.markupLanguage>
673 <phase>post-integration-test</phase>
675 <goal>convertSwagger2markup</goal>
681 <!-- Run the generated asciidoc through Asciidoctor to generate other documentation
682 types, such as PDFs or HTML5 -->
684 <groupId>org.asciidoctor</groupId>
685 <artifactId>asciidoctor-maven-plugin</artifactId>
686 <version>1.5.7.1</version>
689 <groupId>org.asciidoctor</groupId>
690 <artifactId>asciidoctorj-pdf</artifactId>
691 <version>1.5.0-alpha.10.1</version>
695 <sourceDirectory>${project.basedir}/src/main/resources/asciidoc</sourceDirectory>
696 <sourceDocumentName>swagger.adoc</sourceDocumentName>
698 <doctype>book</doctype>
700 <toclevels>3</toclevels>
705 <generated>${project.build.directory}/asciidoc/generated</generated>
712 <phase>post-integration-test</phase>
714 <goal>process-asciidoc</goal>
717 <backend>html5</backend>
718 <outputDirectory>${project.basedir}/docs/swagger</outputDirectory>
719 <outputDirectory>${project.basedir}/src/main/resources/META-INF/resources/</outputDirectory>
724 <phase>post-integration-test</phase>
726 <goal>process-asciidoc</goal>
729 <backend>pdf</backend>
730 <outputDirectory>${project.basedir}/docs/swagger</outputDirectory>
736 <groupId>org.codehaus.groovy.maven</groupId>
737 <artifactId>gmaven-plugin</artifactId>
738 <version>1.0</version>
741 <phase>validate</phase>
746 <source>${project.basedir}/src/main/script/TagVersion.groovy</source>
752 <groupId>org.codehaus.groovy.maven</groupId>
753 <artifactId>gmaven-plugin</artifactId>
754 <version>1.0</version>
757 <phase>validate</phase>
762 <source>${project.basedir}/src/main/script/SelectNpmRepo.groovy</source>
768 <groupId>org.apache.maven.plugins</groupId>
769 <artifactId>maven-jar-plugin</artifactId>
770 <version>3.0.2</version>
773 <id>jar-with-only-classes</id>
774 <phase>package</phase>
779 <classifier>classes</classifier>
781 <include>org/**</include>
788 <groupId>org.codehaus.mojo</groupId>
789 <artifactId>build-helper-maven-plugin</artifactId>
790 <version>3.0.0</version>
794 <goal>attach-artifact</goal>
796 <phase>package</phase>
800 <file>${project.build.directory}/clamp-classes.jar</file>
802 <classifier>classes</classifier>
808 <id>reserve-port-for-tests</id>
809 <phase>process-resources</phase>
811 <goal>reserve-network-port</goal>
815 <portName>docker.mariadb.port.host</portName>
816 <portName>docker.http-cache.port.host</portName>
817 <portName>clamp.it.tests.http-redirected</portName>
818 <portName>clamp.it.tests.https</portName>
819 <portName>clamp.it.tests.http</portName>
827 <groupId>org.springframework.boot</groupId>
828 <artifactId>spring-boot-maven-plugin</artifactId>
829 <!-- Temporary fix -->
830 <version>1.5.13.RELEASE</version>
831 <!-- <version>${springboot.version}</version> -->
835 <goal>repackage</goal>
837 <phase>package</phase>
842 <groupId>org.apache.maven.plugins</groupId>
843 <artifactId>maven-surefire-plugin</artifactId>
844 <version>2.22.2</version>
846 <forkCount>1C</forkCount>
847 <reuseForks>true</reuseForks>
848 <useSystemClassLoader>false</useSystemClassLoader>
849 <argLine>${surefireArgLine}</argLine>
854 <groupId>org.apache.maven.plugins</groupId>
855 <artifactId>maven-failsafe-plugin</artifactId>
856 <version>2.22.2</version>
859 <id>integration-tests</id>
861 <goal>integration-test</goal>
865 <additionalClasspathElements>
866 <additionalClasspathElement>${project.build.directory}/classes</additionalClasspathElement>
867 </additionalClasspathElements>
869 <include>**/*ItCase.java</include>
871 <forkCount>1</forkCount>
872 <reuseForks>true</reuseForks>
873 <useSystemClassLoader>false</useSystemClassLoader>
874 <argLine>${failsafeArgLine}</argLine>
880 <groupId>io.fabric8</groupId>
881 <artifactId>docker-maven-plugin</artifactId>
882 <version>0.31.0</version>
885 <groupId>org.apache.httpcomponents</groupId>
886 <artifactId>httpclient</artifactId>
887 <version>4.5.5</version>
891 <verbose>true</verbose>
892 <apiVersion>1.35</apiVersion>
895 <name>library/mariadb:10.3.12</name>
896 <alias>mariadb</alias>
899 <MYSQL_ROOT_PASSWORD>strong_pitchou</MYSQL_ROOT_PASSWORD>
901 <hostname>mariadb</hostname>
904 <volume>${project.basedir}/extra/sql/:/docker-entrypoint-initdb.d:rw</volume>
905 <volume>${project.basedir}/extra/docker/mariadb/conf1:/etc/mysql/conf.d</volume>
909 <log>socket: '/var/run/mysqld/mysqld.sock' port: 3306 mariadb.org binary distribution</log>
912 <preStop>/docker-entrypoint-initdb.d/dump/backup-data-only.sh</preStop>
916 <port>${docker.mariadb.port.host}:3306</port>
924 <name>library/python:2-slim</name>
925 <alias>python</alias>
927 <hostname>python</hostname>
930 <volume>${project.basedir}/src/test/resources/http-cache/:/usr/src/http-cache-app</volume>
931 <volume>${project.basedir}/src/test/resources/http-cache/example/:/usr/src/http-cache-app/data-cache</volume>
944 <port>${docker.http-cache.port.host}:8080</port>
946 <workingDir>/usr/src/http-cache-app</workingDir>
948 <shell>./start_http_cache.sh ${python.http.proxy.param}
949 --python_proxyaddress=localhost:${docker.http-cache.port.host}</shell>
957 <name>onap/clamp-backend</name>
958 <alias>onap-clamp-backend</alias>
963 <cleanup>true</cleanup>
966 <tag>${project.docker.latesttagtimestamp.version}</tag>
967 <tag>${project.docker.latesttag.version}</tag>
969 <!-- A relative path is looked up in ${project.basedir}/src/main/docker by
971 <dockerFile>backend/Dockerfile</dockerFile>
973 <descriptor>backend/backend-files.xml</descriptor>
974 <name>onap-clamp-backend</name>
979 <name>onap/clamp-frontend</name>
980 <alias>onap-clamp-frontend</alias>
985 <cleanup>true</cleanup>
988 <tag>${project.docker.latesttagtimestamp.version}</tag>
989 <tag>${project.docker.latesttag.version}</tag>
991 <!-- A relative path is looked up in ${project.basedir}/src/main/docker by
993 <dockerFile>frontend/Dockerfile</dockerFile>
995 <descriptor>frontend/frontend-files.xml</descriptor>
996 <name>onap-clamp-frontend</name>
1001 <name>onap/clamp-dashboard-logstash</name>
1002 <alias>onap-clamp-dashboard-logstash</alias>
1007 <cleanup>true</cleanup>
1010 <tag>${project.docker.latesttagtimestamp.version}</tag>
1011 <tag>${project.docker.latesttag.version}</tag>
1013 <dockerFile>logstash/Dockerfile</dockerFile>
1017 <name>onap/clamp-dashboard-kibana</name>
1018 <alias>onap-clamp-dashboard-kibana</alias>
1023 <cleanup>true</cleanup>
1026 <tag>${project.docker.latesttagtimestamp.version}</tag>
1027 <tag>${project.docker.latesttag.version}</tag>
1029 <dockerFile>kibana/Dockerfile</dockerFile>
1037 <id>generate-images</id>
1038 <phase>install</phase>
1044 <id>push-images</id>
1045 <phase>deploy</phase>
1051 <id>docker-start-for-it</id>
1052 <phase>pre-integration-test</phase>
1058 <id>docker-stop-for-it</id>
1059 <phase>post-integration-test</phase>
1068 <groupId>org.jacoco</groupId>
1069 <artifactId>jacoco-maven-plugin</artifactId>
1070 <version>0.8.5</version>
1072 <dumpOnExit>true</dumpOnExit>
1073 <append>true</append>
1075 <include>org/onap/clamp/**</include>
1080 <id>pre-unit-test</id>
1082 <goal>prepare-agent</goal>
1085 <destFile>${project.build.directory}/coverage-reports/jacoco.exec</destFile>
1086 <propertyName>surefireArgLine</propertyName>
1087 <!-- <append>true</append> -->
1091 <id>pre-integration-test</id>
1092 <phase>pre-integration-test</phase>
1094 <goal>prepare-agent</goal>
1097 <destFile>${project.build.directory}/coverage-reports/jacoco-it.exec</destFile>
1098 <propertyName>failsafeArgLine</propertyName>
1099 <!-- <append>true</append> -->
1106 <phase>post-integration-test</phase>
1110 implementation="org.apache.maven.shared.model.fileset.FileSet">
1111 <directory>${project.build.directory}/coverage-reports</directory>
1113 <include>*.exec</include>
1117 <destFile>${project.build.directory}/jacoco.exec</destFile>
1126 <!-- Setting explicit path, so that we remember where it picks them up from -->
1127 <dataFile>${project.build.directory}/jacoco.exec</dataFile>
1128 <outputDirectory>${project.build.directory}/jacoco-html-xml-reports</outputDirectory>
1134 <!-- This plugin will be useful when we will have multi-modules project -->
1136 <groupId>org.codehaus.mojo</groupId>
1137 <artifactId>versions-maven-plugin</artifactId>
1138 <version>1.3.1</version>
1142 <groupId>com.github.eirslett</groupId>
1143 <artifactId>frontend-maven-plugin</artifactId>
1144 <version>1.8.0</version>
1146 <installDirectory>${project.build.directory}/${ui.react.src}</installDirectory>
1147 <workingDirectory>${project.build.directory}/${ui.react.src}</workingDirectory>
1151 <id>install_node_and_npm</id>
1153 <goal>install-node-and-npm</goal>
1155 <phase>generate-sources</phase>
1157 <nodeVersion>v12.13.0</nodeVersion>
1158 <npmVersion>6.13.0</npmVersion>
1162 <id>npm_install</id>
1166 <phase>compile</phase>
1168 <arguments>install</arguments>
1178 <arguments>run-script test:coverage</arguments>
1182 <id>npm_publish</id>
1186 <phase>deploy</phase>
1188 <arguments>publish</arguments>
1194 <groupId>org.apache.maven.plugins</groupId>
1195 <artifactId>maven-compiler-plugin</artifactId>
1196 <version>3.8.1</version>
1203 <groupId>org.sonarsource.scanner.maven</groupId>
1204 <artifactId>sonar-maven-plugin</artifactId>
1205 <version>3.7.0.1746</version>