chore: bump node 20.x version to latest
[mbt-docker.git] / build-image.sh
index bb2abc8cf4f8f808a561e5c356439b50e76cc5d5..34d9a7fbc0136b34eb7791747778f81dccad03e1 100755 (executable)
@@ -1,15 +1,33 @@
 #!/usr/bin/env sh
 
-images="mbt-node14-java11-docker mbt-node16-java11-docker mbt-node18-java11-docker \
-  mbt-node14-java17-docker mbt-node16-java17-docker mbt-node18-java17-docker \
-  mbt-node14-java19-docker mbt-node16-java19-docker mbt-node18-java19-docker"
+shopt -s extglob
 
-repositories="mbt-node14-java11-docker mbt-node16-java11-docker mbt-node18-java11-docker \
-  mbt-node14-java17-docker mbt-node16-java17-docker mbt-node18-java17-docker \
-  mbt-node14-java19-docker mbt-node16-java19-docker mbt-node18-java19-docker"
+images="mbt-node14-java8-docker mbt-node16-java8-docker mbt-node18-java8-docker mbt-node20-java8-docker \
+  mbt-node14-java11-docker mbt-node16-java11-docker mbt-node18-java11-docker mbt-node20-java11-docker \
+  mbt-node14-java17-docker mbt-node16-java17-docker mbt-node18-java17-docker mbt-node20-java17-docker \
+  mbt-node14-java21-docker mbt-node16-java21-docker mbt-node18-java21-docker mbt-node20-java21-docker"
+
+# repositories="mbt-node14-java8-docker mbt-node16-java8-docker mbt-node18-java8-docker mbt-node20-java8-docker \
+#   mbt-node14-java11-docker mbt-node16-java11-docker mbt-node18-java11-docker mbt-node20-java11-docker \
+#   mbt-node14-java17-docker mbt-node16-java17-docker mbt-node18-java17-docker mbt-node20-java17-docker \
+#   mbt-node14-java21-docker mbt-node16-java21-docker mbt-node18-java21-docker mbt-node20-java21-docker"
+
+repositories=${images}
 
 usage() {
-  echo "Usage: ./$(basename $0) [-b <${images// /|}|all>] [-p <${repositories// /|}|all>] [-c]" 1>&2; exit 1;
+  echo "    Build docker images.
+
+    Usage:
+      ./$(basename $0) [-b <name>]
+      ./$(basename $0) [-p <name>]
+      ./$(basename $0) [-c]
+      ./$(basename $0) [-h]
+
+    Options:
+      -h  Show this help.
+      -b <${images//+([[:space:]])/|}|all>  Build docker images.
+      -p <${repositories//+([[:space:]])/|}|all>  Push docker images.
+      -c  Clean docker images." 1>&2; exit 1;
 }
 
 build_all() {
@@ -29,9 +47,9 @@ while getopts ":b:p:ch" option; do
   case "${option}" in
     b)
       name=${OPTARG}
-      if [[ ${name} == "all" ]]; then
+      if [ ${name} = "all" ]; then
         build_all
-      elif [[ -z "${images##*$name*}" ]]; then
+      elif [ -z "${images##*$name*}" ]; then
         make NAME=${name}
       else
         echo "Error: Unknown image name as option argument '${OPTARG}'" >&2;
@@ -40,9 +58,9 @@ while getopts ":b:p:ch" option; do
       ;;
     p)
       repository=${OPTARG}
-       if [[ ${repository} == "all" ]]; then
+      if [ ${repository} = "all" ]; then
         push_all
-      elif [[ -z "${repositories##*$repository*}" ]]; then
+      elif [ -z "${repositories##*$repository*}" ]; then
         make docker-push-registry NAME=${repository}
       else
         echo "Error: Unknown repository name as option argument '${OPTARG}'" >&2;