<?xml version="1.0" encoding="UTF-8"?> <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> <parent> <groupId>org.onap.ccsdk.distribution</groupId> <artifactId>distribution-odl-phosphorus</artifactId> <version>1.4.1-SNAPSHOT</version> </parent> <artifactId>distribution-odl-phosphorus-docker</artifactId> <packaging>pom</packaging> <name>ccsdk-distribution :: opendaylight :: phosphorus :: docker</name> <description>Creates OpenDaylight container</description> <organization> <name>ONAP</name> </organization> <properties> <image.name>onap/ccsdk-odl-phosphorus-alpine-image</image.name> <odl.karaf.artifactId>onap-karaf</odl.karaf.artifactId> <odl.shiro.version>0.14.7</odl.shiro.version> <odl.netconf.version>2.0.11</odl.netconf.version> <odl.ops4j.version>7.3.19</odl.ops4j.version> <odl.pax.logging.version>2.0.10</odl.pax.logging.version> <patch.pax.logging.version>2.0.14</patch.pax.logging.version> <odl.karaf.framework.version>4.3.3</odl.karaf.framework.version> </properties> <build> <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>${basedir}/../../../src/main/scripts/TagVersion.groovy</source> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-dependency-plugin</artifactId> <version>3.0.0</version> <executions> <execution> <id>get-odl-distribution</id> <phase>validate</phase> <goals> <goal>copy</goal> </goals> <configuration> <artifactItems> <artifactItem> <groupId>org.opendaylight.integration</groupId> <artifactId>${odl.karaf.artifactId}</artifactId> <version>${ccsdk.opendaylight.version}</version> <type>tar.gz</type> <overWrite>true</overWrite> <outputDirectory>${basedir}/target/docker-stage</outputDirectory> </artifactItem> </artifactItems> <overWriteReleases>false</overWriteReleases> <overWriteSnapshots>true</overWriteSnapshots> <overWriteIfNewer>true</overWriteIfNewer> </configuration> </execution> <execution> <id>copy-with-alternalte-repo-2</id> <phase>generate-sources</phase> <goals> <goal>copy</goal> </goals> <configuration> <artifactItems> <artifactItem> <groupId>com.highstreet-technologies.aaa</groupId> <artifactId>aaa-authn-api</artifactId> <version>${odl.shiro.version}</version> <outputDirectory>${project.build.directory}/docker-stage/system/org/opendaylight/aaa/aaa-authn-api/${odl.shiro.version}</outputDirectory> <destFileName>aaa-authn-api-${odl.shiro.version}.jar</destFileName> <excludes>*</excludes> </artifactItem> <artifactItem> <groupId>com.highstreet-technologies.ops4j.pax.web</groupId> <artifactId>pax-web-jetty</artifactId> <version>${odl.ops4j.version}</version> <outputDirectory>${project.build.directory}/docker-stage/system/org/ops4j/pax/web/pax-web-jetty/${odl.ops4j.version}</outputDirectory> <destFileName>pax-web-jetty-${odl.ops4j.version}.jar</destFileName> <excludes>*</excludes> </artifactItem> <artifactItem> <groupId>com.highstreet-technologies.netconf</groupId> <artifactId>sal-netconf-connector</artifactId> <version>${odl.netconf.version}</version> <outputDirectory>${project.build.directory}/docker-stage/system/org/opendaylight/netconf/sal-netconf-connector/${odl.netconf.version}</outputDirectory> <destFileName>sal-netconf-connector-${odl.netconf.version}.jar</destFileName> <excludes>*</excludes> </artifactItem> <artifactItem> <groupId>org.ops4j.pax.logging</groupId> <artifactId>pax-logging-log4j2</artifactId> <version>${patch.pax.logging.version}</version> <outputDirectory>${project.build.directory}/docker-stage/system/org/ops4j/pax/logging/pax-logging-log4j2/${patch.pax.logging.version}</outputDirectory> <destFileName>pax-logging-log4j2-${patch.pax.logging.version}.jar</destFileName> <excludes>*</excludes> </artifactItem> <artifactItem> <groupId>org.ops4j.pax.logging</groupId> <artifactId>pax-logging-logback</artifactId> <version>${patch.pax.logging.version}</version> <outputDirectory>${project.build.directory}/docker-stage/system/org/ops4j/pax/logging/pax-logging-logback/${patch.pax.logging.version}</outputDirectory> <destFileName>pax-logging-logback-${patch.pax.logging.version}.jar</destFileName> <excludes>*</excludes> </artifactItem> <artifactItem> <groupId>org.ops4j.pax.logging</groupId> <artifactId>pax-logging-api</artifactId> <version>${patch.pax.logging.version}</version> <outputDirectory>${project.build.directory}/docker-stage/system/org/ops4j/pax/logging/pax-logging-api/${patch.pax.logging.version}</outputDirectory> <destFileName>pax-logging-api-${patch.pax.logging.version}.jar</destFileName> <excludes>*</excludes> </artifactItem> </artifactItems> <overWriteReleases>false</overWriteReleases> <overWriteSnapshots>true</overWriteSnapshots> <overWriteIfNewer>true</overWriteIfNewer> </configuration> </execution> </executions> </plugin> <plugin> <artifactId>maven-resources-plugin</artifactId> <version>2.6</version> <executions> <execution> <id>copy-dockerfile</id> <goals> <goal>copy-resources</goal> </goals><!-- here the phase you need --> <phase>validate</phase> <configuration> <outputDirectory>${basedir}/target/docker-stage</outputDirectory> <resources> <resource> <directory>src/main/docker</directory> <includes> <include>Dockerfile</include> </includes> <filtering>true</filtering> </resource> <resource> <directory>src/main/odlscripts</directory> <includes> <include>*</include> </includes> <filtering>false</filtering> </resource> </resources> </configuration> </execution> <execution> <id>copy-karaf-framework-features</id> <goals> <goal>copy-resources</goal> </goals><!-- here the phase you need --> <phase>validate</phase> <configuration> <outputDirectory>${basedir}/target/docker-stage</outputDirectory> <resources> <resource> <directory>src/main/resources</directory> <includes> <include>framework-${odl.karaf.framework.version}-features.xml</include> <include>startup.properties</include> </includes> <filtering>true</filtering> </resource> </resources> </configuration> </execution> </executions> </plugin> </plugins> </build> <profiles> <profile> <id>docker</id> <build> <plugins> <plugin> <groupId>io.fabric8</groupId> <artifactId>docker-maven-plugin</artifactId> <version>0.34.0</version> <inherited>false</inherited> <configuration> <images> <image> <name>${image.name}</name> <build> <cleanup>try</cleanup> <noCache>true</noCache> <contextDir>${basedir}/target/docker-stage</contextDir> <dockerFile>Dockerfile</dockerFile> <tags> <tag>${project.docker.latestminortag.version}</tag> <tag>${project.docker.latestfulltag.version}</tag> <tag>${project.docker.latesttagtimestamp.version}</tag> </tags> </build> </image> </images> <verbose>${docker.verbose}</verbose> <skipPush>${docker.skip.push}</skipPush> </configuration> <executions> <execution> <id>build-push-images</id> <goals> <goal>build</goal> <goal>push</goal> </goals> </execution> </executions> </plugin> </plugins> </build> </profile> </profiles> </project>