diff --git a/pkg/KubeArmorOperator/common/defaults.go b/pkg/KubeArmorOperator/common/defaults.go index 2fa47f273..1ad7bb5b3 100644 --- a/pkg/KubeArmorOperator/common/defaults.go +++ b/pkg/KubeArmorOperator/common/defaults.go @@ -74,6 +74,8 @@ var ( // KubeArmorConfigMapName string = "kubearmor-config" + KubeArmorConfigFileName string = "karmor.yaml" + // ConfigMap Data ConfigGRPC string = "gRPC" ConfigVisibility string = "visibility" diff --git a/pkg/KubeArmorOperator/internal/controller/cluster.go b/pkg/KubeArmorOperator/internal/controller/cluster.go index 2b2f9783e..5d632bedf 100755 --- a/pkg/KubeArmorOperator/internal/controller/cluster.go +++ b/pkg/KubeArmorOperator/internal/controller/cluster.go @@ -1229,35 +1229,43 @@ func UpdateRecommendedPolicyConfig(config *opv1.KubeArmorConfigSpec) bool { func UpdateConfigMapData(config *opv1.KubeArmorConfigSpec) bool { updated := false + configMapData := "" + if config.DefaultFilePosture != "" { if common.ConfigMapData[common.ConfigDefaultFilePosture] != string(config.DefaultFilePosture) { common.ConfigMapData[common.ConfigDefaultFilePosture] = string(config.DefaultFilePosture) updated = true } + configMapData += fmt.Sprintf("defaultFilePosture: %s\n", config.DefaultFilePosture) } if config.DefaultCapabilitiesPosture != "" { if common.ConfigMapData[common.ConfigDefaultCapabilitiesPosture] != string(config.DefaultCapabilitiesPosture) { common.ConfigMapData[common.ConfigDefaultCapabilitiesPosture] = string(config.DefaultCapabilitiesPosture) updated = true } + configMapData += fmt.Sprintf("defaultCapabilitiesPosture: %s\n", config.DefaultCapabilitiesPosture) } if config.DefaultNetworkPosture != "" { if common.ConfigMapData[common.ConfigDefaultNetworkPosture] != string(config.DefaultNetworkPosture) { common.ConfigMapData[common.ConfigDefaultNetworkPosture] = string(config.DefaultNetworkPosture) updated = true } + configMapData += fmt.Sprintf("defaultNetworkPosture: %s\n", config.DefaultNetworkPosture) } if config.DefaultVisibility != "" { if common.ConfigMapData[common.ConfigVisibility] != config.DefaultVisibility { common.ConfigMapData[common.ConfigVisibility] = config.DefaultVisibility updated = true } + configMapData += fmt.Sprintf("defaultVisibility: %s\n", config.DefaultVisibility) } AlertThrottlingEnabled := strconv.FormatBool(config.AlertThrottling) if common.ConfigMapData[common.ConfigAlertThrottling] != AlertThrottlingEnabled { common.ConfigMapData[common.ConfigAlertThrottling] = AlertThrottlingEnabled updated = true } + configMapData += fmt.Sprintf("alertThrottling: %t\n", config.AlertThrottling) + MaxAlertPerSec := strconv.FormatInt(int64(config.MaxAlertPerSec), 10) if config.MaxAlertPerSec == 0 { MaxAlertPerSec = common.DefaultMaxAlertPerSec @@ -1266,6 +1274,7 @@ func UpdateConfigMapData(config *opv1.KubeArmorConfigSpec) bool { common.ConfigMapData[common.ConfigMaxAlertPerSec] = MaxAlertPerSec updated = true } + configMapData += fmt.Sprintf("maxAlertPerSec: %s\n", MaxAlertPerSec) ThrottleSec := strconv.FormatInt(int64(config.ThrottleSec), 10) if config.ThrottleSec == 0 { @@ -1275,6 +1284,10 @@ func UpdateConfigMapData(config *opv1.KubeArmorConfigSpec) bool { common.ConfigMapData[common.ConfigThrottleSec] = ThrottleSec updated = true } + configMapData += fmt.Sprintf("throttleSec: %s\n", ThrottleSec) + + common.ConfigMapData[common.KubeArmorConfigFileName] = configMapData + return updated }