| <?xml version="1.0" encoding="UTF-8"?> |
| <!-- |
| ============LICENSE_START======================================================= |
| ONAP CLAMP |
| ================================================================================ |
| Copyright (C) 2017 AT&T Intellectual Property. All rights |
| reserved. |
| ================================================================================ |
| Licensed under the Apache License, Version 2.0 (the "License"); |
| you may not use this file except in compliance with the License. |
| You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| ============LICENSE_END============================================ |
| =================================================================== |
| ECOMP is a trademark and service mark of AT&T Intellectual Property. |
| --> |
| |
| <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" |
| xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> |
| <modelVersion>4.0.0</modelVersion> |
| <groupId>org.onap.clamp</groupId> |
| <artifactId>clds</artifactId> |
| <version>1.1.0</version> |
| <name>clamp</name> |
| |
| <parent> |
| <groupId>org.onap.oparent</groupId> |
| <artifactId>oparent</artifactId> |
| <version>1.0.0-SNAPSHOT</version> |
| </parent> |
| |
| <description> |
| This project build the ONAP CLAMP JAR that contains AJSC + CLAMP code. |
| |
| By Default "mvn clean install" command will execute also the unit tests |
| and the integration tests. The integration tests require a docker engine running. |
| |
| If you want to skip the intergation test you can by doing: |
| "mvn clean install -DskipITs=true" |
| |
| For Spring it's possible to specify the application.properties location |
| "mvn clean install -Dspring.config.location=classpath:application-test.properties" |
| |
| The application.properties contains the location of the CLAMP parameters files: |
| - org.onap.clamp.config.files.cldsReference=classpath:/clds/clds-reference.properties |
| - org.onap.clamp.config.files.cldsPolicyConfig=classpath:/clds/clds-policy-config.properties |
| - org.onap.clamp.config.files.cldsUsers=classpath:/clds/clds-users.json |
| - org.onap.clamp.config.files.globalClds=classpath:/clds/globalClds.properties |
| |
| </description> |
| |
| <properties> |
| <maven.build.timestamp.format>yyyy.MM.dd'T'hh.mm.ss'Z'</maven.build.timestamp.format> |
| <clamp.project.version>${project.version}</clamp.project.version> |
| <clamp.build.timestamp>${maven.build.timestamp}</clamp.build.timestamp> |
| <maven.compiler.source>1.8</maven.compiler.source> |
| <maven.compiler.target>1.8</maven.compiler.target> |
| <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> |
| <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> |
| |
| <docker.mariadb.port.host>3306</docker.mariadb.port.host> |
| <sdk.java.common.logging>0.0.3-oss</sdk.java.common.logging> |
| <project.scm.id>git-server</project.scm.id> |
| <java.version>1.8</java.version> |
| <csi.logging>6.1.0.6-oss</csi.logging> |
| <sdk.camel.rest>6.2.0.6-oss</sdk.camel.rest> |
| <sdk.camunda.core>6.1.0.3-oss</sdk.camunda.core> |
| |
| <sonar.language>java</sonar.language> |
| <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin> |
| <sonar.surefire.reportsPath>${project.build.directory}/surefire-reports</sonar.surefire.reportsPath> |
| <sonar.jacoco.reportPath>${project.build.directory}/coverage-reports/jacoco.exec</sonar.jacoco.reportPath> |
| <sonar.jacoco.itReportPath>${project.build.directory}/coverage-reports/jacoco-it.exec</sonar.jacoco.itReportPath> |
| <sonar.jacoco.reportMissing.force.zero>true</sonar.jacoco.reportMissing.force.zero> |
| <sonar.projectVersion>${project.version}</sonar.projectVersion> |
| |
| <docker.push.registry>localhost:5000</docker.push.registry> |
| <skip.docker.build>true</skip.docker.build> |
| <skip.docker.push>true</skip.docker.push> |
| <skip.staging.artifacts>false</skip.staging.artifacts> |
| </properties> |
| |
| <distributionManagement> |
| <repository> |
| <id>ecomp-releases</id> |
| <name>Clamp Release Repository</name> |
| <url>https://nexus.onap.org/content/repositories/releases/</url> |
| </repository> |
| <snapshotRepository> |
| <id>ecomp-snapshots</id> |
| <name>Clamp Snapshot Repository</name> |
| <url>https://nexus.onap.org/content/repositories/snapshots/</url> |
| </snapshotRepository> |
| <site> |
| <id>ecomp-site</id> |
| <url>dav:https://nexus.onap.org/content/sites/site/org/onap/clamp/${project.version}</url> |
| </site> |
| </distributionManagement> |
| |
| <repositories> |
| <repository> |
| <id>central</id> |
| <name>Maven 2 repository 2</name> |
| <url>http://repo2.maven.org/maven2/</url> |
| </repository> |
| <repository> |
| <id>ecomp-releases</id> |
| <name>ONAP Release Repository</name> |
| <url>https://nexus.onap.org/content/repositories/releases/</url> |
| </repository> |
| <repository> |
| <id>ecomp-staging</id> |
| <name>ONAP Staging Repository</name> |
| <url>https://nexus.onap.org/content/repositories/staging/</url> |
| </repository> |
| <repository> |
| <id>ecomp-snapshots</id> |
| <name>ONAP Snapshot Repository</name> |
| <url>https://nexus.onap.org/content/repositories/snapshots/</url> |
| <snapshots> |
| <enabled>true</enabled> |
| </snapshots> |
| <releases> |
| <enabled>false</enabled> |
| </releases> |
| </repository> |
| <repository> |
| <id>spring-repo</id> |
| <name>Spring repo</name> |
| <url>https://artifacts.alfresco.com/nexus/content/repositories/public/</url> |
| </repository> |
| <repository> |
| <id>repository.jboss.org-public</id> |
| <name>JBoss.org Maven repository</name> |
| <url>https://repository.jboss.org/nexus/content/groups/public</url> |
| </repository> |
| </repositories> |
| |
| <dependencyManagement> |
| <dependencies> |
| <dependency> |
| <!-- Import dependency management from Spring Boot --> |
| <groupId>org.springframework.boot</groupId> |
| <artifactId>spring-boot-dependencies</artifactId> |
| <version>1.4.1.RELEASE</version> |
| <type>pom</type> |
| <scope>import</scope> |
| </dependency> |
| </dependencies> |
| </dependencyManagement> |
| |
| <dependencies> |
| |
| <dependency> |
| <groupId>com.googlecode.json-simple</groupId> |
| <artifactId>json-simple</artifactId> |
| <version>1.1</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.commons</groupId> |
| <artifactId>commons-vfs2</artifactId> |
| <version>2.0</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.springframework.security</groupId> |
| <artifactId>spring-security-test</artifactId> |
| |
| <scope>test</scope> |
| </dependency> |
| |
| |
| <!-- Dependencies of parent pom start --> |
| <dependency> |
| <groupId>com.att.ajsc</groupId> |
| <artifactId>sdk-java-common-logging</artifactId> |
| <version>${sdk.java.common.logging}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.springframework.boot</groupId> |
| <artifactId>spring-boot-starter-tomcat</artifactId> |
| <scope>compile</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.springframework.boot</groupId> |
| <artifactId>spring-boot-starter-actuator</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>org.springframework.boot</groupId> |
| <artifactId>spring-boot-starter-security</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>org.springframework.boot</groupId> |
| <artifactId>spring-boot-starter-test</artifactId> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>joda-time</groupId> |
| <artifactId>joda-time</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>org.springframework</groupId> |
| <artifactId>spring-context</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-api</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>javax.ws.rs</groupId> |
| <artifactId>javax.ws.rs-api</artifactId> |
| <version>2.0</version> |
| </dependency> |
| <dependency> |
| <groupId>org.springframework</groupId> |
| <artifactId>spring-test</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>junit</groupId> |
| <artifactId>junit</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>org.mockito</groupId> |
| <artifactId>mockito-all</artifactId> |
| <version>1.9.5</version> |
| </dependency> |
| <dependency> |
| <groupId>commons-logging</groupId> |
| <artifactId>commons-logging</artifactId> |
| <version>1.1.1</version> |
| </dependency> |
| <dependency> |
| <groupId>org.springframework</groupId> |
| <artifactId>spring-aspects</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>com.fasterxml.jackson.core</groupId> |
| <artifactId>jackson-core</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>com.fasterxml.jackson.core</groupId> |
| <artifactId>jackson-databind</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>org.springframework</groupId> |
| <artifactId>spring-webmvc</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>org.springframework.boot</groupId> |
| <artifactId>spring-boot-starter-web</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>log4j</groupId> |
| <artifactId>log4j</artifactId> |
| <version>1.2.17</version> |
| </dependency> |
| <dependency> |
| <groupId>org.springframework.boot</groupId> |
| <artifactId>spring-boot</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>org.springframework.boot</groupId> |
| <artifactId>spring-boot-autoconfigure</artifactId> |
| </dependency> |
| <dependency> |
| <groupId>javax.transaction</groupId> |
| <artifactId>jta</artifactId> |
| <version>1.1</version> |
| </dependency> |
| <dependency> |
| <groupId>javax.persistence</groupId> |
| <artifactId>persistence-api</artifactId> |
| <version>1.0.2</version> |
| </dependency> |
| <dependency> |
| <groupId>org.hibernate</groupId> |
| <artifactId>hibernate-annotations</artifactId> |
| <version>3.5.6-Final</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.geronimo.specs</groupId> |
| <artifactId>geronimo-jpa_2.0_spec</artifactId> |
| <version>1.1</version> |
| </dependency> |
| <dependency> |
| <groupId>dom4j</groupId> |
| <artifactId>dom4j</artifactId> |
| <version>1.6.1</version> |
| </dependency> |
| <!-- Dependencies of parent pom end --> |
| <dependency> |
| <groupId>com.att.ajsc</groupId> |
| <artifactId>sdk-java-camel-rest</artifactId> |
| <version>${sdk.camel.rest}</version> |
| </dependency> |
| <dependency> |
| <groupId>io.swagger</groupId> |
| <artifactId>swagger-core</artifactId> |
| <version>1.5.8</version> |
| </dependency> |
| <dependency> |
| <groupId>io.swagger</groupId> |
| <artifactId>swagger-annotations</artifactId> |
| <version>1.5.8</version> |
| </dependency> |
| |
| <!-- Camunda Core --> |
| <dependency> |
| <groupId>com.att.ajsc</groupId> |
| <artifactId>sdk-java-camunda-core</artifactId> |
| <version>${sdk.camunda.core}</version> |
| <exclusions> |
| <exclusion> |
| <groupId>mysql</groupId> |
| <artifactId>mysql-connector-java</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| <!-- Spring Mail --> |
| <dependency> |
| <groupId>org.springframework</groupId> |
| <artifactId>spring-context-support</artifactId> |
| </dependency> |
| <!-- CSI Logging --> |
| <dependency> |
| <groupId>com.att.ajsc</groupId> |
| <artifactId>sdk-java-common-interceptors</artifactId> |
| <version>${csi.logging}</version> |
| <exclusions> |
| <exclusion> |
| <groupId>org.eclipse.jetty.orbit</groupId> |
| <artifactId>javax.servlet</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>com.att.ajsc</groupId> |
| <artifactId>ajsc-core</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| <!-- CSI Logging End --> |
| <dependency> |
| <groupId>org.onap.policy.engine</groupId> |
| <artifactId>PolicyEngineAPI</artifactId> |
| <version>1.1.0</version> |
| <exclusions> |
| <exclusion> |
| <artifactId>log4j</artifactId> |
| <groupId>log4j</groupId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-log4j12</artifactId> |
| </exclusion> |
| <exclusion> |
| <artifactId>apache-log4j-extras</artifactId> |
| <groupId>log4j</groupId> |
| </exclusion> |
| <exclusion> |
| <artifactId>jackson-databind</artifactId> |
| <groupId>com.fasterxml.jackson.core</groupId> |
| </exclusion> |
| <exclusion> |
| <groupId>mysql</groupId> |
| <artifactId>mysql-connector-java</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| <dependency> |
| <groupId>org.onap.policy.common</groupId> |
| <artifactId>ONAP-Logging</artifactId> |
| <version>1.1.0</version> |
| <exclusions> |
| <exclusion> |
| <artifactId>log4j</artifactId> |
| <groupId>log4j</groupId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-log4j12</artifactId> |
| </exclusion> |
| <exclusion> |
| <artifactId>apache-log4j-extras</artifactId> |
| <groupId>log4j</groupId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| <dependency> |
| <groupId>org.onap.policy.engine</groupId> |
| <artifactId>ControlloopPolicy</artifactId> |
| <version>1.1.0-SNAPSHOT</version> |
| <exclusions> |
| <exclusion> |
| <artifactId>log4j</artifactId> |
| <groupId>log4j</groupId> |
| </exclusion> |
| <exclusion> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-log4j12</artifactId> |
| </exclusion> |
| <exclusion> |
| <artifactId>apache-log4j-extras</artifactId> |
| <groupId>log4j</groupId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| <dependency> |
| <groupId>com.fasterxml.jackson.core</groupId> |
| <artifactId>jackson-databind</artifactId> |
| <version>2.6.3</version> |
| </dependency> |
| <dependency> |
| <groupId>com.fasterxml.jackson.dataformat</groupId> |
| <artifactId>jackson-dataformat-yaml</artifactId> |
| <version>2.6.3</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.commons</groupId> |
| <artifactId>commons-csv</artifactId> |
| <version>1.3</version> |
| </dependency> |
| <dependency> |
| <groupId>org.jboss.resteasy</groupId> |
| <artifactId>resteasy-client</artifactId> |
| <version>3.0.8.Final</version> |
| </dependency> |
| <dependency> |
| <groupId>com.sun.faces</groupId> |
| <artifactId>jsf-api</artifactId> |
| <version>2.1.7</version> |
| </dependency> |
| <dependency> |
| <groupId>com.sun.faces</groupId> |
| <artifactId>jsf-impl</artifactId> |
| <version>2.1.7</version> |
| </dependency> |
| |
| <!-- Remove the MYSQL connector and replace it by Mariadb --> |
| <dependency> |
| <groupId>org.mariadb.jdbc</groupId> |
| <artifactId>mariadb-java-client</artifactId> |
| <version>2.1.1</version> |
| </dependency> |
| </dependencies> |
| |
| <build> |
| <finalName>clamp</finalName> |
| |
| <testResources> |
| <testResource> |
| <directory>src/test/resources</directory> |
| <excludes> |
| <exclude>**/*.jks</exclude> |
| </excludes> |
| <filtering>true</filtering> |
| </testResource> |
| <testResource> |
| <directory>src/test/resources/https</directory> |
| <includes> |
| <include>**.jks</include> |
| </includes> |
| <filtering>false</filtering> |
| <targetPath>https</targetPath> |
| </testResource> |
| </testResources> |
| <resources> |
| <resource> |
| <directory>src/main/resources</directory> |
| <filtering>true</filtering> |
| </resource> |
| <resource> |
| <directory>src/main/docker</directory> |
| <includes> |
| <include>**/*</include> |
| </includes> |
| <filtering>true</filtering> |
| </resource> |
| </resources> |
| |
| <plugins> |
| <plugin> |
| <groupId>org.codehaus.groovy.maven</groupId> |
| <artifactId>gmaven-plugin</artifactId> |
| <version>1.0</version> |
| <executions> |
| <execution> |
| <phase>validate</phase> |
| <goals> |
| <goal>execute</goal> |
| </goals> |
| <configuration> |
| <source>${project.basedir}/src/main/script/TagVersion.groovy</source> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-jar-plugin</artifactId> |
| <version>3.0.2</version> |
| <executions> |
| <execution> |
| <id>jar-with-only-classes</id> |
| <phase>package</phase> |
| <goals> |
| <goal>jar</goal> |
| </goals> |
| <configuration> |
| <classifier>classes</classifier> |
| <includes> |
| <include>org/**</include> |
| </includes> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>com.github.kongchen</groupId> |
| <artifactId>swagger-maven-plugin</artifactId> |
| <version>3.1.5</version> |
| <executions> |
| <execution> |
| <phase>compile</phase> |
| <goals> |
| <goal>generate</goal> |
| </goals> |
| <configuration> |
| <apiSources> |
| <apiSource> |
| <locations> |
| <location>org.onap.clamp.clds.service</location> |
| </locations> |
| <basePath>/</basePath> |
| <info> |
| <title>${project.artifactId} Service</title> |
| <version>${project.version}</version> |
| </info> |
| <swaggerDirectory>${project.build.directory}/classes/META-INF/resources/icd</swaggerDirectory> |
| </apiSource> |
| </apiSources> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>build-helper-maven-plugin</artifactId> |
| <version>3.0.0</version> |
| <executions> |
| <execution> |
| <goals> |
| <goal>attach-artifact</goal> |
| </goals> |
| <phase>package</phase> |
| <configuration> |
| <artifacts> |
| <artifact> |
| <file>${project.build.directory}/clamp-classes.jar</file> |
| <type>jar</type> |
| <classifier>classes</classifier> |
| </artifact> |
| </artifacts> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| |
| <plugin> |
| <groupId>org.springframework.boot</groupId> |
| <artifactId>spring-boot-maven-plugin</artifactId> |
| <version>1.5.3.RELEASE</version> |
| <executions> |
| <execution> |
| <goals> |
| <goal>repackage</goal> |
| </goals> |
| <phase>package</phase> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-gpg-plugin</artifactId> |
| <version>1.5</version> |
| <configuration> |
| <skip>true</skip> |
| </configuration> |
| <executions> |
| <execution> |
| <id>sign-artifacts</id> |
| <phase>verify</phase> |
| <goals> |
| <goal>sign</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.sonatype.plugins</groupId> |
| <artifactId>nexus-staging-maven-plugin</artifactId> |
| <version>1.6.7</version> |
| <extensions>true</extensions> |
| <configuration> |
| <nexusUrl>https://nexus.onap.org</nexusUrl> |
| <stagingProfileId>176c31dfe190a</stagingProfileId> |
| <serverId>ecomp-staging</serverId> |
| <skipNexusStagingDeployMojo>${skip.staging.artifacts}</skipNexusStagingDeployMojo> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>com.spotify</groupId> |
| <artifactId>docker-maven-plugin</artifactId> |
| <version>1.0.0</version> |
| <configuration> |
| <imageName>onap/clamp</imageName> |
| <dockerDirectory>src/main/docker</dockerDirectory> |
| <serverId>docker-hub</serverId> |
| <imageTags> |
| <imageTag>latest</imageTag> |
| <imageTag>${project.docker.latesttagtimestamp.version}</imageTag> |
| <imageTag>${project.docker.latesttag.version}</imageTag> |
| </imageTags> |
| <forceTags>true</forceTags> |
| <resources> |
| <resource> |
| <targetPath>/</targetPath> |
| <directory>${project.build.directory}</directory> |
| <include>${project.build.finalName}.jar</include> |
| </resource> |
| <resource> |
| <targetPath>/</targetPath> |
| <directory>${project.build.directory}</directory> |
| <include>etc/config/**</include> |
| </resource> |
| <resource> |
| <targetPath>/</targetPath> |
| <directory>${project.build.directory}</directory> |
| <include>etc/keystore/**</include> |
| </resource> |
| </resources> |
| </configuration> |
| <executions> |
| <execution> |
| <id>build-image</id> |
| <phase>package</phase> |
| <goals> |
| <goal>build</goal> |
| </goals> |
| <configuration> |
| <skipDockerBuild>${skip.docker.build}</skipDockerBuild> |
| <buildArgs> |
| <http_proxy>${env.HTTP_PROXY}</http_proxy> |
| <https_proxy>${env.HTTPS_PROXY}</https_proxy> |
| </buildArgs> |
| </configuration> |
| </execution> |
| |
| <execution> |
| <id>tag-image-latest-timestamp</id> |
| <phase>package</phase> |
| <goals> |
| <goal>tag</goal> |
| </goals> |
| <configuration> |
| <image>onap/clamp</image> |
| <newName>${docker.push.registry}/onap/clamp:${project.docker.latesttagtimestamp.version}</newName> |
| <skipDockerTag>${skip.docker.push}</skipDockerTag> |
| </configuration> |
| </execution> |
| <execution> |
| <id>push-image-latest-timestamp</id> |
| <phase>deploy</phase> |
| <goals> |
| <goal>push</goal> |
| </goals> |
| <configuration> |
| <imageName>${docker.push.registry}/onap/clamp:${project.docker.latesttagtimestamp.version}</imageName> |
| <skipDockerPush>${skip.docker.push}</skipDockerPush> |
| </configuration> |
| </execution> |
| <execution> |
| <id>tag-image-latest</id> |
| <phase>package</phase> |
| <goals> |
| <goal>tag</goal> |
| </goals> |
| <configuration> |
| <image>onap/clamp</image> |
| <newName>${docker.push.registry}/onap/clamp:${project.docker.latesttag.version}</newName> |
| <skipDockerTag>${skip.docker.push}</skipDockerTag> |
| </configuration> |
| </execution> |
| <execution> |
| <id>push-image-latest</id> |
| <phase>deploy</phase> |
| <goals> |
| <goal>push</goal> |
| </goals> |
| <configuration> |
| <imageName>${docker.push.registry}/onap/clamp:${project.docker.latesttag.version}</imageName> |
| <skipDockerPush>${skip.docker.push}</skipDockerPush> |
| </configuration> |
| </execution> |
| <execution> |
| <id>tag-image</id> |
| <phase>package</phase> |
| <goals> |
| <goal>tag</goal> |
| </goals> |
| <configuration> |
| <image>onap/clamp</image> |
| <newName>${docker.push.registry}/onap/clamp:latest</newName> |
| <skipDockerTag>${skip.docker.push}</skipDockerTag> |
| </configuration> |
| </execution> |
| <execution> |
| <id>push-image</id> |
| <phase>deploy</phase> |
| <goals> |
| <goal>push</goal> |
| </goals> |
| <configuration> |
| <imageName>${docker.push.registry}/onap/clamp:latest</imageName> |
| <skipDockerPush>${skip.docker.push}</skipDockerPush> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-surefire-plugin</artifactId> |
| <version>2.19.1</version> |
| <configuration> |
| <forkCount>1</forkCount> |
| <reuseForks>false</reuseForks> |
| </configuration> |
| </plugin> |
| |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-failsafe-plugin</artifactId> |
| <version>2.16</version> |
| |
| <executions> |
| <execution> |
| <id>integration-tests</id> |
| <goals> |
| <goal>integration-test</goal> |
| <goal>verify</goal> |
| </goals> |
| <configuration> |
| <forkCount>1</forkCount> |
| <reuseForks>false</reuseForks> |
| </configuration> |
| </execution> |
| </executions> |
| |
| </plugin> |
| <plugin> |
| <groupId>io.fabric8</groupId> |
| <artifactId>docker-maven-plugin</artifactId> |
| <version>0.16.5</version> |
| <configuration> |
| <verbose>true</verbose> |
| <apiVersion>1.23</apiVersion> |
| <images> |
| <image> |
| <name>mariadb:10.1.11</name> |
| <alias>mariadb</alias> |
| <run> |
| <env> |
| <MYSQL_ROOT_PASSWORD>strong_pitchou</MYSQL_ROOT_PASSWORD> |
| </env> |
| <hostname>mariadb</hostname> |
| <volumes> |
| <bind> |
| <volume>${project.basedir}/extra/sql/:/docker-entrypoint-initdb.d</volume> |
| <volume>${project.basedir}/extra/docker/mariadb/conf1:/etc/mysql/conf.d</volume> |
| </bind> |
| </volumes> |
| <wait> |
| <log>socket: '/var/run/mysqld/mysqld.sock' port: 3306 mariadb.org binary distribution</log> |
| <time>600000</time> |
| </wait> |
| <ports> |
| <port>${docker.mariadb.port.host}:3306</port> |
| </ports> |
| </run> |
| </image> |
| </images> |
| </configuration> |
| |
| <executions> |
| <execution> |
| <id>mariadb-start-for-it</id> |
| <phase>pre-integration-test</phase> |
| <goals> |
| <goal>start</goal> |
| </goals> |
| <configuration> |
| <skip>${skipITs}</skip> |
| </configuration> |
| </execution> |
| <execution> |
| <id>mariadb-stop-for-it</id> |
| <phase>post-integration-test</phase> |
| <goals> |
| <goal>stop</goal> |
| </goals> |
| <configuration> |
| <skip>${skipITs}</skip> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| |
| <plugin> |
| <groupId>org.jacoco</groupId> |
| <artifactId>jacoco-maven-plugin</artifactId> |
| <version>0.7.7.201606060606</version> |
| <configuration> |
| <dumpOnExit>true</dumpOnExit> |
| <includes> |
| <include>org.onap.clamp.*</include> |
| </includes> |
| </configuration> |
| <executions> |
| <execution> |
| <id>pre-unit-test</id> |
| <goals> |
| <goal>prepare-agent</goal> |
| </goals> |
| <configuration> |
| <destFile>${project.build.directory}/coverage-reports/jacoco.exec</destFile> |
| <!-- <append>true</append> --> |
| </configuration> |
| </execution> |
| <execution> |
| <id>pre-integration-test</id> |
| <phase>pre-integration-test</phase> |
| <goals> |
| <goal>prepare-agent</goal> |
| </goals> |
| <configuration> |
| <destFile>${project.build.directory}/coverage-reports/jacoco-it.exec</destFile> |
| <!-- <append>true</append> --> |
| </configuration> |
| </execution> |
| <execution> |
| <goals> |
| <goal>merge</goal> |
| </goals> |
| <phase>post-integration-test</phase> |
| <configuration> |
| <fileSets> |
| <fileSet implementation="org.apache.maven.shared.model.fileset.FileSet"> |
| <directory>${project.build.directory}/coverage-reports</directory> |
| <includes> |
| <include>*.exec</include> |
| </includes> |
| </fileSet> |
| </fileSets> |
| <destFile>${project.build.directory}/jacoco-dev.exec</destFile> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| |
| <!-- This plugin will be useful when we will have multi-modules project --> |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>versions-maven-plugin</artifactId> |
| <version>1.3.1</version> |
| </plugin> |
| </plugins> |
| </build> |
| <profiles> |
| <profile> |
| <id>docker</id> |
| <properties> |
| <skip.staging.artifacts>true</skip.staging.artifacts> |
| <skip.docker.build>false</skip.docker.build> |
| <skip.docker.tag>false</skip.docker.tag> |
| <skip.docker.push>false</skip.docker.push> |
| </properties> |
| </profile> |
| </profiles> |
| </project> |