sonic-buildimage/src/sonic-yang-models/yang-models/sonic-feature.yang

90 lines
2.6 KiB
YANG
Raw Normal View History

module sonic-feature{
yang-version 1.1;
namespace "http://github.com/Azure/sonic-feature";
prefix feature;
description "Feature Table yang Module for SONiC";
typedef feature-state {
description "configuration to set the feature running state";
type string {
pattern "enabled|disabled|always_enabled|always_disabled";
}
}
typedef feature-owner {
description "configuration to set if the container is controlled
by kubernetes or locally";
type string {
pattern "kube|local";
}
}
container sonic-feature {
container FEATURE {
description "feature table in config_db.json";
list FEATURE_LIST {
key "name";
leaf name {
description "feature name in Feature table";
type string {
length 1..32;
}
}
leaf state {
description "state of the feature";
type feature-state;
default "enabled";
}
leaf auto_restart {
type feature-state;
default "enabled";
}
leaf has_timer {
description "This configuration identicates if there is
timer associated to this feature";
type boolean;
default false;
}
leaf has_global_scope {
description "This configuration identicates there will only one service
spawned for the device";
type boolean;
default false;
}
leaf has_per_asic_scope {
description "This configuration identicates there will only one service
spawned per asic";
type boolean;
default false;
}
leaf high_mem_alert {
description "This configuration controls the trigger to generate
alert on high memory utilization";
type feature-state;
default "disabled";
}
leaf set_owner {
description " This configuration set the feature owner is
kubernetes or local";
type feature-owner;
default "local";
}
}
}
}
}