sonic-buildimage/files/build_templates/per_namespace/swss.service.j2
Stepan Blyshchak 7fb5a72d23 [services] introduce sonic.target (#5705)
- Why I did it
Group all SONiC services together and able to manage them together. Will be used in config reload command as much simpler and generic way to restart services.

- How I did it
Add services to sonic.target

- How to verify it
Together with Azure/sonic-utilities#1199
config reload -y

Signed-off-by: Stepan Blyshchak <stepanb@nvidia.com>
2021-03-04 21:23:05 +00:00

32 lines
1008 B
Django/Jinja

[Unit]
Description=switch state service
Requires=database{% if multi_instance == 'true' %}@%i{% endif %}.service
After=database{% if multi_instance == 'true' %}@%i{% endif %}.service
{% if multi_instance == 'true' and sonic_asic_platform == 'vs' %}
Requires=topology.service
After=topology.service
{% endif %}
{% if sonic_asic_platform == 'broadcom' %}
Requires=opennsl-modules.service
{% endif %}
Requires=updategraph.service
After=updategraph.service
After=interfaces-config.service
BindsTo=sonic.target
After=sonic.target
Before=ntp-config.service pmon.service
StartLimitIntervalSec=1200
StartLimitBurst=3
[Service]
User=root
Environment=sonic_asic_platform={{ sonic_asic_platform }}
ExecStartPre=/usr/local/bin/swss.sh start{% if multi_instance == 'true' %} %i{% endif %}
ExecStart=/usr/local/bin/swss.sh wait{% if multi_instance == 'true' %} %i{% endif %}
ExecStop=/usr/local/bin/swss.sh stop{% if multi_instance == 'true' %} %i{% endif %}
Restart=always
RestartSec=30
[Install]
WantedBy=sonic.target