Skip to content

Commit c3d0002

Browse files
authored
Merge pull request kubernetes#129072 from kannon92/add-validation-container-log-max
add kubelet validation for containerLogMaxFiles
2 parents 4c2acdd + a0b7401 commit c3d0002

File tree

2 files changed

+12
-0
lines changed

2 files changed

+12
-0
lines changed

pkg/kubelet/apis/config/validation/validation.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -342,6 +342,10 @@ func ValidateKubeletConfiguration(kc *kubeletconfig.KubeletConfiguration, featur
342342
allErrors = append(allErrors, fmt.Errorf("invalid configuration: containerLogMonitorInterval must be a positive time duration greater than or equal to 3s"))
343343
}
344344

345+
if kc.ContainerLogMaxFiles <= 1 {
346+
allErrors = append(allErrors, fmt.Errorf("invalid configuration: containerLogMaxFiles must be greater than 1"))
347+
}
348+
345349
if kc.PodLogsDir == "" {
346350
allErrors = append(allErrors, fmt.Errorf("invalid configuration: podLogsDir was not specified"))
347351
}

pkg/kubelet/apis/config/validation/validation_test.go

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,7 @@ var (
7979
},
8080
ContainerRuntimeEndpoint: "unix:///run/containerd/containerd.sock",
8181
ContainerLogMaxWorkers: 1,
82+
ContainerLogMaxFiles: 5,
8283
ContainerLogMonitorInterval: metav1.Duration{Duration: 10 * time.Second},
8384
SingleProcessOOMKill: ptr.To(!kubeletutil.IsCgroup2UnifiedMode()),
8485
CrashLoopBackOff: kubeletconfig.CrashLoopBackOffConfig{
@@ -700,6 +701,13 @@ func TestValidateKubeletConfiguration(t *testing.T) {
700701
return config
701702
},
702703
errMsg: `invalid configuration: pod logs path "/🧪" mut contains ASCII characters only`,
704+
}, {
705+
name: "invalid containerLogMaxFiles",
706+
configure: func(conf *kubeletconfig.KubeletConfiguration) *kubeletconfig.KubeletConfiguration {
707+
conf.ContainerLogMaxFiles = 1
708+
return conf
709+
},
710+
errMsg: "invalid configuration: containerLogMaxFiles must be greater than 1",
703711
}, {
704712
name: "invalid ContainerRuntimeEndpoint",
705713
configure: func(conf *kubeletconfig.KubeletConfiguration) *kubeletconfig.KubeletConfiguration {

0 commit comments

Comments
 (0)