Commit 2dd6d84a authored by Mike Hibler's avatar Mike Hibler

Extend and formalize the Moonshot hack where dhcpd sends *BOOTING events.

Since the Moonshot cluster will soon have x86 nodes and those nodes do
call bootinfo (unlike the ARM nodes), make sure that bootinfo does not
send PXEBOOTING/BOOTING events (since dhcpd already has) by starting it
with the new -E option.

Formalize by adding a BOOTINFO_EVENTS defs var that defaults to 1.
This ensures that a nobootinfo version of the dhcpd.conf template is
installed and that bootinfo is invoked with the -E option.
Only defs-cloudlab-utah should set it to zero.
parent 077182b7
......@@ -676,6 +676,7 @@ TBROBOCOPSEMAIL_NOSLASH
TBROBOCOPSEMAIL
TBOPSEMAIL_NOSLASH
TBOPSEMAIL
BOOTINFO_EVENTS
SDCOLLECTD_USE_RRDTOOL
SDCOLLECTD_DOSTATS
EXPIRE_PASSWORDS
......@@ -5021,6 +5022,7 @@ done
#
......@@ -5191,6 +5193,7 @@ CLUSTER_PUBSUBD_PORT=""
EXPIRE_PASSWORDS=1
SDCOLLECTD_DOSTATS=0
SDCOLLECTD_USE_RRDTOOL=0
BOOTINFO_EVENTS=1
#
# XXX You really don't want to change these!
......
......@@ -319,6 +319,7 @@ AC_SUBST(CLUSTER_PUBSUBD_PORT)
AC_SUBST(EXPIRE_PASSWORDS)
AC_SUBST(SDCOLLECTD_DOSTATS)
AC_SUBST(SDCOLLECTD_USE_RRDTOOL)
AC_SUBST(BOOTINFO_EVENTS)
#
# Offer both versions of the email addresses that have the @ escaped
......@@ -488,6 +489,7 @@ CLUSTER_PUBSUBD_PORT=""
EXPIRE_PASSWORDS=1
SDCOLLECTD_DOSTATS=0
SDCOLLECTD_USE_RRDTOOL=0
BOOTINFO_EVENTS=1
#
# XXX You really don't want to change these!
......
#
# Copyright (c) 2000-2014 University of Utah and the Flux Group.
# Copyright (c) 2000-2016 University of Utah and the Flux Group.
#
# {{{EMULAB-LICENSE
#
......@@ -28,9 +28,10 @@ SUBDIR = dhcpd
ETCDIR = /usr/local/etc
DHCPD_FILES = dhcpd.conf.template
DHCPD_FILES = dhcpd.conf.template dhcpd.conf.nobootinfo.template
SUBBOSS_DHCPD_FILES = dhcpd.conf.subboss.template
DISABLE_DHCPD_INSTALL = @DISABLE_DHCPD_INSTALL@
BOOTINFO_EVENTS = @BOOTINFO_EVENTS@
include $(OBJDIR)/Makeconf
......@@ -43,8 +44,14 @@ all: $(DHCPD_FILES)
include $(TESTBED_SRCDIR)/GNUmakerules
ifeq ($(DISABLE_DHCPD_INSTALL),0)
ifeq ($(BOOTINFO_EVENTS),0)
install: install-nobootinfo-real
subboss-install:
@echo "Must have BOOTINFO_EVENTS to support a subboss right now"
else
install: install-real
subboss-install: subboss-install-real
endif
else
install:
@echo "Refusing to install cause DISABLE_DHCPD_INSTALL=1"
......@@ -62,6 +69,11 @@ install-real: \
$(ETCDIR)/dhcpd.conf.template $(ETCDIR)/dhcpd.conf.subboss.template
-chmod 664 $(ETCDIR)/dhcpd.conf.template
install-nobootinfo-real: \
dhcpd.conf.nobootinfo.template
$(INSTALL) dhcpd.conf.nobootinfo.template $(ETCDIR)/dhcpd.conf.template
-chmod 664 $(ETCDIR)/dhcpd.conf.template
clean:
rm -f $(DHCPD_FILES) $(SUBBOSS_DHCPD_FILES)
......
#!/bin/sh
#
# Copyright (c) 2004 University of Utah and the Flux Group.
# Copyright (c) 2004-2016 University of Utah and the Flux Group.
#
# {{{EMULAB-LICENSE
#
......@@ -23,9 +23,16 @@
#
DIR=@prefix@/sbin
BOOTINFO_EVENTS=@BOOTINFO_EVENTS@
# BOOTINFO_EVENTS must explicitly be set to zero to suppress
opt=""
if [ -n "$BOOTINFO_EVENTS" -a $BOOTINFO_EVENTS = "0" ]; then
opt="-E"
fi
if [ -e /var/run/bootinfo.pid ]; then
kill `cat /var/run/bootinfo.pid`;
fi
${DIR}/bootinfo
${DIR}/bootinfo $opt
exit $?
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment