From e449011492ae89bb64e656fa16855a20da2e9590 Mon Sep 17 00:00:00 2001
From: maximthomas <maxim.thomas@gmail.com>
Date: Wed, 28 Feb 2018 11:31:03 +0000
Subject: [PATCH] Set current version in Docker automatically

---
 opendj-packages/opendj-docker/pom.xml    |   69 ++++++++++++++++++++++++++++++++++
 opendj-packages/pom.xml                  |    1 
 .travis.yml                              |    3 +
 opendj-packages/opendj-docker/Dockerfile |    6 +-
 4 files changed, 75 insertions(+), 4 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index f39776d..d9345c6 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -40,7 +40,8 @@
       - echo 'after_deploy'
       - echo 'build and push Docker'
       - docker login -u "$DOCKER_USERNAME" -p "$DOCKER_PASSWORD"
-      - docker build ./opendj-packages/opendj-docker/ -t $DOCKER_USERNAME/opendj
+      - docker build ./opendj-packages/opendj-docker/target -t $DOCKER_USERNAME/opendj -t $DOCKER_USERNAME/opendj:$git_version
+      - docker push $DOCKER_USERNAME/opendj:$git_version
       - docker push $DOCKER_USERNAME/opendj
   - os: linux
     jdk: oraclejdk8
diff --git a/opendj-packages/opendj-docker/Dockerfile b/opendj-packages/opendj-docker/Dockerfile
index 3c517f1..2c31933 100644
--- a/opendj-packages/opendj-docker/Dockerfile
+++ b/opendj-packages/opendj-docker/Dockerfile
@@ -1,6 +1,6 @@
 FROM java:8
 
-MAINTAINER Open Identity Platform <open-identity-platform@googlegroups.com>
+MAINTAINER Open Identity Platform Community <open-identity-platform-opendj@googlegroups.com>
 
 ENV PORT 1389
 
@@ -12,13 +12,13 @@
 
 ENV ROOT_PASSWORD password
 
-ENV git_version 4.1.1
+ENV VERSION @project_version@
 
 WORKDIR /opt
 
 RUN apt-get install -y wget unzip
 
-RUN wget --quiet https://github.com/OpenIdentityPlatform/OpenDJ/releases/download/$git_version/opendj-$git_version.zip && unzip opendj-$git_version.zip && rm -r opendj-$git_version.zip
+RUN wget --quiet https://github.com/OpenIdentityPlatform/OpenDJ/releases/download/$VERSION/opendj-$VERSION.zip && unzip opendj-$VERSION.zip && rm -r opendj-$VERSION.zip
 
 RUN /opt/opendj/setup --cli -p $PORT --ldapsPort $LDAPS_PORT --enableStartTLS --generateSelfSignedCertificate --baseDN "$BASE_DN" -h localhost --rootUserDN "$ROOT_USER_DN" --rootUserPassword $ROOT_PASSWORD --acceptLicense --no-prompt --doNotStart
 
diff --git a/opendj-packages/opendj-docker/pom.xml b/opendj-packages/opendj-docker/pom.xml
new file mode 100644
index 0000000..e8bd1c4
--- /dev/null
+++ b/opendj-packages/opendj-docker/pom.xml
@@ -0,0 +1,69 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  The contents of this file are subject to the terms of the Common Development and
+  Distribution License (the License). You may not use this file except in compliance with the
+  License.
+
+  You can obtain a copy of the License at legal/CDDLv1.0.txt. See the License for the
+  specific language governing permission and limitations under the License.
+
+  When distributing Covered Software, include this CDDL Header Notice in each file and include
+  the License file at legal/CDDLv1.0.txt. If applicable, add the following below the CDDL
+  Header, with the fields enclosed by brackets [] replaced by your own identifying
+  information: "Portions Copyright [year] [name of copyright owner]".
+
+  Copyright 2015-2016 ForgeRock AS.
+-->
+<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>
+
+    <packaging>pom</packaging>
+
+    <parent>
+        <groupId>org.forgerock.opendj</groupId>
+        <artifactId>opendj-packages</artifactId>
+        <version>4.1.3-SNAPSHOT</version>
+    </parent>
+
+    <profiles>
+        <profile>
+            <id>packages</id>
+            <activation><activeByDefault>true</activeByDefault></activation>
+        </profile>
+    </profiles>
+
+    <artifactId>opendj-docker</artifactId>
+    <name>OpenDJ Docker Packages Parent</name>
+
+    <description>
+        This module contains configuration and generic plugin calls to generate Docker file for OpenDJ.
+    </description>
+
+    <build>
+            <plugins>
+                <plugin>
+				    <artifactId>maven-antrun-plugin</artifactId>
+				    <executions>
+				      <execution>
+				        <phase>prepare-package</phase>
+				        <configuration>
+				          <tasks>
+				          	<copy todir="${project.build.directory}">
+    							<fileset dir="${basedir}">
+        							<include name="Dockerfile"/>  <!--NOTE DIFFERENCE HERE-->
+    							</fileset>
+							</copy>
+				            <replace token= "@project_version@" value="${project.version}" dir="target/">                                 
+				              <include name="Dockerfile"/>
+				            </replace>
+				          </tasks>
+				        </configuration>
+				        <goals>
+				          <goal>run</goal>
+				        </goals>
+				      </execution>
+				    </executions>
+				  </plugin>
+            </plugins>
+    </build>
+</project>
diff --git a/opendj-packages/pom.xml b/opendj-packages/pom.xml
index a25056c..fb5a25a 100644
--- a/opendj-packages/pom.xml
+++ b/opendj-packages/pom.xml
@@ -52,6 +52,7 @@
                 <module>opendj-rpm</module>
                 <module>opendj-svr4</module>
                 <module>opendj-msi</module>
+                <module>opendj-docker</module>
             </modules>
         </profile>
     </profiles>

--
Gitblit v1.10.0