Refactor arch-specific Dockerfile patching 03/46803/2
authorDelia Popescu <delia.popescu@enea.com>
Tue, 7 Nov 2017 15:37:38 +0000 (17:37 +0200)
committerDelia Popescu <delia.popescu@enea.com>
Tue, 7 Nov 2017 16:09:40 +0000 (18:09 +0200)
CHANGE: Obsolete "Dockerfile.aarch64" support,
only "Dockerfile.$(uname -m).patch" mechanism is to be used
from now on.

It is correlated with https://gerrit.opnfv.org/gerrit/#/c/46797/

Change-Id: If765550681d283dea7e3522f21080ea2c5e2fda4
Signed-off-by: Delia Popescu <delia.popescu@enea.com>
jjb/releng/opnfv-docker-arm.yml
jjb/releng/opnfv-docker.sh

index b488592..3486a07 100644 (file)
@@ -40,7 +40,7 @@
     other-receivers: &other-receivers
       receivers: ''
 
-    dockerfile: "Dockerfile.aarch64"
+    dockerfile: "Dockerfile"
     dockerdir: "docker"
     docker_repo_name: "opnfv/{project}_aarch64"
     arch_tag: ""
@@ -59,7 +59,6 @@
       - 'storperf-master':
           project: 'storperf'
           dockerdir: 'docker/storperf-master'
-          dockerfile: 'Dockerfile'
           docker_repo_name: 'opnfv/storperf-master'
           arch_tag: 'aarch64'
           <<: *master
@@ -67,7 +66,6 @@
       - 'storperf-graphite':
           project: 'storperf'
           dockerdir: 'docker/storperf-graphite'
-          dockerfile: 'Dockerfile'
           docker_repo_name: 'opnfv/storperf-graphite'
           arch_tag: 'aarch64'
           <<: *master
@@ -75,7 +73,6 @@
       - 'storperf-httpfrontend':
           project: 'storperf'
           dockerdir: 'docker/storperf-httpfrontend'
-          dockerfile: 'Dockerfile'
           docker_repo_name: 'opnfv/storperf-httpfrontend'
           arch_tag: 'aarch64'
           <<: *master
@@ -83,7 +80,6 @@
       - 'storperf-reporting':
           project: 'storperf'
           dockerdir: 'docker/storperf-reporting'
-          dockerfile: 'Dockerfile'
           docker_repo_name: 'opnfv/storperf-reporting'
           arch_tag: 'aarch64'
           <<: *master
@@ -91,7 +87,6 @@
       - 'storperf-swaggerui':
           project: 'storperf'
           dockerdir: 'docker/storperf-swaggerui'
-          dockerfile: 'Dockerfile'
           docker_repo_name: 'opnfv/storperf-swaggerui'
           arch_tag: 'aarch64'
           <<: *master
       - 'storperf-master':
           project: 'storperf'
           dockerdir: 'docker/storperf-master'
-          dockerfile: 'Dockerfile'
           docker_repo_name: 'opnfv/storperf-master'
           arch_tag: 'aarch64'
           <<: *euphrates
       - 'storperf-graphite':
           project: 'storperf'
           dockerdir: 'docker/storperf-graphite'
-          dockerfile: 'Dockerfile'
           docker_repo_name: 'opnfv/storperf-graphite'
           arch_tag: 'aarch64'
           <<: *euphrates
       - 'storperf-httpfrontend':
           project: 'storperf'
           dockerdir: 'docker/storperf-httpfrontend'
-          dockerfile: 'Dockerfile'
           docker_repo_name: 'opnfv/storperf-httpfrontend'
           arch_tag: 'aarch64'
           <<: *euphrates
       - 'storperf-reporting':
           project: 'storperf'
           dockerdir: 'docker/storperf-reporting'
-          dockerfile: 'Dockerfile'
           docker_repo_name: 'opnfv/storperf-reporting'
           arch_tag: 'aarch64'
           <<: *euphrates
       - 'storperf-swaggerui':
           project: 'storperf'
           dockerdir: 'docker/storperf-swaggerui'
-          dockerfile: 'Dockerfile'
           docker_repo_name: 'opnfv/storperf-swaggerui'
           arch_tag: 'aarch64'
           <<: *euphrates
index 402099a..6be6b18 100644 (file)
@@ -54,20 +54,13 @@ if [[ -n "$(docker images | grep $DOCKER_REPO_NAME)" ]]; then
     done
 fi
 
-cd $WORKSPACE/$DOCKER_DIR
-HOST_ARCH=$(uname -m)
-if [ ! -f "${DOCKERFILE}" ]; then
-    # If this is expected to be a Dockerfile for other arch than x86
-    # and it does not exist, but there is a patch for the said arch,
-    # then apply the patch and create the Dockerfile.${HOST_ARCH} file
-    if [[ "${DOCKERFILE}" == *"${HOST_ARCH}" && \
-          -f "Dockerfile.${HOST_ARCH}.patch" ]]; then
-        patch -o Dockerfile."${HOST_ARCH}" Dockerfile \
-        Dockerfile."${HOST_ARCH}".patch
-    else
-        echo "ERROR: No Dockerfile or ${HOST_ARCH} patch found."
-        exit 1
-    fi
+cd "$WORKSPACE/$DOCKER_DIR" || exit 1
+HOST_ARCH="$(uname -m)"
+#If there is a patch for other arch then x86, apply the patch and
+#replace Dockerfile file
+dockerfile_patch="Dockerfile.${HOST_ARCH}.patch"
+if [[ -f "${dockerfile_patch}" ]]; then
+        patch -f Dockerfile -p1 < "${dockerfile_patch}"
 fi
 
 # Get tag version