<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> <artifactId>sdc-os-chef</artifactId> <packaging>pom</packaging> <parent> <groupId>org.openecomp.sdc</groupId> <artifactId>sdc-main</artifactId> <version>1.2.0-SNAPSHOT</version> </parent> <properties> <docker.tag>${project.version}-${maven.build.timestamp}</docker.tag> <docker.latest.tag>${project.version}-latest</docker.latest.tag> <sonar.skip>true</sonar.skip> </properties> <build> <plugins> <plugin> <artifactId>maven-clean-plugin</artifactId> <version>3.0.0</version> <executions> <execution> <id>clean.tosca.chef.os.folder</id> <phase>clean</phase> <goals> <goal>clean</goal> </goals> <configuration> <filesets> <!-- static configuration files --> <fileset> <directory>${project.parent.basedir}/sdc-os-chef/sdc-backend/chef-repo/cookbooks/sdc-catalog-be/files/default</directory> <followSymlinks>false</followSymlinks> <includes> <include>Artifact-Generator.properties</include> <include>error-configuration.yaml</include> <include>ecomp-error-configuration.yaml</include> <include>logback.xml</include> </includes> </fileset> <!-- BE WAR's --> <fileset> <directory>${project.parent.basedir}/sdc-os-chef/sdc-backend</directory> <followSymlinks>false</followSymlinks> <includes> <include>*.war</include> </includes> </fileset> <!-- FE WAR's --> <fileset> <directory>${project.parent.basedir}/sdc-os-chef/sdc-frontend/</directory> <followSymlinks>false</followSymlinks> <includes> <include>*.war</include> </includes> </fileset> <fileset> <directory>${project.basedir}/sdc-backend/chef-repo/cookbooks/sdc-normatives/files/default</directory> <followSymlinks>false</followSymlinks> <includes> <include>normatives.tar.gz</include> </includes> </fileset> <fileset> <directory>${project.basedir}/sdc-cassandra/chef-repo/cookbooks/cassandra-actions/attributes/</directory> <followSymlinks>false</followSymlinks> <includes> <include>**/default.rb</include> </includes> </fileset> <fileset> <directory>${project.basedir}/sdc-cassandra/chef-repo/cookbooks/cassandra-actions/files/default/tools</directory> <followSymlinks>false</followSymlinks> </fileset> <!-- Sanity jar --> <fileset> <directory>${project.basedir}/sdc-sanity</directory> <followSymlinks>false</followSymlinks> <includes> <include>*.jar</include> </includes> </fileset> <!-- Sanity test suites --> <fileset> <directory>${project.basedir}/sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/testSuites</directory> <followSymlinks>false</followSymlinks> </fileset> </filesets> </configuration> </execution> </executions> </plugin> <plugin> <groupId>ru.yaal.maven</groupId> <artifactId>write-text-files-maven-plugin</artifactId> <version>1.1</version> <configuration> <charset>UTF-8</charset> <files> <file> <path> ${project.basedir}\sdc-cassandra\chef-repo\cookbooks\cassandra-actions\attributes\default.rb </path> <lines> <line>normal['version'] ="${parsedVersion.majorVersion}.${parsedVersion.minorVersion}.${parsedVersion.incrementalVersion}"</line> </lines> </file> </files> </configuration> <executions> <execution> <id>write-text-files</id> <phase>prepare-package</phase> <goals> <goal>write-text-files</goal> </goals> </execution> </executions> </plugin> </plugins> </build> <profiles> <profile> <id>docker-staging</id> <properties> <docker.tag>${project.version}-STAGING-${maven.build.timestamp}</docker.tag> <docker.latest.tag>${project.version}-STAGING-latest</docker.latest.tag> </properties> </profile> <profile> <id>docker</id> <activation> <activeByDefault>false</activeByDefault> </activation> <build> <plugins> <plugin> <artifactId>maven-resources-plugin</artifactId> <version>3.0.2</version> <executions> <execution> <id>copy-resources-apidocs</id> <phase>validate</phase> <goals> <goal>copy-resources</goal> </goals> <configuration> <outputDirectory>${basedir}/sdc-backend</outputDirectory> <resources> <resource> <directory> ${project.parent.basedir}/openecomp-be/tools/swagger-ui/api-docs </directory> <includes> <include>api-docs.war</include> </includes> </resource> </resources> </configuration> </execution> <execution> <id>copy-static-configuration-files</id> <phase>validate</phase> <goals> <goal>copy-resources</goal> </goals> <configuration> <outputDirectory>${project.parent.basedir}/sdc-os-chef/sdc-backend/chef-repo/cookbooks/sdc-catalog-be/files/default</outputDirectory> <resources> <resource> <directory>${project.parent.basedir}/catalog-be/src/main/resources/config</directory> <includes> <include>Artifact-Generator.properties</include> <include>error-configuration.yaml</include> <include>ecomp-error-configuration.yaml</include> <include>logback.xml</include> </includes> </resource> </resources> </configuration> </execution> <execution> <id>copy-resources-be</id> <phase>validate</phase> <goals> <goal>copy-resources</goal> </goals> <configuration> <outputDirectory>${basedir}/sdc-backend</outputDirectory> <resources> <resource> <directory>${project.parent.basedir}/catalog-be/target</directory> <includes> <include>catalog-be-${project.version}.war</include> </includes> </resource> <resource> <directory> ${project.parent.basedir}/openecomp-be/api/openecomp-sdc-rest-webapp/onboarding-rest-war/target </directory> <includes> <include>onboarding-be-${project.version}.war</include> </includes> </resource> </resources> </configuration> </execution> <execution> <id>copy-resources-fe</id> <phase>validate</phase> <goals> <goal>copy-resources</goal> </goals> <configuration> <outputDirectory>${basedir}/sdc-frontend</outputDirectory> <resources> <resource> <directory>${project.parent.basedir}/catalog-fe/target</directory> <includes> <include>catalog-fe-${project.version}.war</include> </includes> </resource> <resource> <directory>${project.parent.basedir}/openecomp-ui/target</directory> <includes> <include>onboarding-fe-${project.version}.war</include> </includes> </resource> </resources> </configuration> </execution> <execution> <id>copy-tests-suites</id> <phase>validate</phase> <goals> <goal>copy-resources</goal> </goals> <configuration> <outputDirectory>sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/testSuites</outputDirectory> <resources> <resource> <directory>${project.parent.basedir}/test-apis-ci/src/main/resources/ci/testSuites</directory> <includes> <include>*</include> </includes> </resource> </resources> </configuration> </execution> <execution> <id>copy-resources-test-apis-ci</id> <phase>validate</phase> <goals> <goal>copy-resources</goal> </goals> <configuration> <outputDirectory>${basedir}/sdc-sanity</outputDirectory> <resources> <resource> <directory>${project.parent.basedir}/test-apis-ci/target</directory> <includes> <include>test-apis-ci-${project.version}-jar-with-dependencies.jar</include> </includes> </resource> </resources> </configuration> </execution> <execution> <id>copy-dox-files</id> <phase>validate</phase> <goals> <goal>copy-resources</goal> </goals> <configuration> <outputDirectory>${basedir}/sdc-cassandra/chef-repo/cookbooks/cassandra-actions/files/default</outputDirectory> <resources> <resource> <directory>${project.parent.basedir}/openecomp-be</directory> <includes> <include>tools/build/**</include> </includes> </resource> <resource> <directory>${project.parent.basedir}/openecomp-be</directory> <includes> <include>tools/install/**</include> </includes> </resource> </resources> </configuration> </execution> <execution> <id>copy-normatives</id> <phase>validate</phase> <goals> <goal>copy-resources</goal> </goals> <configuration> <outputDirectory>${project.parent.basedir}/sdc-os-chef/sdc-backend/chef-repo/cookbooks/sdc-normatives/files/default</outputDirectory> <resources> <resource> <directory>${project.parent.basedir}/catalog-be/target</directory> <includes> <include>normatives.tar.gz</include> </includes> </resource> </resources> </configuration> </execution> <execution> <id>copy-sdctool</id> <phase>validate</phase> <goals> <goal>copy-resources</goal> </goals> <configuration> <outputDirectory>${project.parent.basedir}/sdc-os-chef/sdc-cassandra/chef-repo/cookbooks/cassandra-actions/files/default</outputDirectory> <resources> <resource> <directory>${project.parent.basedir}/asdctool/target</directory> <includes> <include>sdctool.tar</include> </includes> </resource> </resources> </configuration> </execution> </executions> </plugin> <plugin> <groupId>io.fabric8</groupId> <artifactId>docker-maven-plugin</artifactId> <version>0.23.0</version> <configuration> <verbose>true</verbose> <apiVersion>1.23</apiVersion> <registry>nexus3.onap.org:10001</registry> <authConfig> <pull> <username>docker</username> <password>docker</password> </pull> </authConfig> <images> <!-- Build backend image --> <image> <name>onap/sdc-backend</name> <alias>sdc-backend</alias> <build> <cleanup>try</cleanup> <dockerFileDir>${project.basedir}/sdc-backend</dockerFileDir> <tags> <tag>${docker.tag}</tag> <tag>${docker.latest.tag}</tag> <tag>${parsedVersion.majorVersion}.${parsedVersion.minorVersion}-STAGING-latest</tag> </tags> </build> </image> <!-- Build frontend image --> <image> <name>onap/sdc-frontend</name> <alias>sdc-frontend</alias> <build> <cleanup>try</cleanup> <dockerFileDir>${project.basedir}/sdc-frontend</dockerFileDir> <tags> <tag>${docker.tag}</tag> <tag>${docker.latest.tag}</tag> <tag>${parsedVersion.majorVersion}.${parsedVersion.minorVersion}-STAGING-latest</tag> </tags> </build> </image> <!-- Build elastic search image --> <image> <name>onap/sdc-elasticsearch</name> <alias>sdc-elasticsearch</alias> <build> <cleanup>try</cleanup> <dockerFileDir>${project.basedir}/sdc-elasticsearch</dockerFileDir> <tags> <tag>${docker.tag}</tag> <tag>${docker.latest.tag}</tag> <tag>${parsedVersion.majorVersion}.${parsedVersion.minorVersion}-STAGING-latest</tag> </tags> </build> </image> <!-- Build kibana image --> <image> <name>onap/sdc-kibana</name> <alias>sdc-kibana</alias> <build> <cleanup>try</cleanup> <dockerFileDir>${project.basedir}/sdc-kibana</dockerFileDir> <tags> <tag>${docker.tag}</tag> <tag>${docker.latest.tag}</tag> <tag>${parsedVersion.majorVersion}.${parsedVersion.minorVersion}-STAGING-latest</tag> </tags> </build> </image> <!-- Build cassandra image --> <image> <name>onap/sdc-cassandra</name> <alias>sdc-cassandra</alias> <build> <cleanup>try</cleanup> <dockerFileDir>${project.basedir}/sdc-cassandra</dockerFileDir> <tags> <tag>${docker.tag}</tag> <tag>${docker.latest.tag}</tag> <tag>${parsedVersion.majorVersion}.${parsedVersion.minorVersion}-STAGING-latest</tag> </tags> </build> </image> <!-- Build sanity image --> <image> <name>onap/sdc-sanity</name> <alias>sdc-sanity</alias> <build> <cleanup>try</cleanup> <dockerFileDir>${project.basedir}/sdc-sanity</dockerFileDir> <tags> <tag>${docker.tag}</tag> <tag>${docker.latest.tag}</tag> <tag>${parsedVersion.majorVersion}.${parsedVersion.minorVersion}-STAGING-latest</tag> </tags> </build> </image> </images> </configuration> <executions> <execution> <id>clean-images</id> <phase>pre-clean</phase> <goals> <goal>remove</goal> </goals> <configuration> <removeAll>true</removeAll> <image>onap/sdc-backend,onap/sdc-frontend,onap/sdc-elasticsearch,onap/sdc-kibana,onap/sdc-cassandra,onap/sdc-sanity</image> </configuration> </execution> <execution> <id>generate-images</id> <phase>package</phase> <goals> <goal>build</goal> </goals> </execution> <execution> <id>push-images</id> <phase>deploy</phase> <goals> <goal>push</goal> </goals> <configuration> <image> onap/sdc-backend,onap/sdc-frontend,onap/sdc-elasticsearch,onap/sdc-kibana,onap/sdc-cassandra,onap/sdc-sanity</image> </configuration> </execution> </executions> </plugin> </plugins> </build> </profile> </profiles> </project>