Add --debug for bootstrapping, when set image is maintained for diag
authorSam <sam.saffron@gmail.com>
Fri, 29 Apr 2016 05:57:19 +0000 (15:57 +1000)
committerSam <sam.saffron@gmail.com>
Fri, 29 Apr 2016 05:57:19 +0000 (15:57 +1000)
launcher

index 69a8be1fecf6546ea363914b2be00a05010bb0a4..6eb11687af4018038b58fef634bc797b56f653bd 100755 (executable)
--- a/launcher
+++ b/launcher
@@ -25,7 +25,9 @@ user_args=""
 
 while [ ${#} -gt 0 ]; do
   case "${1}" in
-
+  --debug)
+    DEBUG="1"
+    ;;
   --skip-prereqs)
     SKIP_PREREQ="1"
     ;;
@@ -490,11 +492,21 @@ run_bootstrap() {
 
   echo $run_command
 
+  unset FAILED
   (exec echo "$input" | $docker_path run $user_args $links "${env[@]}" -e DOCKER_HOST_IP=$docker_ip --cidfile $cidbootstrap -i -a stdin -a stdout -a stderr $volumes $image \
-     /bin/bash -c "$run_command") \
-     || ($docker_path rm `cat $cidbootstrap` && rm $cidbootstrap)
+     /bin/bash -c "$run_command") || FAILED="TRUE"
+
+  if [[ $FAILED = "TRUE" ]]; then
+    if [[ ! -z "$DEBUG" ]]; then
+      $docker_path commit `cat $cidbootstrap` $local_discourse/$config-debug || echo 'FAILED TO COMMIT'
+      echo "** DEBUG ** Maintaining image for diagnostics $local_discourse/$config-debug"
+    fi
 
-  [ ! -e $cidbootstrap ] && echo "** FAILED TO BOOTSTRAP ** please scroll up and look for earlier error messages, there may be more than one" && exit 1
+    $docker_path rm `cat $cidbootstrap`
+    rm $cidbootstrap
+    echo "** FAILED TO BOOTSTRAP ** please scroll up and look for earlier error messages, there may be more than one"
+    exit 1
+  fi
 
   sleep 5