51ab39fcb2
Features may be enabled/disabled for the same topology based on run-time configuration. This PR adds the ability to enable/disable feature based on config db data. signed-off-by: Tamer Ahmed <tamer.ahmed@microsoft.com>
14 lines
511 B
Python
Executable File
14 lines
511 B
Python
Executable File
#!/usr/bin/env python3
|
|
|
|
import json
|
|
import subprocess
|
|
|
|
INIT_CFG_FILE_PATH = '/etc/sonic/init_cfg.json'
|
|
|
|
with open(INIT_CFG_FILE_PATH) as init_cfg_file:
|
|
init_cfg = json.load(init_cfg_file)
|
|
if 'FEATURE' in init_cfg:
|
|
for feature_name, feature_props in init_cfg['FEATURE'].items():
|
|
if 'state' in feature_props and feature_props['state'] != 'enabled' and feature_props['state'] != 'always_enabled':
|
|
subprocess.run(['systemctl', 'mask', '{}.service'.format(feature_name)])
|