Repository: nifi-minifi
Updated Branches:
  refs/heads/master 677b08f00 -> 632adb9a3


MINIFI-416 Adjusting Docker based integration tests to run with the conversion 
of images to use the Alpine based base image.

Signed-off-by: Joe Percivall <[email protected]>


Project: http://git-wip-us.apache.org/repos/asf/nifi-minifi/repo
Commit: http://git-wip-us.apache.org/repos/asf/nifi-minifi/commit/632adb9a
Tree: http://git-wip-us.apache.org/repos/asf/nifi-minifi/tree/632adb9a
Diff: http://git-wip-us.apache.org/repos/asf/nifi-minifi/diff/632adb9a

Branch: refs/heads/master
Commit: 632adb9a3de6d60bbd1cc9a0eb131a88258fa51d
Parents: 677b08f
Author: Aldrin Piri <[email protected]>
Authored: Wed Dec 13 23:38:31 2017 -0500
Committer: Joe Percivall <[email protected]>
Committed: Thu Dec 14 19:29:30 2017 -0500

----------------------------------------------------------------------
 .../minifi-c2-docker/dockerhub/DockerBuild.sh   |  2 +-
 .../minifi-c2-docker/dockerhub/DockerRun.sh     |  2 +-
 minifi-c2/minifi-c2-integration-tests/pom.xml   |  2 +-
 minifi-docker/dockerhub/DockerBuild.sh          |  2 +-
 minifi-docker/dockerhub/DockerRun.sh            |  2 +-
 minifi-integration-tests/pom.xml                |  4 ++-
 .../c2/HierarchicalC2IntegrationTest.java       |  6 ++--
 .../nifi/minifi/integration/util/LogUtil.java   |  1 +
 .../src/test/resources/Dockerfile.minifi.test   | 26 ++++++++++++++++
 .../src/test/resources/Dockerfile.minific2.test | 25 ++++++++++++++++
 .../docker-compose-c2-hierarchical.yml          | 31 +++++++++++++++-----
 .../resources/docker-compose-v1-standalone.yml  |  7 +++--
 12 files changed, 91 insertions(+), 19 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/632adb9a/minifi-c2/minifi-c2-docker/dockerhub/DockerBuild.sh
----------------------------------------------------------------------
diff --git a/minifi-c2/minifi-c2-docker/dockerhub/DockerBuild.sh 
b/minifi-c2/minifi-c2-docker/dockerhub/DockerBuild.sh
index 0ce7783..7a64a3d 100755
--- a/minifi-c2/minifi-c2-docker/dockerhub/DockerBuild.sh
+++ b/minifi-c2/minifi-c2-docker/dockerhub/DockerBuild.sh
@@ -13,7 +13,7 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-#!/bin/bash
+#!/bin/sh
 
 DOCKER_UID=1000
 if [ -n "$1" ]; then

http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/632adb9a/minifi-c2/minifi-c2-docker/dockerhub/DockerRun.sh
----------------------------------------------------------------------
diff --git a/minifi-c2/minifi-c2-docker/dockerhub/DockerRun.sh 
b/minifi-c2/minifi-c2-docker/dockerhub/DockerRun.sh
index 9436848..a491927 100755
--- a/minifi-c2/minifi-c2-docker/dockerhub/DockerRun.sh
+++ b/minifi-c2/minifi-c2-docker/dockerhub/DockerRun.sh
@@ -13,7 +13,7 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-#!/bin/bash
+#!/bin/sh
 DOCKER_IMAGE="$(egrep -v '(^#|^\s*$|^\s*\t*#)' DockerImage.txt)"
 echo "Running Docker Image: $DOCKER_IMAGE"
 docker run -it -d $DOCKER_IMAGE

http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/632adb9a/minifi-c2/minifi-c2-integration-tests/pom.xml
----------------------------------------------------------------------
diff --git a/minifi-c2/minifi-c2-integration-tests/pom.xml 
b/minifi-c2/minifi-c2-integration-tests/pom.xml
index 79ff8bf..bb9b3f5 100644
--- a/minifi-c2/minifi-c2-integration-tests/pom.xml
+++ b/minifi-c2/minifi-c2-integration-tests/pom.xml
@@ -56,7 +56,7 @@ limitations under the License.
         <dependency>
             <groupId>com.palantir.docker.compose</groupId>
             <artifactId>docker-compose-rule-junit4</artifactId>
-            <version>0.31.1</version>
+            <version>0.33.0</version>
             <scope>test</scope>
         </dependency>
     </dependencies>

http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/632adb9a/minifi-docker/dockerhub/DockerBuild.sh
----------------------------------------------------------------------
diff --git a/minifi-docker/dockerhub/DockerBuild.sh 
b/minifi-docker/dockerhub/DockerBuild.sh
index efadfa0..69d0459 100755
--- a/minifi-docker/dockerhub/DockerBuild.sh
+++ b/minifi-docker/dockerhub/DockerBuild.sh
@@ -13,7 +13,7 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-#!/bin/bash
+#!/bin/sh
 
 DOCKER_UID=1000
 if [ -n "$1" ]; then

http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/632adb9a/minifi-docker/dockerhub/DockerRun.sh
----------------------------------------------------------------------
diff --git a/minifi-docker/dockerhub/DockerRun.sh 
b/minifi-docker/dockerhub/DockerRun.sh
index 9436848..a491927 100755
--- a/minifi-docker/dockerhub/DockerRun.sh
+++ b/minifi-docker/dockerhub/DockerRun.sh
@@ -13,7 +13,7 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-#!/bin/bash
+#!/bin/sh
 DOCKER_IMAGE="$(egrep -v '(^#|^\s*$|^\s*\t*#)' DockerImage.txt)"
 echo "Running Docker Image: $DOCKER_IMAGE"
 docker run -it -d $DOCKER_IMAGE

http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/632adb9a/minifi-integration-tests/pom.xml
----------------------------------------------------------------------
diff --git a/minifi-integration-tests/pom.xml b/minifi-integration-tests/pom.xml
index 3a3be80..7867c29 100644
--- a/minifi-integration-tests/pom.xml
+++ b/minifi-integration-tests/pom.xml
@@ -40,7 +40,7 @@ limitations under the License.
         <dependency>
             <groupId>com.palantir.docker.compose</groupId>
             <artifactId>docker-compose-rule-junit4</artifactId>
-            <version>0.31.1</version>
+            <version>0.33.0</version>
             <scope>test</scope>
         </dependency>
         <dependency>
@@ -91,6 +91,7 @@ limitations under the License.
                 <filtering>true</filtering>
                 <includes>
                     <include>docker-compose-*.yml</include>
+                    <include>Dockerfile.*.test</include>
                 </includes>
             </testResource>
             <testResource>
@@ -98,6 +99,7 @@ limitations under the License.
                 <filtering>false</filtering>
                 <excludes>
                     <exclude>docker-compose-*.yml</exclude>
+                    <exclude>Dockerfile.*.test</exclude>
                 </excludes>
             </testResource>
         </testResources>

http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/632adb9a/minifi-integration-tests/src/test/java/org/apache/nifi/minifi/integration/c2/HierarchicalC2IntegrationTest.java
----------------------------------------------------------------------
diff --git 
a/minifi-integration-tests/src/test/java/org/apache/nifi/minifi/integration/c2/HierarchicalC2IntegrationTest.java
 
b/minifi-integration-tests/src/test/java/org/apache/nifi/minifi/integration/c2/HierarchicalC2IntegrationTest.java
index 58c936f..876b886 100644
--- 
a/minifi-integration-tests/src/test/java/org/apache/nifi/minifi/integration/c2/HierarchicalC2IntegrationTest.java
+++ 
b/minifi-integration-tests/src/test/java/org/apache/nifi/minifi/integration/c2/HierarchicalC2IntegrationTest.java
@@ -99,7 +99,7 @@ public class HierarchicalC2IntegrationTest {
         docker.after();
     }
 
-    @Test(timeout = 120_000)
+    @Test(timeout = 180_000)
     public void testMiNiFiEdge1() throws Exception {
         LogUtil.verifyLogEntries("c2/hierarchical/minifi-edge1/expected.json", 
docker.containers().container("minifi-edge1"));
         Path csvToJsonDir = 
resourceDirectory.resolve("standalone").resolve("v1").resolve("CsvToJson").resolve("yml");
@@ -107,7 +107,7 @@ public class HierarchicalC2IntegrationTest {
         LogUtil.verifyLogEntries("standalone/v1/CsvToJson/yml/expected.json", 
docker.containers().container("minifi-edge1"));
     }
 
-    @Test(timeout = 120_000)
+    @Test(timeout = 180_000)
     public void testMiNiFiEdge2() throws Exception {
         LogUtil.verifyLogEntries("c2/hierarchical/minifi-edge2/expected.json", 
docker.containers().container("minifi-edge2"));
         Path csvToJsonDir = 
resourceDirectory.resolve("standalone").resolve("v1").resolve("CsvToJson").resolve("yml");
@@ -115,7 +115,7 @@ public class HierarchicalC2IntegrationTest {
         LogUtil.verifyLogEntries("standalone/v1/CsvToJson/yml/expected.json", 
docker.containers().container("minifi-edge2"));
     }
 
-    @Test(timeout = 120_000)
+    @Test(timeout = 180_000)
     public void testMiNiFiEdge3() throws Exception {
         LogUtil.verifyLogEntries("c2/hierarchical/minifi-edge3/expected.json", 
docker.containers().container("minifi-edge3"));
         Path csvToJsonDir = 
resourceDirectory.resolve("standalone").resolve("v1").resolve("CsvToJson").resolve("yml");

http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/632adb9a/minifi-integration-tests/src/test/java/org/apache/nifi/minifi/integration/util/LogUtil.java
----------------------------------------------------------------------
diff --git 
a/minifi-integration-tests/src/test/java/org/apache/nifi/minifi/integration/util/LogUtil.java
 
b/minifi-integration-tests/src/test/java/org/apache/nifi/minifi/integration/util/LogUtil.java
index 3c60ecd..79fa07b 100644
--- 
a/minifi-integration-tests/src/test/java/org/apache/nifi/minifi/integration/util/LogUtil.java
+++ 
b/minifi-integration-tests/src/test/java/org/apache/nifi/minifi/integration/util/LogUtil.java
@@ -45,6 +45,7 @@ public class LogUtil {
             expectedLogEntries = expected.stream().map(map -> new 
ExpectedLogEntry(Pattern.compile((String)map.get("pattern")), (int) 
map.getOrDefault("occurrences", 1))).collect(Collectors.toList());
         }
         DockerPort dockerPort = container.port(8000);
+        logger.info("Connecting to external port {} for docker internal port 
of {}", new Object[]{dockerPort.getExternalPort(), 
dockerPort.getInternalPort()});
         URL url = new URL("http://"; + dockerPort.getIp() + ":" + 
dockerPort.getExternalPort());
         HttpURLConnection urlConnection = (HttpURLConnection) 
url.openConnection();
         try (InputStream inputStream = urlConnection.getInputStream();

http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/632adb9a/minifi-integration-tests/src/test/resources/Dockerfile.minifi.test
----------------------------------------------------------------------
diff --git a/minifi-integration-tests/src/test/resources/Dockerfile.minifi.test 
b/minifi-integration-tests/src/test/resources/Dockerfile.minifi.test
new file mode 100644
index 0000000..f869f86
--- /dev/null
+++ b/minifi-integration-tests/src/test/resources/Dockerfile.minifi.test
@@ -0,0 +1,26 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you 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.
+#
+
+FROM apacheminifi:${minifi.version}
+
+USER root
+
+RUN apk update \
+    && apk add python
+
+USER minifi
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/632adb9a/minifi-integration-tests/src/test/resources/Dockerfile.minific2.test
----------------------------------------------------------------------
diff --git 
a/minifi-integration-tests/src/test/resources/Dockerfile.minific2.test 
b/minifi-integration-tests/src/test/resources/Dockerfile.minific2.test
new file mode 100644
index 0000000..2a6cbd9
--- /dev/null
+++ b/minifi-integration-tests/src/test/resources/Dockerfile.minific2.test
@@ -0,0 +1,25 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you 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.
+
+FROM apacheminific2:${minifi.version}
+
+USER root
+
+RUN apk update \
+    && apk add python
+
+USER c2
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/632adb9a/minifi-integration-tests/src/test/resources/docker-compose-c2-hierarchical.yml
----------------------------------------------------------------------
diff --git 
a/minifi-integration-tests/src/test/resources/docker-compose-c2-hierarchical.yml
 
b/minifi-integration-tests/src/test/resources/docker-compose-c2-hierarchical.yml
index a07aa5d..4d3b3d1 100644
--- 
a/minifi-integration-tests/src/test/resources/docker-compose-c2-hierarchical.yml
+++ 
b/minifi-integration-tests/src/test/resources/docker-compose-c2-hierarchical.yml
@@ -17,7 +17,10 @@ version: "2"
 
 services:
   c2-authoritative:
-    image: apacheminific2:${minifi.c2.version}
+    build:
+      context: ./
+      dockerfile: Dockerfile.minific2.test
+    image: apacheminific2-test
     ports:
       - "10443"
     hostname: c2-authoritative
@@ -36,7 +39,10 @@ services:
       - edge1
 
   minifi-edge1:
-    image: apacheminifi:${minifi.version}
+    build:
+      context: ./
+      dockerfile: ./Dockerfile.minifi.test
+    image: apacheminifi-test
     ports:
       - "8000"
     volumes:
@@ -48,14 +54,17 @@ services:
       - 
./certificates-c2-hierarchical/minifi-edge1/keystore.jks:/opt/minifi/minifi-${minifi.version}/conf/keystore.jks
       - 
./certificates-c2-hierarchical/minifi-edge1/truststore.jks:/opt/minifi/minifi-${minifi.version}/conf/truststore.jks
     entrypoint:
-      - bash
+      - sh
       - -c
       - /opt/minifi/minifi-${minifi.version}/bin/minifi.sh start && python 
/home/minifi/tailFileServer.py --file 
/opt/minifi/minifi-${minifi.version}/logs/minifi-app.log --file 
/opt/minifi/minifi-${minifi.version}/logs/minifi-bootstrap.log
     networks:
       - edge1
 
   c2-edge2:
-    image: apacheminific2:${minifi.c2.version}
+    build:
+      context: ./
+      dockerfile: Dockerfile.minific2.test
+    image: apacheminific2-test
     ports:
       - "10080"
     hostname: c2-edge2
@@ -70,7 +79,10 @@ services:
       - edge2
 
   minifi-edge2:
-    image: apacheminifi:${minifi.version}
+    build:
+      context: ./
+      dockerfile: Dockerfile.minifi.test
+    image: apacheminifi-test
     ports:
       - "8000"
     volumes:
@@ -79,7 +91,7 @@ services:
       - 
./c2/hierarchical/minifi-edge2/bootstrap.conf:/opt/minifi/minifi-${minifi.version}/conf/bootstrap.conf
       - ./logback.xml:/opt/minifi/minifi-${minifi.version}/conf/logback.xml
     entrypoint:
-      - bash
+      - sh
       - -c
       - /opt/minifi/minifi-${minifi.version}/bin/minifi.sh start && python 
/home/minifi/tailFileServer.py --file 
/opt/minifi/minifi-${minifi.version}/logs/minifi-app.log --file 
/opt/minifi/minifi-${minifi.version}/logs/minifi-bootstrap.log
     networks:
@@ -97,7 +109,10 @@ services:
       - edge3
 
   minifi-edge3:
-    image: apacheminifi:${minifi.version}
+    build:
+      context: ./
+      dockerfile: Dockerfile.minifi.test
+    image: apacheminifi-test
     ports:
       - "8000"
     volumes:
@@ -109,7 +124,7 @@ services:
       - 
./certificates-c2-hierarchical/minifi-edge3/keystore.jks:/opt/minifi/minifi-${minifi.version}/conf/keystore.jks
       - 
./certificates-c2-hierarchical/minifi-edge3/truststore.jks:/opt/minifi/minifi-${minifi.version}/conf/truststore.jks
     entrypoint:
-      - bash
+      - sh
       - -c
       - /opt/minifi/minifi-${minifi.version}/bin/minifi.sh start && python 
/home/minifi/tailFileServer.py --file 
/opt/minifi/minifi-${minifi.version}/logs/minifi-app.log --file 
/opt/minifi/minifi-${minifi.version}/logs/minifi-bootstrap.log
     networks:

http://git-wip-us.apache.org/repos/asf/nifi-minifi/blob/632adb9a/minifi-integration-tests/src/test/resources/docker-compose-v1-standalone.yml
----------------------------------------------------------------------
diff --git 
a/minifi-integration-tests/src/test/resources/docker-compose-v1-standalone.yml 
b/minifi-integration-tests/src/test/resources/docker-compose-v1-standalone.yml
index 1cd18ae..4ede7d9 100644
--- 
a/minifi-integration-tests/src/test/resources/docker-compose-v1-standalone.yml
+++ 
b/minifi-integration-tests/src/test/resources/docker-compose-v1-standalone.yml
@@ -17,7 +17,10 @@ version: "2"
 
 services:
   minifi:
-    image: apacheminifi:${minifi.version}
+    build:
+      context: ./
+      dockerfile: Dockerfile.minifi.test
+    image: apacheminifi-test
     ports:
       - "8000"
     hostname: minifi
@@ -28,6 +31,6 @@ services:
       - ./logback.xml:/opt/minifi/minifi-${minifi.version}/conf/logback.xml
       - 
REPLACED_WITH_CONFIG_FILE:/opt/minifi/minifi-${minifi.version}/conf/config.yml
     entrypoint:
-      - bash
+      - sh
       - -c
       - /opt/minifi/minifi-${minifi.version}/bin/minifi.sh start && python 
/home/minifi/tailFileServer.py --file 
/opt/minifi/minifi-${minifi.version}/logs/minifi-app.log
\ No newline at end of file

Reply via email to