Add automation for ADML HTTP image creation
[anna.git] / tools / docker.src
diff --git a/tools/docker.src b/tools/docker.src
new file mode 100755 (executable)
index 0000000..228c07f
--- /dev/null
@@ -0,0 +1,25 @@
+#!/bin/echo "source me !"
+
+# $1: image directory; $2: image tag; $3: Dockerfile parent dir ('.' by default); $4: build context ('.' by default); $5: extra arguments (quoted)
+build_image() {
+  local imgdir=$1
+  local imgtag=$2
+  local dckdir=${3:-.}
+  local ctxdir=${4:-.}
+  local xtra=$5
+
+  local imgname=$(basename ${imgdir})
+
+  echo "Building ${imgname}:${imgtag} ..."
+  cd ${imgdir}
+
+  # Dockerfile for other contexts:
+  local dck_opt="-f ${dckdir}/Dockerfile"
+  local preferred=${dckdir}/Dockerfile.$(arch)
+  [ -f ${preferred} ] && { dck_opt="-f ${preferred}" ; echo "Selected '${preferred}' for current architecture." ; }
+
+  docker build -t ${imgname}:${imgtag} ${xtra} ${dck_opt} ${ctxdir}
+  [ $? -ne 0 ] && { echo "An error ocurred. Aborting ..." ; cd - >/dev/null ; return 1 ; }
+  cd - >/dev/null
+}
+