01eca58507
* Resolve conflicts
56 lines
1.0 KiB
Bash
Executable File
56 lines
1.0 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
set -e
|
|
|
|
function fast_reboot {
|
|
case "$(cat /proc/cmdline)" in
|
|
*fast-reboot*)
|
|
if [[ -f /fdb.json ]];
|
|
then
|
|
swssconfig /fdb.json
|
|
rm -f /fdb.json
|
|
fi
|
|
|
|
if [[ -f /arp.json ]];
|
|
then
|
|
swssconfig /arp.json
|
|
rm -f /arp.json
|
|
fi
|
|
|
|
if [[ -f /default_routes.json ]];
|
|
then
|
|
swssconfig /default_routes.json
|
|
rm -f /default_routes.json
|
|
fi
|
|
|
|
;;
|
|
*)
|
|
;;
|
|
esac
|
|
}
|
|
|
|
# Wait until swss.sh in the host system create file swss:/ready
|
|
until [[ -e /ready ]]; do
|
|
sleep 0.1;
|
|
done
|
|
|
|
rm -f /ready
|
|
|
|
# Restore FDB and ARP table ASAP
|
|
fast_reboot
|
|
|
|
HWSKU=`sonic-cfggen -d -v "DEVICE_METADATA['localhost']['hwsku']"`
|
|
|
|
SWSSCONFIG_ARGS="00-copp.config.json "
|
|
|
|
if [ "$HWSKU" != "montara" ] && [ "$HWSKU" != "mavericks" ] && [ "$HWSKU" != "OSW1800-48x6q" ] && [ "$HWSKU" != "INGRASYS-S9180-32X"]; then
|
|
SWSSCONFIG_ARGS+="ipinip.json "
|
|
fi
|
|
|
|
SWSSCONFIG_ARGS+="ports.json switch.json "
|
|
|
|
for file in $SWSSCONFIG_ARGS; do
|
|
swssconfig /etc/swss/config.d/$file
|
|
sleep 1
|
|
done
|