Provide cloud-init status information
[grml-quickconfig.git] / quickconfig / 003-cloud-init.sh
1 # cloud-init not installed/present
2 if ! [ -x $(which cloud-init) ] ; then
3   return 0
4 fi
5
6 # cloud-init service not running
7 if ! cloud-init status 2>/dev/null | grep -q 'status: running' ; then
8   return 0
9 fi
10
11 LINE+="print_line 'Cloud-init information:';"
12
13 if cloud-init query -l 2>/dev/null | grep -q userdata ; then
14   userdata=$(mktemp)
15   cloud-init query userdata > "${userdata}" 2>/dev/null
16
17   hostname=$(awk '/^hostname/ {print $2}' "${userdata}")
18   if [ -n "${hostname}" ] ; then
19     LINE+="print_line '-> Hostname:    ${hostname}';"
20     unset hostname
21   fi
22
23   rm -f "${userdata}"
24   unset userdata
25 fi
26
27 instance_id=$(cloud-init query instance_id 2>/dev/null)
28 if [ -n "${instance_id}" ] ; then
29   LINE+="print_line '-> Instance ID: ${instance_id}';"
30 fi
31
32 LINE+='print_delim;'
33
34 display_entry() { return 0; }