X-Git-Url: http://git.grml.org/?p=grml-quickconfig.git;a=blobdiff_plain;f=quickconfig%2F003-cloud-init.sh;fp=quickconfig%2F003-cloud-init.sh;h=2826ef0c26334a7a9e61fb6b5bd13c92337b497f;hp=0000000000000000000000000000000000000000;hb=105b2e3b8bfd6fd02c61517b624d13fb696bf500;hpb=e1b97fc2cdd59541d8c211281935eb131ed4e831 diff --git a/quickconfig/003-cloud-init.sh b/quickconfig/003-cloud-init.sh new file mode 100644 index 0000000..2826ef0 --- /dev/null +++ b/quickconfig/003-cloud-init.sh @@ -0,0 +1,34 @@ +# cloud-init not installed/present +if ! [ -x $(which cloud-init) ] ; then + return 0 +fi + +# cloud-init service not running +if ! cloud-init status 2>/dev/null | grep -q 'status: running' ; then + return 0 +fi + +LINE+="print_line 'Cloud-init information:';" + +if cloud-init query -l 2>/dev/null | grep -q userdata ; then + userdata=$(mktemp) + cloud-init query userdata > "${userdata}" 2>/dev/null + + hostname=$(awk '/^hostname/ {print $2}' "${userdata}") + if [ -n "${hostname}" ] ; then + LINE+="print_line '-> Hostname: ${hostname}';" + unset hostname + fi + + rm -f "${userdata}" + unset userdata +fi + +instance_id=$(cloud-init query instance_id 2>/dev/null) +if [ -n "${instance_id}" ] ; then + LINE+="print_line '-> Instance ID: ${instance_id}';" +fi + +LINE+='print_delim;' + +display_entry() { return 0; }