Refactor: pre-commit cleanups
[releng/global-jjb.git] / shell / capture-instance-metadata.sh
index cb0081f..a5e0051 100644 (file)
 
 echo "---> capture-instance-metadata.sh"
 
+# shellcheck disable=SC1090
+source ~/lf-env.sh
+
+if [[ "${PYTHON:-}" -ne "" ]]; then
+    lf-activate-venv --python "$PYTHON" lftools
+elif python3; then
+    lf-activate-venv --python python3 lftools
+else
+    lf-activate-venv lftools
+fi
+
 # detect if we're in EC2
-if [ -z "${NOMAD_DC}" ]; then
+if [ -n "${NOMAD_DC}" ]; then
     echo "INFO: Running in Nomad, no metadata"
     exit 0
 fi
 
-# detect if we're in AWS
-if grep -qi amazon /sys/devices/virtual/dmi/id/bios_vendor ; then
+if [[ ! -f /run/cloud-init/result.json ]]; then
+    echo "INFO: Running in unsupported cloud, no metadata"
+    exit 0
+fi
+
+# AWS not supported, exit
+cloudtype="$(jq -r .v1.datasource /run/cloud-init/result.json)"
+if [[ $cloudtype == "DataSourceEc2Local" ]]; then
     echo "INFO: Running in AWS, not capturing instance metadata"
     exit 0
 fi