This repository has been archived on 2025-03-20. You can view files and clone it, but cannot push or open issues or pull requests.
sonic-buildimage/files
yozhao101 d8ae2a0019 [hostcfgd] Enable/disable the container service only when the feature state was changed. (#5689)
**- Why I did it**
If we ran the CLI commands `sudo config feature autorestart snmp disabled/enabled` or `sudo config feature autorestart swss disabled/enabled`, then SNMP container will be stopped and started. This behavior was not expected since we updated the `auto_restart` field not update `state` field in `FEATURE` table. The reason behind this issue is that either `state` field or `auto_restart` field was updated, the function `update_feature_state(...)` will be invoked which then starts snmp.timer service.
The snmp.timer service will first stop snmp.service and later start snmp.service. 

In order to solve this issue, the function `update_feature_state(...)` will be only invoked if `state` field in `FEATURE` table was
updated.

**- How I did it**
When the demon `hostcfgd` was activated, all the values of `state` field in `FEATURE` table of each container will be
cached. Each time the function `feature_state_handler(...)` is invoked, it will determine whether the `state` field of a
container was changed or not. If it was changed, function `update_feature_state(...)` will be invoked and the cached
value will also be updated. Otherwise, nothing will be done.

**- How to verify it**
We can run the CLI commands `sudo config feature autorestart snmp disabled/enabled` or `sudo config feature autorestart swss disabled/enabled` to check whether SNMP container is stopped and started. We also can run the CLI commands  `sudo config feature state snmp disabled/enabled` or `sudo config feature state swss disabled/enabled` to check whether the container is stopped and restarted.

Signed-off-by: Yong Zhao <yozhao@microsoft.com>
2020-10-23 15:45:04 -07:00
..
Aboot [Arista] Update drivers submodules (#4353) 2020-04-01 23:26:42 -07:00
apt [apt] Instruct apt-get to NOT check the "Valid Until" date in Release files (#3973) 2020-01-21 10:43:51 -08:00
build_scripts [build]: combine feature and container feature table (#5081) 2020-08-09 11:55:40 -07:00
build_templates [platform] Add Support For Environment Variable File (#5010) 2020-09-28 21:14:39 +00:00
dhcp ZTP infrastructure changes to support DHCP discovery provisioning data (#3298) 2020-03-03 22:23:59 -08:00
docker Enabling ipv6 support on docker container network. This is needed (#5418) 2020-09-22 11:38:19 -07:00
image_config [hostcfgd] Enable/disable the container service only when the feature state was changed. (#5689) 2020-10-23 15:45:04 -07:00
initramfs-tools [arista/aboot]: Zero out 1st MB before repartitioning (#5220) 2020-08-22 18:48:26 -07:00
scripts [build]: combine feature and container feature table (#5081) 2020-08-09 11:55:40 -07:00
sshd [security] Do not generate ssh server keys for non RSA protocols (#2718) 2019-03-29 15:27:33 -07:00