4.0.0org.onap.policy.clamppolicy-clamp6.1.2-SNAPSHOTpolicy-clamp-runtime${project.artifactId}
This is the MAVEN project that builds everything for ONAP POLICY-CLAMP.
Docker engine is normally required to perfom all possible tasks (including integration tests)
It can build:
- The ONAP POLICY-CLAMP JAR that contains CLAMP back-end code.
- The DOCKER images for:
* POLICY-CLAMP backend (Java Spring)
* POLICY-CLAMP frontend (Javascript React)
It can test:
- The POLICY-CLAMP backend, JAVA unit testing
- The POLICY-CLAMP backend, JAVA integration tests (with Spring + docker mariadb database + docker policy/dcae
emulator written in python)
- The POLICY-CLAMP frontend, Javascript tests (NodeJS(NPM) + JEST and Enzyme for React)
The test coverage for dev's can be found after a "clean install" build in:
- Clamp backend: target/jacoco-dev.exec (unit tests + integration tests merged)
or separately target/coverage-reports/jacoco.exec and target/coverage-reports/jacoco-it.exec
- Clamp frontend: target/ui-react/coverage
Useful mvn commands:
- mvn clean install: Build Clamp backend JAR + unit tests + integration tests + NPM tests (+coverage for all)
- mvn clean install -DskipITs=true: Build Clamp backend JAR + unit tests + NPM tests (+coverage for all), it
does not require a DOCKER engine
- mvn clean install -DskipTests -P docker: Build Clamp backend JAR + all docker images
To start POLICY-CLAMP (Build it before):
- Use docker-compose file in ./extra/docker/clamp/docker-compose.yml
- Use the script located in ./extra/bin/start-backend.sh + start-frontend.sh
- Use your IDE to use the Jar or start NVM/NPM
yyyyMMdd'T'HHmmss'Z'${project.version}${maven.build.timestamp}jacoco${project.build.directory}/surefire-reports${project.build.directory}/jacoco-html-xml-reports/jacoco.xml
${project.version}DEBUG${project.build.directory}/${ui.react.src}/node/nodetruesrc/main,${project.build.directory}/${ui.react.src}/srcsrc/main/resources/**true${project.build.directory}/${ui.react.src}/coverage/lcov.info
src/main/resources/**,target/ui-react/src/**/*.test.js,target/ui-react/src/setupTests.js
localhost:5000nexus3.onap.org:10001truetruetruefalseui-reactui-react-libhttps://nexus3.onap.org/repository/npm.snapshot/without-testmaven.test.skiptruetruetruewithout-IT-onlyskipITstruetruetruewithout-IT-only2skipTeststruetruetruedockertruefalsefalsefalsefalseorg.springframework.bootspring-boot-dependencies${version.springboot}pomimportorg.apache.camel.springbootcamel-spring-boot-bom${version.camel}pomimportcom.att.eelfeelf-core${version.eelf.core}org.powermockpowermock-module-junit4org.powermockpowermock-api-mockitoorg.codehaus.janinojanino3.0.8org.apache.tomcat.embedtomcat-embed-core${version.tomcat}org.apache.tomcat.embedtomcat-embed-el${version.tomcat}org.apache.tomcat.embedtomcat-embed-websocket${version.tomcat}org.apache.tomcattomcat-annotations-api${version.tomcat}org.apache.camel.springbootcamel-http-starterorg.apache.camel.springbootcamel-spring-boot-starterorg.apache.camel.springbootcamel-jaxb-starterorg.apache.camel.springbootcamel-servlet-starterorg.apache.camel.springbootcamel-gson-starterorg.apache.camel.springbootcamel-swagger-java-starterjavax.ws.rsjsr311-apiorg.slf4jslf4j-extorg.springframework.bootspring-boot-starter-weborg.springframework.bootspring-boot-starter-jsonorg.springframework.bootspring-boot-starter-tomcatorg.glassfishjakarta.elorg.springframeworkspring-jdbcorg.springframework.bootspring-boot-starter-securityorg.springframework.bootspring-boot-autoconfigureorg.springframework.bootspring-boot-starter-testtestcom.vaadin.external.googleandroid-jsonorg.springframework.bootspring-boot-starter-data-jpaorg.onap.policy.modelspolicy-models-pdp${policy.models.version}org.eclipse.jettyjetty-serverorg.glassfish.jersey.containersjersey-container-servletorg.jetbrains.kotlinkotlin-reflectorg.jetbrains.kotlinkotlin-stdliborg.jetbrains.kotlinkotlin-stdlib-commonjavax.xml.wsjaxws-api2.3.1org.onap.aaf.authzaaf-cadi-aaf2.1.15javax.servletservlet-apilog4jlog4jch.qos.logbacklogback-core1.2.3ch.qos.logbacklogback-classic1.2.3commons-iocommons-iocom.googlecode.json-simplejson-simple1.1.1org.apache.commonscommons-vfs22.8.0com.squareup.okhttpokhttporg.slf4jslf4j-apijavax.transactionjta1.1javax.persistencepersistence-api1.0.2commons-codeccommons-codecorg.codehaus.plexusplexus-utilsorg.jboss.spec.javax.ws.rsjboss-jaxrs-api_2.0_spec1.0.1.Finalorg.mariadb.jdbcmariadb-java-client2.7.2org.onap.sdc.sdc-distribution-clientsdc-distribution-client1.4.1org.onap.sdc.sdc-toscasdc-tosca1.5.1com.fasterxml.jackson.corejackson-databindorg.yamlsnakeyamlorg.dom4jdom4j2.1.3org.junit.vintagejunit-vintage-engine5.7.1testorg.assertjassertj-core3.10.0testcom.github.docker-javadocker-java-core3.2.7testcom.fasterxml.jackson.corejackson-databindcom.github.docker-javadocker-java3.2.7testpolicy-clamp-backendsrc/main/resourcestrueclds/aaf/**src/main/resourcesfalseclds/aaf/**src/test/resources**/*.jks**/*.csartruesrc/test/resources/https**.jksfalsehttpssrc/test/resources/example/sdc**.csarfalseexample/sdcsrc/main/resourcestrueclds/aaf/**src/main/resourcesfalseclds/aaf/**${ui.react.src}node_modulessrc/**public/**package.jsonpackage-lock.jsontrue${project.build.directory}/${ui.react.src}${ui.react.src}src/****/__snapshots__/****/**.test.jstrue${project.build.directory}/${ui.react.lib.src}${ui.react.lib.src}**node_modules/**package-lock.jsontrue${project.build.directory}/${ui.react.lib.src}de.jpdigitalhibernate52-ddl-maven-plugin2.2.0javax.xml.bindjaxb-api2.3.0process-classesgen-ddl
org.onap.policy.clamp
MARIADB53
${project.basedir}/extra/sql/bulkload/create-tablestrueio.github.swagger2markupswagger2markup-maven-plugin1.3.3io.github.swagger2markupswagger2markup-import-files-ext1.3.3io.github.swagger2markupswagger2markup-spring-restdocs-ext1.3.3${project.basedir}/../docs/swagger/swagger.json${project.build.directory}/asciidoc/generatedASCIIDOCpost-integration-testconvertSwagger2markuporg.asciidoctorasciidoctor-maven-plugin1.5.7.1org.asciidoctorasciidoctorj-pdf1.5.0-alpha.10.1${project.basedir}/src/main/resources/asciidocswagger.adocbookleft3${project.build.directory}/asciidoc/generatedoutput-htmlpost-integration-testprocess-asciidochtml5${project.basedir}/docs/swagger${project.basedir}/src/main/resources/META-INF/resources/output-pdfpost-integration-testprocess-asciidocpdf${project.basedir}/docs/swaggerorg.codehaus.groovy.mavengmaven-plugin1.0docker-tagsvalidateexecutenpm-repos-selectionvalidateexecuteorg.apache.maven.pluginsmaven-jar-plugin3.2.0jar-with-only-classespackagejarclassesorg/**org.codehaus.mojobuild-helper-maven-plugin3.2.0attach-artifactpackage${project.build.directory}/policy-clamp-backend-classes.jarjarclassesreserve-port-for-testsprocess-resourcesreserve-network-portdocker.mariadb.port.hostdocker.http-cache.port.hostclamp.it.tests.http-redirectedclamp.it.tests.robotframework.httpclamp.it.tests.httpsclamp.it.tests.httporg.springframework.bootspring-boot-maven-plugin${version.springboot}repackagepackageorg.apache.maven.pluginsmaven-surefire-plugin2.22.21Ctruefalse${surefireArgLine}org.apache.maven.pluginsmaven-failsafe-plugin2.22.2integration-testsintegration-testverify${project.build.directory}/classes
**/*ItCase.java1Ctruefalse${failsafeArgLine}io.fabric8docker-maven-plugin0.35.0org.apache.httpcomponentshttpclient4.5.5true1.35docker.io/mariadb:10.5.4mariadbstrong_pitchoumariadb${project.basedir}/extra/sql/:/docker-entrypoint-initdb.d:rw${project.basedir}/extra/docker/mariadb/conf1:/etc/mysql/conf.dport: 3306/docker-entrypoint-initdb.d/dump/backup-data-only.sh${docker.mariadb.port.host}:3306bridgedocker.io/python:2-slimpythonpython
${project.basedir}/src/test/resources/http-cache/:/usr/src/http-cache-app
${project.basedir}/src/test/resources/http-cache/example/:/usr/src/http-cache-app/data-cache
8080direct${docker.http-cache.port.host}:8080/usr/src/http-cache-app./start_http_cache.sh ${python.http.proxy.param}
--python_proxyaddress=localhost:${docker.http-cache.port.host}
bridgeonap/policy-clamp-backendonap-policy-clamp-backendtruetruelatest${project.docker.latesttagtimestamp.version}${project.docker.latesttag.version}backend/Dockerfilebackend/backend-files.xmlonap-policy-clamp-backendonap/policy-clamp-frontendonap-policy-clamp-frontendtruetruelatest${project.docker.latesttagtimestamp.version}${project.docker.latesttag.version}frontend/Dockerfilefrontend/frontend-files.xmlonap-policy-clamp-frontendgenerate-imagesinstallbuildpush-imagesdeploypushdocker-start-for-itpre-integration-teststartdocker-stop-for-itpost-integration-teststoporg.jacocojacoco-maven-plugin0.8.5truetrueorg/onap/policy/clamp/**pre-unit-testprepare-agent${project.build.directory}/coverage-reports/jacoco.execsurefireArgLinepre-integration-testpre-integration-testprepare-agent${project.build.directory}/coverage-reports/jacoco-it.execfailsafeArgLinefalsemergepost-integration-test${project.build.directory}/coverage-reports*.exec${project.build.directory}/jacoco.execreport-xmlreport${project.build.directory}/jacoco.exec${project.build.directory}/jacoco-html-xml-reportsorg.codehaus.mojoversions-maven-plugin1.3.1com.github.eirslettfrontend-maven-plugin1.11.3${project.build.directory}/${ui.react.src}${repo.npm}install_node_and_npminstall-node-and-npmgenerate-sourcesv14.16.16.14.13npm_installnpmcompile${project.build.directory}/${ui.react.src}installnpm_testnpmtest${maven.test.skip}run-script test:coverage${project.build.directory}/${ui.react.src}npm_install_libnpmdeploy${project.build.directory}/${ui.react.lib.src}installnpm_build_libnpmdeploy${project.build.directory}/${ui.react.lib.src}run buildnpm_publishnpmdeploy${project.build.directory}/${ui.react.lib.src}publishorg.apache.maven.pluginsmaven-compiler-plugin3.8.1org.sonarsource.scanner.mavensonar-maven-plugin3.7.0.1746org.codehaus.mojoexec-maven-plugin1.3.2libIndexCheckvalidateexecbash${project.basedir}/src/main/script/checkLibIndex.shorg.codehaus.mojokeytool-maven-plugin1.5add-certificate-for-dev${project.build.directory}/classes/clds/aaf/org.onap.clamp.p12China in the SpringclamptestPKCS12RSAcn=CN, ou=OU, o=O, c=C365generateKeyPairgenerate-resourcesadd-certificate-for-test${project.build.directory}/test-classes/clds/aaf/org.onap.clamp.p12China in the SpringclamptestPKCS12RSAcn=CN, ou=OU, o=O, c=C365generateKeyPairgenerate-test-resources