**- Why I did it** python2 is end of life and SONiC is going to support python3. This PR is going to support: 1. Build pmon daemons with python3 2. Install and run python3 version pmon daemons **- How I did it** 1. Change pmon daemons make files to build bothe python2 and python3 whl 2. Change docker-platform-monitor make files to install both python2 and python3 whl 3. Change pmon docker startup files to start pmon daemons according to the supported platform API version
151 lines
3.5 KiB
Django/Jinja
151 lines
3.5 KiB
Django/Jinja
[supervisord]
|
|
logfile_maxbytes=1MB
|
|
logfile_backups=2
|
|
nodaemon=true
|
|
|
|
[eventlistener:dependent-startup]
|
|
command=python3 -m supervisord_dependent_startup
|
|
autostart=true
|
|
autorestart=unexpected
|
|
startretries=0
|
|
exitcodes=0,3
|
|
events=PROCESS_STATE
|
|
buffer_size=100
|
|
|
|
[eventlistener:supervisor-proc-exit-listener]
|
|
command=/usr/bin/supervisor-proc-exit-listener --container-name pmon
|
|
events=PROCESS_STATE_EXITED
|
|
autostart=true
|
|
autorestart=unexpected
|
|
|
|
[program:rsyslogd]
|
|
command=/usr/sbin/rsyslogd -n -iNONE
|
|
priority=1
|
|
autostart=false
|
|
autorestart=false
|
|
stdout_logfile=syslog
|
|
stderr_logfile=syslog
|
|
dependent_startup=true
|
|
|
|
{% if not skip_chassisd and IS_MODULAR_CHASSIS == 1 %}
|
|
[program:chassisd]
|
|
command=/usr/local/bin/chassisd
|
|
priority=3
|
|
autostart=false
|
|
autorestart=false
|
|
stdout_logfile=syslog
|
|
stderr_logfile=syslog
|
|
startsecs=0
|
|
dependent_startup=true
|
|
dependent_startup_wait_for=rsyslogd:running
|
|
{% endif %}
|
|
|
|
{% if not skip_sensors and HAVE_SENSORS_CONF == 1 %}
|
|
[program:lm-sensors]
|
|
command=/usr/bin/lm-sensors.sh
|
|
priority=3
|
|
autostart=false
|
|
autorestart=false
|
|
stdout_logfile=syslog
|
|
stderr_logfile=syslog
|
|
startsecs=0
|
|
dependent_startup=true
|
|
dependent_startup_wait_for=rsyslogd:running
|
|
{% endif %}
|
|
|
|
{% if not skip_fancontrol and HAVE_FANCONTROL_CONF == 1 %}
|
|
[program:fancontrol]
|
|
command=/usr/sbin/fancontrol
|
|
priority=4
|
|
autostart=false
|
|
autorestart=unexpected
|
|
stdout_logfile=syslog
|
|
stderr_logfile=syslog
|
|
startsecs=10
|
|
dependent_startup=true
|
|
dependent_startup_wait_for=rsyslogd:running
|
|
{% endif %}
|
|
|
|
{% if not skip_ledd %}
|
|
[program:ledd]
|
|
command=/usr/local/bin/ledd
|
|
priority=5
|
|
autostart=false
|
|
autorestart=false
|
|
stdout_logfile=syslog
|
|
stderr_logfile=syslog
|
|
startsecs=0
|
|
dependent_startup=true
|
|
dependent_startup_wait_for=rsyslogd:running
|
|
{% endif %}
|
|
|
|
{% if not skip_xcvrd %}
|
|
[program:xcvrd]
|
|
{% if delay_xcvrd %}
|
|
command=bash -c "sleep 30 && {% if API_VERSION == 3 and 'xcvrd' not in python2_daemons %}python3 {% else %} python2 {% endif %}/usr/local/bin/xcvrd"
|
|
{% else %}
|
|
command={% if API_VERSION == 3 and 'xcvrd' not in python2_daemons %}python3 {% else %} python2 {% endif %}/usr/local/bin/xcvrd
|
|
{% endif %}
|
|
priority=6
|
|
autostart=false
|
|
autorestart=false
|
|
stdout_logfile=syslog
|
|
stderr_logfile=syslog
|
|
startsecs=0
|
|
dependent_startup=true
|
|
dependent_startup_wait_for=rsyslogd:running
|
|
{% endif %}
|
|
|
|
{% if not skip_psud %}
|
|
[program:psud]
|
|
command={% if API_VERSION == 3 and 'psud' not in python2_daemons %}python3 {% else %} python2 {% endif %}/usr/local/bin/psud
|
|
priority=7
|
|
autostart=false
|
|
autorestart=false
|
|
stdout_logfile=syslog
|
|
stderr_logfile=syslog
|
|
startsecs=0
|
|
dependent_startup=true
|
|
dependent_startup_wait_for=rsyslogd:running
|
|
{% endif %}
|
|
|
|
{% if not skip_syseepromd %}
|
|
[program:syseepromd]
|
|
command={% if API_VERSION == 3 and 'syseepromd' not in python2_daemons %}python3 {% else %} python2 {% endif %}/usr/local/bin/syseepromd
|
|
priority=8
|
|
autostart=false
|
|
autorestart=unexpected
|
|
stdout_logfile=syslog
|
|
stderr_logfile=syslog
|
|
startsecs=10
|
|
dependent_startup=true
|
|
dependent_startup_wait_for=rsyslogd:running
|
|
{% endif %}
|
|
|
|
{% if not skip_thermalctld %}
|
|
[program:thermalctld]
|
|
command={% if API_VERSION == 3 and 'thermalctld' not in python2_daemons %}python3 {% else %} python2 {% endif %}/usr/local/bin/thermalctld
|
|
priority=9
|
|
autostart=false
|
|
autorestart=unexpected
|
|
stdout_logfile=syslog
|
|
stderr_logfile=syslog
|
|
startsecs=10
|
|
startretries=50
|
|
dependent_startup=true
|
|
dependent_startup_wait_for=rsyslogd:running
|
|
{% endif %}
|
|
|
|
{% if not skip_pcied %}
|
|
[program:pcied]
|
|
command=/usr/local/bin/pcied
|
|
priority=10
|
|
autostart=false
|
|
autorestart=unexpected
|
|
stdout_logfile=syslog
|
|
stderr_logfile=syslog
|
|
startsecs=10
|
|
dependent_startup=true
|
|
dependent_startup_wait_for=rsyslogd:running
|
|
{% endif %}
|