c1d5e0682f
Fix the check used to wait for interfaces to come up. The group name in the supervisor config files has changed from isc-dhcp-relay to dhcp-relay. Also, in the wait script, wait 10 additional seconds after the vlans, port channels, and any interfaces are up. This is because dhcrelay listens on all interfaces (in addition to port channels and vlans), and to ensure that it stays in a clean state during runtime, wait some extra time to make sure that those interfaces are created as well. Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>
23 lines
846 B
Bash
Executable File
23 lines
846 B
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
if [ "${RUNTIME_OWNER}" == "" ]; then
|
|
RUNTIME_OWNER="kube"
|
|
fi
|
|
|
|
CTR_SCRIPT="/usr/share/sonic/scripts/container_startup.py"
|
|
if test -f ${CTR_SCRIPT}
|
|
then
|
|
${CTR_SCRIPT} -f dhcp_relay -o ${RUNTIME_OWNER} -v ${IMAGE_VERSION}
|
|
fi
|
|
|
|
# If our supervisor config has entries in the "dhcp-relay" group...
|
|
if [ $(supervisorctl status | grep -c "^dhcp-relay:") -gt 0 ]; then
|
|
# Wait for all interfaces to come up and be assigned IPv4 addresses before
|
|
# starting the DHCP relay agent(s). If an interface the relay should listen
|
|
# on is down, the relay agent will not start. If an interface the relay
|
|
# should listen on is up but does not have an IP address assigned when the
|
|
# relay agent starts, it will not listen or send on that interface for the
|
|
# lifetime of the process.
|
|
/usr/bin/wait_for_intf.sh
|
|
fi
|