From b36409906bb374ea17e5fd3f7e0a9eda93fed4fa Mon Sep 17 00:00:00 2001 From: Scott Moser Date: Fri, 18 Feb 2011 15:12:04 -0500 Subject: improve startup if no eth0 is available (LP: #714807) LP: #714807 --- upstart/cloud-init-nonet.conf | 22 ++++++++++++++++++++++ upstart/cloud-init.conf | 3 +-- 2 files changed, 23 insertions(+), 2 deletions(-) create mode 100644 upstart/cloud-init-nonet.conf (limited to 'upstart') diff --git a/upstart/cloud-init-nonet.conf b/upstart/cloud-init-nonet.conf new file mode 100644 index 00000000..2ac98286 --- /dev/null +++ b/upstart/cloud-init-nonet.conf @@ -0,0 +1,22 @@ +# cloud-init-no-net +# the purpose of this job is +# * to block running of cloud-init until a non 'lo' interface is up +# * timeout if one doens't come up in a reasonable amount of time +start on mounted MOUNTPOINT=/ and stopped cloud-init-local +stop on net-device-up IFACE!=lo +task + +console output + +script + # if a non 'lo' interface is up, exit immediately + grep -qv '^lo' /var/run/network/ifstate && exit 0 + + [ -f /var/lib/cloud/instance/obj.pkl ] && exit 0 + sleep 10 + echo $UPSTART_JOB "waiting for a network device." + sleep 60 + echo $UPSTART_JOB "gave up waiting for a network device." + : > /var/lib/cloud/data/no-net +end script +# EOF diff --git a/upstart/cloud-init.conf b/upstart/cloud-init.conf index cb2b437b..b9be5981 100644 --- a/upstart/cloud-init.conf +++ b/upstart/cloud-init.conf @@ -1,7 +1,6 @@ # cloud-init - the initial cloud-init job # crawls metadata service, emits cloud-config -start on (mounted MOUNTPOINT=/ and net-device-up IFACE=eth0 and \ - stopped cloud-init-local ) +start on mounted MOUNTPOINT=/ and stopped cloud-init-nonet task -- cgit v1.2.3