Support the build of multiple and different docker images
[mbt-docker.git] / build-image.sh
diff --git a/build-image.sh b/build-image.sh
new file mode 100755 (executable)
index 0000000..d18125a
--- /dev/null
@@ -0,0 +1,33 @@
+#!/usr/bin/env sh
+
+images="mbt-node14-java11-docker mbt-node16-java11-docker mbt-node14-java17-docker mbt-node16-java17-docker"
+
+usage() {
+  echo "Usage: $0 [-n <${images// /|}|all>" 1>&2; exit 1;
+}
+
+all() {
+  for image in ${images}; do
+    make NAME=${image}
+  done
+}
+
+[ $# -eq 0 ] && usage
+while getopts "n:h" option; do
+  case "${option}" in
+    n)
+      name=${OPTARG}
+      if [[ ${name} == "all" ]]; then
+        all
+      elif [[ -z "${images##*$name*}" ]]; then
+        make NAME=${name}
+      else
+        usage
+        exit 1
+      fi
+      ;;
+    *|h)
+      usage
+      ;;
+  esac
+done