Add some build option in build.sh for supporting arm arch 35/61035/1
authorJingzhao Ni <jingzhao.ni@arm.com>
Fri, 17 Aug 2018 08:58:58 +0000 (16:58 +0800)
committerCédric Ollivier <cedric.ollivier@orange.com>
Fri, 17 Aug 2018 12:49:44 +0000 (14:49 +0200)
In build.sh, add some build options for arm arch.

It also updates constraints to OpenStack Queens.

Co-Authored-By: Cédric Ollivier <cedric.ollivier@orange.com>
Change-Id: I3cc6c10e2e52c281e2324d8b42b721383be30c0b
Signed-off-by: Jingzhao Ni <jingzhao.ni@arm.com>
Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
(cherry picked from commit a540530c66dbd78b83554e22064728c7c03801ea)

build.sh

index 136aba7..4866135 100644 (file)
--- a/build.sh
+++ b/build.sh
@@ -8,24 +8,48 @@ docker/core \
 docker/healthcheck \
 docker/smoke \
 docker/features"}
+arm64_dirs=${arm64_dirs-${amd64_dirs}}
 build_opts=(--pull=true --no-cache --force-rm=true)
 
 find . -name Dockerfile -exec sed -i \
-    -e "s|opnfv/functest-kubernetes-core:fraser|\
-${repo}/functest-kubernetes-core:fraser|g" {} +
+    -e "s|opnfv/functest-kubernetes-core|\
+${repo}/functest-kubernetes-core:amd64-fraser|g" {} +
 find . -name Dockerfile -exec sed -i \
-    -e "s|opnfv/functest-kubernetes-healthcheck:fraser|\
-${repo}/functest-kubernetes-healthcheck:fraser|g" {} +
+    -e "s|opnfv/functest-kubernetes-healthcheck|\
+${repo}/functest-kubernetes-healthcheck:amd64-fraser|g" {} +
 for dir in ${amd64_dirs}; do
-    (cd "${dir}" && docker build "${build_opts[@]}" \
-        -t "${repo}/functest-kubernetes-${dir##**/}:fraser" .)
-    docker push "${repo}/functest-kubernetes-${dir##**/}:fraser"
+    (cd "${dir}" &&
+        docker build "${build_opts[@]}" \
+            -t "${repo}/functest-kubernetes-${dir##**/}:amd64-fraser" .)
+        docker push "${repo}/functest-kubernetes-${dir##**/}:amd64-fraser"
     [ "${dir}" != "docker/core" ] &&
-        (docker rmi "${repo}/functest-kubernetes-${dir##**/}:fraser" || true)
+        (docker rmi \
+            "${repo}/functest-kubernetes-${dir##**/}:amd64-fraser" || true)
 done
 [ ! -z "${amd64_dirs}" ] &&
-    (docker rmi "${repo}/functest-kubernetes-healthcheck:fraser" \
-        "${repo}/functest-kubernetes-core:fraser" alpine:3.7 || true)
+    (docker rmi \
+        "${repo}/functest-kubernetes-core:amd64-fraser" alpine:3.7 || true)
+find . -name Dockerfile -exec git checkout {} +
+
+find . -name Dockerfile -exec sed -i \
+    -e "s|alpine:3.7|multiarch/alpine:arm64-v3.7|g" {} +
+find . -name Dockerfile -exec sed -i \
+    -e "s|opnfv/functest-kubernetes-core|\
+${repo}/functest-kubernetes-core:arm64-fraser|g" {} +
+find . -name Dockerfile -exec sed -i \
+    -e "s|opnfv/functest-kubernetes-healthcheck|\
+${repo}/functest-kubernetes-healthcheck:arm64-fraser|g" {} +
+for dir in ${arm64_dirs}; do
+    (cd "${dir}" && docker build "${build_opts[@]}" \
+        -t "${repo}/functest-kubernetes-${dir##**/}:arm64-fraser" .)
+    docker push "${repo}/functest-kubernetes-${dir##**/}:arm64-fraser"
+    [ "${dir}" != "docker/core" ] &&
+        (docker rmi \
+            "${repo}/functest-kubernetes-${dir##**/}:arm64-fraser" || true)
+done
+[ ! -z "${arm64_dirs}" ] &&
+    (docker rmi "${repo}/functest-kubernetes-core:arm64-fraser" \
+        multiarch/alpine:arm64-v3.7 || true)
 find . -name Dockerfile -exec git checkout {} +
 
 exit $?