Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sonic cfg mgmt merge #49

Closed
wants to merge 118 commits into from
Closed
Changes from 1 commit
Commits
Show all changes
118 commits
Select commit Hold shift + click to select a range
ed79f54
[Services] Restart DHCP-Relay service upon unexpected critical proces…
yozhao101 Nov 6, 2019
9f1f61c
[submodule]: Updated sonic-utilities pointer (#3715)
Nov 6, 2019
997ea59
Fix typos and comment alignment in supervisor.conf files (#3714)
jleveque Nov 6, 2019
05e6599
[arista] Add support for more 7280CR3 variants (#3711)
Staphylo Nov 6, 2019
a117b25
[Services] Restart LLDP service upon unexpected critical process exit…
yozhao101 Nov 6, 2019
aa1a136
[frr]: Move to version 7.2 (#3704)
pavel-shirshov Nov 6, 2019
d346cb3
[services] make snmp.timer work again and delay telemetry.service (#3…
stepanblyschak Nov 6, 2019
d5af096
[TSA]: Add community to the loopback prefix, when isolated (#3708)
pavel-shirshov Nov 7, 2019
95466c3
[pfcwd]: Do not start pfc watchdog on Management Tor (#3719)
neethajohn Nov 7, 2019
3b51cec
[barefoot] Added Newport platform support (#3709)
akokhan Nov 7, 2019
65fc916
[platform/device] - Implement Silverstone platform API [Chassis/Fan] …
Nov 7, 2019
7d4093d
[device/platform] Add reset in sfputil.py for Accton AS7326-56X (#3685)
brandonchuang Nov 7, 2019
6d46bad
[aboot]: preserve snmp.yml and acl.json for eos to sonic fast reboot …
lguohan Nov 7, 2019
6a76cd2
[build]: Fixed BFN target build (#3721)
vsenchyshyn Nov 7, 2019
a5e2799
[DellEMC] S6100 Watchdog Support (#3698)
santhosh-kt Nov 7, 2019
bdf1b7c
libyang 1.0.73 (#3710)
li-pingmao Nov 7, 2019
6c0ab4b
[device] accton device of as5812_54t supports SAI and modify as5812_…
dereksun01 Nov 8, 2019
ac2908e
[devices]: Add thermal plan to as4630_54pe (#3665)
jostar-yang Nov 8, 2019
2e61e14
[devices] Celeatica Silverstone add IPMI platform sensor read. (#3591)
pphuchar Nov 8, 2019
e877e47
[devices]: fix debian/control for accton platform modules
lguohan Nov 9, 2019
bec60d1
[pmon][barefoot] Added pmon daemons control file (#3728)
akokhan Nov 9, 2019
96fffd8
Revert "[services] make snmp.timer work again and delay telemetry.ser…
yxieca Nov 9, 2019
b2e15f2
[device/accton] Platform2.0 API Implementation for accton as7116-54x …
simonJi2018 Nov 9, 2019
be3421c
[docker-ptf]: Added python-libpcap for the updated arp responder (#3731)
Nov 9, 2019
c70d8bc
[baseimage]: kdump support (#3722)
olivier-singla Nov 9, 2019
fd82328
[lldp]: ensure the LLDP PDU is sent immediately when the tx-interval …
sandeep-kulambi Nov 9, 2019
099f9b0
[devices]:start opennsl modules after platform handle mac service on …
CharlieChenEC Nov 9, 2019
85b0de3
[docker-syncd]: Restart SwSS, syncd and dependent services if a criti…
jleveque Nov 9, 2019
6e926a1
[device]: rename as5835_54x configuration file (#3429)
dereksun01 Nov 9, 2019
d8931db
[submodules]: update swss/sairedis/utilities
lguohan Nov 9, 2019
c07ae3b
Loopback ip addresses move to intfmgrd for supporting VRF
Nov 9, 2019
473fc6d
celestica: reallocate the empty LIST at the constructor of subclasses…
ds952811 Nov 12, 2019
64c43f7
[submodule]: update sonic-sairedis
lguohan Nov 11, 2019
5174ec8
[bcm SAI] Upgrade Broadcom SAI to version 3.5.3.1m-26 (#50)
daall Nov 12, 2019
7372122
[Juniper][QFX5210] Updating platform README (#3746)
ciju-juniper Nov 13, 2019
864a7c6
start bgp_eoiu_mark service to populate bgp eoiu marker flags for war…
heidinet2007 Nov 13, 2019
f5f45f8
[Submodule] Update sonic-utilities (#3750)
prsunny Nov 13, 2019
f9dea23
Don't run bgpcfgd twice (#3752)
pavel-shirshov Nov 14, 2019
c50c390
[rsyslog] Add support for IPv6 remote addresses (#3754)
jleveque Nov 14, 2019
c78465b
[Mellanox]: Update SAI submodule to 1.15.2 (#3748)
Nov 14, 2019
4f35a81
DellEMC:optoe driver support in DellEMC platforms (#3747)
aravindmani-1 Nov 14, 2019
4007d9b
[ntp]: modified ntp script to hide the error related to cfggen (#3745)
kannankvs Nov 14, 2019
413f078
[devices]: Firmware upgrade support for DellEMC platforms(s5248,s5232…
srideepDell Nov 14, 2019
f9e36d3
[submodule]: update sonic-utilities (#3756)
lguohan Nov 15, 2019
df11b2b
[Services] Restart Telemetry service upon unexpected critical process…
yozhao101 Nov 19, 2019
7c65f8c
Fix vrf test failed after frr update to 7.2 (#3763)
Nov 19, 2019
b25ec7d
Update submodule: sonic-snmpagent (#3782)
qiluo-msft Nov 19, 2019
0e0699c
[Submodule] Update sonic-swss-common (#3770)
prsunny Nov 20, 2019
fc495dc
[barefoot][build] Fixed BFN platform build failure (#3766)
akokhan Nov 20, 2019
5466bb5
[sonic-mgmt]: install ansible 2.8.7 and pytest-ansible 2.2.2 (#3776)
lguohan Nov 20, 2019
420278f
[docker-base/ptf]: Make a link to vim. Add tmux to docker-ptf (#3758)
pavel-shirshov Nov 20, 2019
82e309f
[broadcom]: Add bcmcmd and bcmsh to docker-syncd-brcm-rpc (#3739)
chiourung Nov 20, 2019
1d5005b
[multiDB] add database_config.json into vs images (#3757)
dzhangalibaba Nov 20, 2019
29a7451
[submodule] advance submodule head for sonic-platform-common (#3787)
stephenxs Nov 21, 2019
0c9040d
[Mellanox] support get_transceiver_threshold_info (#3777)
stephenxs Nov 21, 2019
cb2e01d
[submodule]: Update sairedis/swss/utilities (#3786)
daall Nov 21, 2019
bad57cc
[minigraph.py] Generate items needed by streaming telemetry service (…
pra-moh Nov 21, 2019
3470000
[sonic-slave]: Remove `base` from image name, rename folder to preven…
qiluo-msft Nov 22, 2019
8a7c130
[devices]: Fix the clock setting on arista 7280 (#3788)
byu343 Nov 22, 2019
643ef82
[config] supplement loopback interface in mimigraph (#3792)
Nov 22, 2019
6864ed5
[sairedis] Submodule update for sairedis (#3801)
daall Nov 22, 2019
a542335
[submodule]: update sonic-sairedis (#3804)
lguohan Nov 22, 2019
a73eb66
[docker-fpm-frr]: Refactor bgpcfgd (#3789)
pavel-shirshov Nov 22, 2019
295b0bd
[Mellanox] Update FW/SDK: 13/29.2000.2602 and 4.3.2602 (#3796)
Nov 22, 2019
f943440
Moved telemetry exit listener from process package into Docker (#3805)
akokhan Nov 22, 2019
351410e
[swss.sh] When starting, call 'systemctl restart' on dependents, not …
jleveque Nov 23, 2019
3d80afa
[swsssdk-py] submodule update for sonic-py-swsssdk (#3808)
dzhangalibaba Nov 23, 2019
d44cc30
[docker-fpm-frr]: Enable sending ipv6 prefixes over ipv4 BGPMON sessi…
pavel-shirshov Nov 23, 2019
f558f17
[nephos] upgrade Nephos SAI to version 06a67d (#3793)
simonJi2018 Nov 23, 2019
8d4516c
[kvm]: increase mem to 3G to avoid OOM during onie installation (#3811)
lguohan Nov 23, 2019
65f7da8
[telemetry.sh] Fix string null check with special characters by addin…
pra-moh Nov 23, 2019
45e13b9
[sonic-telemetry]: correcting server key name in configdb (#3809)
pra-moh Nov 23, 2019
62a7846
[sFlow]: Upgrade hsflowd to 2.0.26-1 (#3812)
padmanarayana Nov 24, 2019
4ae1f70
Revert "[swsssdk-py] submodule update for sonic-py-swsssdk (#3808)" (…
lguohan Nov 25, 2019
57728c5
[docker-ptf]: add ethtool and telnet package in ptf (#3815)
lguohan Nov 25, 2019
67fc685
[Services] Restart Sflow service upon unexpected critical process exi…
yozhao101 Nov 25, 2019
794d459
Update frr with latest changes from frr master (#3806)
pavel-shirshov Nov 25, 2019
d3a1555
[hostcfgd] Add support to enable/disable optional features (#3653)
pra-moh Nov 26, 2019
5e6f8ad
[services] Remove explicit dependencies from dhcp_relay service file,…
jleveque Nov 27, 2019
7622a30
[dhcp_relay] Add extra sleep before starting relay agent processes (#…
jleveque Nov 27, 2019
bfa96bb
Add daemon which periodically pushes process and docker stats to Stat…
pra-moh Nov 27, 2019
5b18aa5
DellEMC: Skip starting 'ledd' in pmon in DellEMC platforms (#3762)
ArunSaravananBalachandran Nov 28, 2019
7a3e497
[barefoot][as9516] Updated Newport configuration (#3797)
akokhan Nov 30, 2019
558292f
[sonic-utilities] submodule update for sonic-utilities (#3825)
dzhangalibaba Dec 1, 2019
1de13ca
[config engine] For l2 preset, use admin_status: up by default (#3902)
mykolaf Dec 13, 2019
4ea9705
[isc-dhcp-relay] Patch to allow relay to discover interfaces even if …
jleveque Dec 7, 2019
0f6fa49
Revert "[dhcp_relay] Add extra sleep before starting relay agent proc…
jleveque Dec 8, 2019
068cb13
[Mellanox]Update hw-mgmt to V7.0000.2308 (#3858)
stephenxs Dec 12, 2019
ba4f0f3
[process-reboot-cause]Address the issue: Incorrect reboot cause retur…
stephenxs Dec 14, 2019
6997126
[Mellanox]: Update SAI submodule (#3883)
Dec 17, 2019
6a4b2d1
[mellanox]: Enhance pmon synchronization with hw-mgmt platform counte…
nazariig Dec 17, 2019
14f7b8d
Corefile uploader service (#3887)
renukamanavalan Dec 16, 2019
f24ee3b
[lldpd]: Ports few fixes from lldpd master (#3889)
pavel-shirshov Dec 13, 2019
759bde3
[hostcfgd] avoid in place editing config file contents (#3904)
yxieca Dec 14, 2019
2c7a01a
[swss service] flush fast-reboot enabled flag upon swss stopping (#3908)
yxieca Dec 16, 2019
7acd169
Updated Submodule Commit based on cherry-pick for sub repos
abdosi Dec 31, 2019
2d079a1
corefile uploader: Updates per review comments offline (#3915)
renukamanavalan Dec 30, 2019
f0b7dfa
[caclmgrd] Fix application of IPv6 service ACL rules (#3917)
jleveque Dec 19, 2019
3474e8f
[syncd.sh] remove chipdown on mellanox (#3926)
stepanblyschak Dec 23, 2019
4864b8f
[Mellanox] Update FW/SDK: 13/29.2000.2696 and 4.3.2904 (#3948)
noaOrMlnx Dec 31, 2019
fd3d8c2
[services] sflow service sets swss service as Requisite=, not Require…
jleveque Dec 3, 2019
8629dd8
[device][accton]: Update for AS7326-56X complying the BCM SAI 3.5.3.1…
pollyhsu2git Dec 18, 2019
df81943
Revert "[swss.sh] When starting, call 'systemctl restart' on dependen…
yxieca Dec 2, 2019
6708dac
[broadom]: Upgrade broadcom SAI to 3.7.3.2
judyjoseph Dec 19, 2019
08c36d2
[mellanox ]improve the method the type of sfp module is detected (#3846)
stephenxs Dec 7, 2019
d688c26
Updated SubModule Commit Hash
abdosi Jan 3, 2020
b2234a6
[docker-base-stretch]: Do not check expire for stretch-backports repo…
lguohan Jan 1, 2020
74b45be
[fast-reboot]: Save fast-reboot state into the db (#3741)
pavel-shirshov Dec 4, 2019
b834c9f
[services] make snmp.timer work again and delay telemetry.service (#3…
stepanblyschak Dec 16, 2019
d45ad3f
Update bgpcfgd with vrf support (#3952)
pavel-shirshov Jan 4, 2020
da1d33b
Updated Submodule Commit.
abdosi Jan 6, 2020
5e07b25
[monit] Build from source and patch to use MemAvailable value if avai…
jleveque Dec 31, 2019
5ecc6ad
SubModule Update
abdosi Jan 6, 2020
6045e34
Merge branch 'abdosi/master_201911_label_to_201911' into 201911.
abdosi Jan 7, 2020
5bf3efb
Merge branch 'github-201911' into sonic-cfg-mgmt
zhenggen-xu Feb 19, 2020
857ed76
Fix the merge issue
zhenggen-xu Feb 19, 2020
227a721
Add protobuf dependencies into syncd docker
zhenggen-xu Feb 19, 2020
ff4d5ca
Update submodules
zhenggen-xu Feb 19, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
[docker-syncd]: Restart SwSS, syncd and dependent services if a criti…
…cal process in syncd container exits unexpectedly (sonic-net#3534)

Add the same mechanism I developed for the SwSS service in sonic-net#2845 to the syncd service. However, in order to cause the SwSS service to also exit and restart in this situation, I developed a docker-wait-any program which the SwSS service uses to wait for either the swss or syncd containers to exit.
jleveque authored and lguohan committed Nov 9, 2019
commit 85b0de3df1125ad291afe0c7c93628dd45f226db
3 changes: 3 additions & 0 deletions files/build_templates/sonic_debian_extension.j2
Original file line number Diff line number Diff line change
@@ -218,6 +218,9 @@ sudo cp $IMAGE_CONFIGS/hostname/hostname-config.service $FILESYSTEM_ROOT/etc/sy
echo "hostname-config.service" | sudo tee -a $GENERATED_SERVICE_FILE
sudo cp $IMAGE_CONFIGS/hostname/hostname-config.sh $FILESYSTEM_ROOT/usr/bin/

# Copy miscellaneous scripts
sudo cp $IMAGE_CONFIGS/misc/docker-wait-any $FILESYSTEM_ROOT/usr/bin/

# Copy updategraph script and service file
j2 files/build_templates/updategraph.service.j2 | sudo tee $FILESYSTEM_ROOT/etc/systemd/system/updategraph.service
sudo cp $IMAGE_CONFIGS/updategraph/updategraph $FILESYSTEM_ROOT/usr/bin/
62 changes: 62 additions & 0 deletions files/image_config/misc/docker-wait-any
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
#!/usr/bin/env python

"""
docker-wait-any
This script takes one or more Docker container names as arguments,
and it will block indefinitely while all of the specified containers
are running. If any of the specified containers stop, the script will
exit.
This script was created because the 'docker wait' command is lacking
this functionality. It will block until ALL specified containers have
stopped running. Here, we spawn multiple threads and wait on one
container per thread. If any of the threads exit, the entire
application will exit.
NOTE: This script is written against docker-py version 1.6.0. Newer
versions of docker-py have a different API.
"""

import sys
import threading
from docker import Client

# Instantiate a global event to share among our threads
g_thread_exit_event = threading.Event()


def usage():
print("Usage: {} <container_name> [<container_name> ...]".format(sys.argv[0]))
sys.exit(1)


def wait_for_container(docker_client, container_name):
docker_client.wait(container_name)

print("No longer waiting on container '{}'".format(container_name))

# Signal the main thread to exit
g_thread_exit_event.set()


def main():
thread_list = []

docker_client = Client(base_url='unix://var/run/docker.sock')

# Ensure we were passed at least one argument
if len(sys.argv) < 2:
usage()

container_names = sys.argv[1:]

for container_name in container_names:
t = threading.Thread(target=wait_for_container, args=[docker_client, container_name])
t.daemon = True
t.start()
thread_list.append(t)

# Wait until we receive an event signifying one of the containers has stopped
g_thread_exit_event.wait()
sys.exit(0)

if __name__ == '__main__':
main()
17 changes: 16 additions & 1 deletion files/scripts/swss.sh
Original file line number Diff line number Diff line change
@@ -131,7 +131,22 @@ start() {

wait() {
start_peer_and_dependent_services
/usr/bin/${SERVICE}.sh wait

# Allow some time for peer container to start
# NOTE: This assumes Docker containers share the same names as their
# corresponding services
for SECS in {1..60}; do
RUNNING=$(docker inspect -f '{{.State.Running}}' ${PEER})
if [[ x"$RUNNING" == x"true" ]]; then
break
else
sleep 1
fi
done

# NOTE: This assumes Docker containers share the same names as their
# corresponding services
/usr/bin/docker-wait-any ${SERVICE} ${PEER}
}

stop() {
1 change: 1 addition & 0 deletions platform/barefoot/docker-syncd-bfn-rpc.mk
Original file line number Diff line number Diff line change
@@ -3,6 +3,7 @@
DOCKER_SYNCD_BFN_RPC = docker-syncd-bfn-rpc.gz
$(DOCKER_SYNCD_BFN_RPC)_PATH = $(PLATFORM_PATH)/docker-syncd-bfn-rpc
$(DOCKER_SYNCD_BFN_RPC)_DEPENDS += $(SYNCD_RPC) $(LIBTHRIFT)
$(DOCKER_SYNCD_BFN_RPC)_FILES += $(SUPERVISOR_PROC_EXIT_LISTENER_SCRIPT)
ifeq ($(INSTALL_DEBUG_TOOLS), y)
$(DOCKER_SYNCD_BFN_RPC)_DEPENDS += $(SYNCD_RPC_DBG) \
$(LIBSWSSCOMMON_DBG) \
2 changes: 2 additions & 0 deletions platform/barefoot/docker-syncd-bfn/Dockerfile.j2
Original file line number Diff line number Diff line change
@@ -29,6 +29,8 @@ debs/{{ deb }}{{' '}}

COPY ["start.sh", "/usr/bin/"]
COPY ["supervisord.conf", "/etc/supervisor/conf.d/"]
COPY ["files/supervisor-proc-exit-listener", "/usr/bin"]
COPY ["critical_processes", "/etc/supervisor/"]

## Clean up
RUN apt-get clean -y; apt-get autoclean -y; apt-get autoremove -y
1 change: 1 addition & 0 deletions platform/barefoot/docker-syncd-bfn/critical_processes
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
syncd
2 changes: 1 addition & 1 deletion platform/broadcom/docker-syncd-brcm-rpc.mk
Original file line number Diff line number Diff line change
@@ -9,7 +9,7 @@ $(DOCKER_SYNCD_BRCM_RPC)_DEPENDS += $(SYNCD_RPC_DBG) \
$(LIBSAIMETADATA_DBG) \
$(LIBSAIREDIS_DBG)
endif
$(DOCKER_SYNCD_BRCM_RPC)_FILES += $(DSSERVE) $(BCMCMD)
$(DOCKER_SYNCD_BRCM_RPC)_FILES += $(DSSERVE) $(BCMCMD) $(SUPERVISOR_PROC_EXIT_LISTENER_SCRIPT)
$(DOCKER_SYNCD_BRCM_RPC)_LOAD_DOCKERS += $(DOCKER_SYNCD_BASE)
SONIC_DOCKER_IMAGES += $(DOCKER_SYNCD_BRCM_RPC)
SONIC_STRETCH_DOCKERS += $(DOCKER_SYNCD_BRCM_RPC)
2 changes: 2 additions & 0 deletions platform/broadcom/docker-syncd-brcm/Dockerfile.j2
Original file line number Diff line number Diff line change
@@ -26,6 +26,8 @@ COPY ["files/dsserve", "files/bcmcmd", "start.sh", "bcmsh", "/usr/bin/"]
RUN chmod +x /usr/bin/dsserve /usr/bin/bcmcmd

COPY ["supervisord.conf", "/etc/supervisor/conf.d/"]
COPY ["files/supervisor-proc-exit-listener", "/usr/bin"]
COPY ["critical_processes", "/etc/supervisor/"]

## Clean up
RUN apt-get clean -y; apt-get autoclean -y; apt-get autoremove -y
2 changes: 2 additions & 0 deletions platform/broadcom/docker-syncd-brcm/critical_processes
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
dsserve
syncd
8 changes: 7 additions & 1 deletion platform/broadcom/docker-syncd-brcm/supervisord.conf
Original file line number Diff line number Diff line change
@@ -3,6 +3,12 @@ logfile_maxbytes=1MB
logfile_backups=2
nodaemon=true

[eventlistener:supervisor-proc-exit-listener]
command=/usr/bin/supervisor-proc-exit-listener
events=PROCESS_STATE_EXITED
autostart=true
autorestart=unexpected

[program:start.sh]
command=/usr/bin/start.sh
priority=1
@@ -15,7 +21,7 @@ stderr_logfile=syslog
command=/usr/sbin/rsyslogd -n
priority=2
autostart=false
autorestart=false
autorestart=unexpected
stdout_logfile=syslog
stderr_logfile=syslog

1 change: 1 addition & 0 deletions platform/cavium/docker-syncd-cavm-rpc.mk
Original file line number Diff line number Diff line change
@@ -3,6 +3,7 @@
DOCKER_SYNCD_CAVM_RPC = docker-syncd-cavm-rpc.gz
$(DOCKER_SYNCD_CAVM_RPC)_PATH = $(PLATFORM_PATH)/docker-syncd-cavm-rpc
$(DOCKER_SYNCD_CAVM_RPC)_DEPENDS += $(SYNCD_RPC) $(LIBTHRIFT) $(CAVM_LIBSAI) $(XP_TOOLS) $(REDIS_TOOLS)
$(DOCKER_SYNCD_CAVM_RPC)_FILES += $(SUPERVISOR_PROC_EXIT_LISTENER_SCRIPT)
ifeq ($(INSTALL_DEBUG_TOOLS), y)
$(DOCKER_SYNCD_CAVM_RPC)_DEPENDS += $(SYNCD_RPC_DBG) \
$(LIBSWSSCOMMON_DBG) \
1 change: 1 addition & 0 deletions platform/cavium/docker-syncd-cavm.mk
Original file line number Diff line number Diff line change
@@ -3,6 +3,7 @@
DOCKER_SYNCD_CAVM = docker-syncd-cavm.gz
$(DOCKER_SYNCD_CAVM)_PATH = $(PLATFORM_PATH)/docker-syncd-cavm
$(DOCKER_SYNCD_CAVM)_DEPENDS += $(SYNCD) $(CAVM_LIBSAI) $(XP_TOOLS) $(REDIS_TOOLS)
$(DOCKER_SYNCD_CAVM)_FILES += $(SUPERVISOR_PROC_EXIT_LISTENER_SCRIPT)
ifeq ($(INSTALL_DEBUG_TOOLS), y)
$(DOCKER_SYNCD_CAVM)_DEPENDS += $(SYNCD_DBG) \
$(LIBSWSSCOMMON_DBG) \
2 changes: 2 additions & 0 deletions platform/cavium/docker-syncd-cavm/Dockerfile.j2
Original file line number Diff line number Diff line change
@@ -23,6 +23,8 @@ debs/{{ deb }}{{' '}}

COPY ["start.sh", "/usr/bin/"]
COPY ["supervisord.conf", "/etc/supervisor/conf.d/"]
COPY ["files/supervisor-proc-exit-listener", "/usr/bin"]
COPY ["critical_processes", "/etc/supervisor/"]

COPY ["profile.ini", "/etc/ssw/AS7512/"]

1 change: 1 addition & 0 deletions platform/cavium/docker-syncd-cavm/critical_processes
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
syncd
8 changes: 7 additions & 1 deletion platform/cavium/docker-syncd-cavm/supervisord.conf
Original file line number Diff line number Diff line change
@@ -3,6 +3,12 @@ logfile_maxbytes=1MB
logfile_backups=2
nodaemon=true

[eventlistener:supervisor-proc-exit-listener]
command=/usr/bin/supervisor-proc-exit-listener
events=PROCESS_STATE_EXITED
autostart=true
autorestart=unexpected

[program:start.sh]
command=/usr/bin/start.sh
priority=1
@@ -15,7 +21,7 @@ stderr_logfile=syslog
command=/usr/sbin/rsyslogd -n
priority=2
autostart=false
autorestart=false
autorestart=unexpected
stdout_logfile=syslog
stderr_logfile=syslog

1 change: 1 addition & 0 deletions platform/centec/docker-syncd-centec-rpc.mk
Original file line number Diff line number Diff line change
@@ -3,6 +3,7 @@
DOCKER_SYNCD_CENTEC_RPC = docker-syncd-centec-rpc.gz
$(DOCKER_SYNCD_CENTEC_RPC)_PATH = $(PLATFORM_PATH)/docker-syncd-centec-rpc
$(DOCKER_SYNCD_CENTEC_RPC)_DEPENDS += $(SYNCD_RPC) $(LIBTHRIFT)
$(DOCKER_SYNCD_CENTEC_RPC)_FILES += $(SUPERVISOR_PROC_EXIT_LISTENER_SCRIPT)
ifeq ($(INSTALL_DEBUG_TOOLS), y)
$(DOCKER_SYNCD_CENTEC_RPC)_DEPENDS += $(SYNCD_RPC_DBG) \
$(LIBSWSSCOMMON_DBG) \
1 change: 1 addition & 0 deletions platform/centec/docker-syncd-centec.mk
Original file line number Diff line number Diff line change
@@ -3,6 +3,7 @@
DOCKER_SYNCD_CENTEC = docker-syncd-centec.gz
$(DOCKER_SYNCD_CENTEC)_PATH = $(PLATFORM_PATH)/docker-syncd-centec
$(DOCKER_SYNCD_CENTEC)_DEPENDS += $(SYNCD)
$(DOCKER_SYNCD_CENTEC)_FILES += $(SUPERVISOR_PROC_EXIT_LISTENER_SCRIPT)
ifeq ($(INSTALL_DEBUG_TOOLS), y)
$(DOCKER_SYNCD_CENTEC)_DEPENDS += $(SYNCD_DBG) \
$(LIBSWSSCOMMON_DBG) \
2 changes: 2 additions & 0 deletions platform/centec/docker-syncd-centec/Dockerfile.j2
Original file line number Diff line number Diff line change
@@ -24,6 +24,8 @@ RUN apt-get install -f kmod

COPY ["start.sh", "/usr/bin/"]
COPY ["supervisord.conf", "/etc/supervisor/conf.d/"]
COPY ["files/supervisor-proc-exit-listener", "/usr/bin"]
COPY ["critical_processes", "/etc/supervisor/"]

## Clean up
RUN apt-get clean -y; apt-get autoclean -y; apt-get autoremove -y
1 change: 1 addition & 0 deletions platform/centec/docker-syncd-centec/critical_processes
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
syncd
8 changes: 7 additions & 1 deletion platform/centec/docker-syncd-centec/supervisord.conf
Original file line number Diff line number Diff line change
@@ -3,6 +3,12 @@ logfile_maxbytes=1MB
logfile_backups=2
nodaemon=true

[eventlistener:supervisor-proc-exit-listener]
command=/usr/bin/supervisor-proc-exit-listener
events=PROCESS_STATE_EXITED
autostart=true
autorestart=unexpected

[program:start.sh]
command=/usr/bin/start.sh
priority=1
@@ -15,7 +21,7 @@ stderr_logfile=syslog
command=/usr/sbin/rsyslogd -n
priority=2
autostart=false
autorestart=false
autorestart=unexpected
stdout_logfile=syslog
stderr_logfile=syslog

1 change: 1 addition & 0 deletions platform/marvell-arm64/docker-syncd-mrvl-rpc.mk
Original file line number Diff line number Diff line change
@@ -3,6 +3,7 @@
DOCKER_SYNCD_MRVL_RPC = docker-syncd-mrvl-rpc.gz
$(DOCKER_SYNCD_MRVL_RPC)_PATH = $(PLATFORM_PATH)/docker-syncd-mrvl-rpc
$(DOCKER_SYNCD_MRVL_RPC)_DEPENDS += $(SYNCD_RPC) $(LIBTHRIFT)
$(DOCKER_SYNCD_MRVL_RPC)_FILES += $(SUPERVISOR_PROC_EXIT_LISTENER_SCRIPT)
ifeq ($(INSTALL_DEBUG_TOOLS), y)
$(DOCKER_SYNCD_MRVL_RPC)_DEPENDS += $(SYNCD_RPC_DBG) \
$(LIBSWSSCOMMON_DBG) \
2 changes: 2 additions & 0 deletions platform/marvell-arm64/docker-syncd-mrvl/Dockerfile.j2
Original file line number Diff line number Diff line change
@@ -28,6 +28,8 @@ debs/{{ deb }}{{' '}}

COPY ["start.sh", "/usr/bin/"]
COPY ["supervisord.conf", "/etc/supervisor/conf.d/"]
COPY ["files/supervisor-proc-exit-listener", "/usr/bin"]
COPY ["critical_processes", "/etc/supervisor/"]

## Clean up
RUN apt-get clean -y; apt-get autoclean -y; apt-get autoremove -y
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
syncd
1 change: 1 addition & 0 deletions platform/marvell-armhf/docker-syncd-mrvl-rpc.mk
Original file line number Diff line number Diff line change
@@ -3,6 +3,7 @@
DOCKER_SYNCD_MRVL_RPC = docker-syncd-mrvl-rpc.gz
$(DOCKER_SYNCD_MRVL_RPC)_PATH = $(PLATFORM_PATH)/docker-syncd-mrvl-rpc
$(DOCKER_SYNCD_MRVL_RPC)_DEPENDS += $(SYNCD_RPC) $(LIBTHRIFT)
$(DOCKER_SYNCD_MRVL_RPC)_FILES += $(SUPERVISOR_PROC_EXIT_LISTENER_SCRIPT)
ifeq ($(INSTALL_DEBUG_TOOLS), y)
$(DOCKER_SYNCD_MRVL_RPC)_DEPENDS += $(SYNCD_RPC_DBG) \
$(LIBSWSSCOMMON_DBG) \
2 changes: 2 additions & 0 deletions platform/marvell-armhf/docker-syncd-mrvl/Dockerfile.j2
Original file line number Diff line number Diff line change
@@ -28,6 +28,8 @@ debs/{{ deb }}{{' '}}

COPY ["start.sh", "/usr/bin/"]
COPY ["supervisord.conf", "/etc/supervisor/conf.d/"]
COPY ["files/supervisor-proc-exit-listener", "/usr/bin"]
COPY ["critical_processes", "/etc/supervisor/"]

## Clean up
RUN apt-get clean -y; apt-get autoclean -y; apt-get autoremove -y
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
syncd
1 change: 1 addition & 0 deletions platform/marvell/docker-syncd-mrvl-rpc.mk
Original file line number Diff line number Diff line change
@@ -3,6 +3,7 @@
DOCKER_SYNCD_MRVL_RPC = docker-syncd-mrvl-rpc.gz
$(DOCKER_SYNCD_MRVL_RPC)_PATH = $(PLATFORM_PATH)/docker-syncd-mrvl-rpc
$(DOCKER_SYNCD_MRVL_RPC)_DEPENDS += $(SYNCD_RPC) $(LIBTHRIFT)
$(DOCKER_SYNCD_MRVL_RPC)_FILES += $(SUPERVISOR_PROC_EXIT_LISTENER_SCRIPT)
ifeq ($(INSTALL_DEBUG_TOOLS), y)
$(DOCKER_SYNCD_MRVL_RPC)_DEPENDS += $(SYNCD_RPC_DBG) \
$(LIBSWSSCOMMON_DBG) \
2 changes: 2 additions & 0 deletions platform/marvell/docker-syncd-mrvl/Dockerfile.j2
Original file line number Diff line number Diff line change
@@ -23,6 +23,8 @@ debs/{{ deb }}{{' '}}

COPY ["start.sh", "syncd.sh", "/usr/bin/"]
COPY ["supervisord.conf", "/etc/supervisor/conf.d/"]
COPY ["files/supervisor-proc-exit-listener", "/usr/bin"]
COPY ["critical_processes", "/etc/supervisor/"]

## Clean up
RUN apt-get clean -y; apt-get autoclean -y; apt-get autoremove -y
1 change: 1 addition & 0 deletions platform/marvell/docker-syncd-mrvl/critical_processes
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
syncd
8 changes: 7 additions & 1 deletion platform/marvell/docker-syncd-mrvl/supervisord.conf
Original file line number Diff line number Diff line change
@@ -3,6 +3,12 @@ logfile_maxbytes=1MB
logfile_backups=2
nodaemon=true

[eventlistener:supervisor-proc-exit-listener]
command=/usr/bin/supervisor-proc-exit-listener
events=PROCESS_STATE_EXITED
autostart=true
autorestart=unexpected

[program:start.sh]
command=/usr/bin/start.sh
priority=1
@@ -15,7 +21,7 @@ stderr_logfile=syslog
command=/usr/sbin/rsyslogd -n
priority=2
autostart=false
autorestart=false
autorestart=unexpected
stdout_logfile=syslog
stderr_logfile=syslog

1 change: 1 addition & 0 deletions platform/mellanox/docker-syncd-mlnx-rpc.mk
Original file line number Diff line number Diff line change
@@ -3,6 +3,7 @@
DOCKER_SYNCD_MLNX_RPC = docker-syncd-mlnx-rpc.gz
$(DOCKER_SYNCD_MLNX_RPC)_PATH = $(PLATFORM_PATH)/docker-syncd-mlnx-rpc
$(DOCKER_SYNCD_MLNX_RPC)_DEPENDS += $(SYNCD_RPC) $(LIBTHRIFT)
$(DOCKER_SYNCD_MLNX_RPC)_FILES += $(SUPERVISOR_PROC_EXIT_LISTENER_SCRIPT)
ifeq ($(INSTALL_DEBUG_TOOLS), y)
$(DOCKER_SYNCD_MLNX_RPC)_DEPENDS += $(SYNCD_RPC_DBG) \
$(LIBSWSSCOMMON_DBG) \
2 changes: 2 additions & 0 deletions platform/mellanox/docker-syncd-mlnx/Dockerfile.j2
Original file line number Diff line number Diff line change
@@ -35,5 +35,7 @@ RUN apt-get clean -y && \

COPY ["start.sh", "/usr/bin/"]
COPY ["supervisord.conf", "/etc/supervisor/conf.d/"]
COPY ["files/supervisor-proc-exit-listener", "/usr/bin"]
COPY ["critical_processes", "/etc/supervisor/"]

ENTRYPOINT ["/usr/bin/supervisord"]
1 change: 1 addition & 0 deletions platform/mellanox/docker-syncd-mlnx/critical_processes
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
syncd
8 changes: 7 additions & 1 deletion platform/mellanox/docker-syncd-mlnx/supervisord.conf
Original file line number Diff line number Diff line change
@@ -3,6 +3,12 @@ logfile_maxbytes=1MB
logfile_backups=2
nodaemon=true

[eventlistener:supervisor-proc-exit-listener]
command=/usr/bin/supervisor-proc-exit-listener
events=PROCESS_STATE_EXITED
autostart=true
autorestart=unexpected

[program:start.sh]
command=/usr/bin/start.sh
priority=1
@@ -15,7 +21,7 @@ stderr_logfile=syslog
command=/usr/sbin/rsyslogd -n
priority=2
autostart=false
autorestart=false
autorestart=unexpected
stdout_logfile=syslog
stderr_logfile=syslog

2 changes: 2 additions & 0 deletions platform/nephos/docker-syncd-nephos/Dockerfile.j2
Original file line number Diff line number Diff line change
@@ -36,6 +36,8 @@ COPY ["files/dsserve", "files/npx_diag", "start.sh", "/usr/bin/"]
RUN chmod +x /usr/bin/npx_diag /usr/bin/dsserve

COPY ["supervisord.conf", "/etc/supervisor/conf.d/"]
COPY ["files/supervisor-proc-exit-listener", "/usr/bin"]
COPY ["critical_processes", "/etc/supervisor/"]

## Clean up
RUN apt-get clean -y; apt-get autoclean -y; apt-get autoremove -y
2 changes: 2 additions & 0 deletions platform/nephos/docker-syncd-nephos/critical_processes
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
dsserve
syncd
8 changes: 7 additions & 1 deletion platform/nephos/docker-syncd-nephos/supervisord.conf
Original file line number Diff line number Diff line change
@@ -3,6 +3,12 @@ logfile_maxbytes=1MB
logfile_backups=2
nodaemon=true

[eventlistener:supervisor-proc-exit-listener]
command=/usr/bin/supervisor-proc-exit-listener
events=PROCESS_STATE_EXITED
autostart=true
autorestart=unexpected

[program:start.sh]
command=/usr/bin/start.sh
priority=1
@@ -15,7 +21,7 @@ stderr_logfile=syslog
command=/usr/sbin/rsyslogd -n
priority=2
autostart=false
autorestart=false
autorestart=unexpected
stdout_logfile=syslog
stderr_logfile=syslog

2 changes: 2 additions & 0 deletions platform/template/docker-syncd-base.mk
Original file line number Diff line number Diff line change
@@ -7,6 +7,8 @@ DOCKER_SYNCD_BASE_DBG = $(DOCKER_SYNCD_BASE_STEM)-$(DBG_IMAGE_MARK).gz

$(DOCKER_SYNCD_BASE)_PATH = $(PLATFORM_PATH)/docker-syncd-$(DOCKER_SYNCD_PLATFORM_CODE)

$(DOCKER_SYNCD_BASE)_FILES += $(SUPERVISOR_PROC_EXIT_LISTENER_SCRIPT)

$(DOCKER_SYNCD_BASE)_LOAD_DOCKERS += $(DOCKER_CONFIG_ENGINE_STRETCH)

$(DOCKER_SYNCD_BASE)_DBG_DEPENDS += $($(DOCKER_CONFIG_ENGINE_STRETCH)_DBG_DEPENDS)