varous minor updates
[automated-distro-installer] / myfai-chboot-local
index f493db1565d6ad22e14111eec2d2b15d2e3cb431..49ee6f6efcb6c9ce9ad67d7f30fee83fab3f35c7 100755 (executable)
@@ -5,7 +5,6 @@ set -eE -o pipefail
 trap 'echo "$0:$LINENO:error: \"$BASH_COMMAND\" returned $?" >&2' ERR
 
 fai_action=install
-fai_action_arg=I
 fai_reboot_arg=,reboot
 case $1 in
   -h|--help)
@@ -14,7 +13,11 @@ case $1 in
     ;;
   -S)
     fai_action=sysinfo
-    fai_action_arg=S
+    fai_reboot_arg=
+    shift
+    ;;
+  -i) #inventory
+    fai_action=inventory
     fai_reboot_arg=
     shift
     ;;
@@ -46,12 +49,12 @@ elif [[ $host == [0-9]*.[0-9]*.[0-9]*.[0-9]* ]]; then
   ip=$host/32
 else
   type -t host &>/dev/null || apt-get -y install dnsutils
-  ip=$(host $host | sed -rn 's/^\S+ has address //p;T;q')/32
+  ip=$(host $host | sed -rn 's/^\S+ has address //p;T;q' ||:)
   if [[ ! $ip || $ip =~ [[:space:]] ]]; then
-    echo "$0: error: failed to get \$my_ip, got: $my_ip"
+    echo "$0: error: failed to get \$ip, got: $ip"
     exit 1
   fi
-
+  ip=$ip/32
 fi
 
 if modprobe nfsd &>/dev/null; then
@@ -93,14 +96,14 @@ fi
 
 # man page doesn't explain this, but this deletes & thus disables
 # all chboot systems.
-e fai-chboot -${fai_action_arg}v $std_arg default # set it to default to get a val out of it next
+e fai-chboot -iv $std_arg default # set it to default to get a val out of it next
 kernel=$(fai-chboot -L '^default$' | awk '{print $3}')
 default_k_args=$(fai-chboot -L '^default$' | \
                    sed -r "s/^(\S+\s+){3}(.*)/\2/")
 # example of default_k_args
 # initrd=initrd.img-3.16.0-4-amd64 ip=dhcp root=192.168.1.3:/srv/fai/nfsroot aufs FAI_CONFIG_SRC=nfs://faiserver/srv/fai/config FAI_ACTION=install
 
-k_args=()
+k_args=(console=tty0 console=ttyS0,115200 FAI_ACTION=$fai_action)
 for arg in $default_k_args; do
   case $arg in
     # default root arg is /srv/fai/nfsroot