@@ -28,14 +28,14 @@ func (l *Container) applyContainerRules(object storage.StoreObject, errorList *e
2828 errorList = errorList .WithFilePath (object .GetPath ())
2929
3030 rules .NewRecommendedLabelsRule ().ObjectRecommendedLabels (object , errorList .WithRule ("recommended-labels" ).WithMaxLevel (l .cfg .Rules .RecommendedLabelsRule .GetLevel ()))
31- rules .NewNamespaceLabelsRule ().ObjectNamespaceLabels (object , errorList )
32- rules .NewAPIVersionRule ().ObjectAPIVersion (object , errorList )
33- rules .NewPriorityClassRule ().ObjectPriorityClass (object , errorList )
31+ rules .NewNamespaceLabelsRule ().ObjectNamespaceLabels (object , errorList . WithRule ( "namespace-labels" ). WithMaxLevel ( l . cfg . Rules . NamespaceLabelsRule . GetLevel ()) )
32+ rules .NewAPIVersionRule ().ObjectAPIVersion (object , errorList . WithRule ( "api-version" ). WithMaxLevel ( l . cfg . Rules . ApiVersionRule . GetLevel ()) )
33+ rules .NewPriorityClassRule ().ObjectPriorityClass (object , errorList . WithRule ( "priority-class" ). WithMaxLevel ( l . cfg . Rules . PriorityClassRule . GetLevel ()) )
3434 rules .NewDNSPolicyRule (l .cfg .ExcludeRules .DNSPolicy .Get ()).
35- ObjectDNSPolicy (object , errorList )
35+ ObjectDNSPolicy (object , errorList . WithRule ( "dns-policy" ). WithMaxLevel ( l . cfg . Rules . DNSPolicyRule . GetLevel ()) )
3636 rules .NewControllerSecurityContextRule (l .cfg .ExcludeRules .ControllerSecurityContext .Get ()).
37- ControllerSecurityContext (object , errorList )
38- rules .NewRevisionHistoryLimitRule ().ObjectRevisionHistoryLimit (object , errorList )
37+ ControllerSecurityContext (object , errorList . WithRule ( "controller-security-context" ). WithMaxLevel ( l . cfg . Rules . ControllerSecurityContextRule . GetLevel ()) )
38+ rules .NewRevisionHistoryLimitRule ().ObjectRevisionHistoryLimit (object , errorList . WithRule ( "revision-history-limit" ). WithMaxLevel ( l . cfg . Rules . NewRevisionHistoryLimitRule . GetLevel ()) )
3939
4040 allContainers , err := object .GetAllContainers ()
4141 if err != nil {
@@ -50,24 +50,44 @@ func (l *Container) applyContainerRules(object storage.StoreObject, errorList *e
5050 }
5151
5252 containerRules := []func (storage.StoreObject , []corev1.Container , * errors.LintRuleErrorsList ){
53- rules .NewNameDuplicatesRule ().ContainerNameDuplicates ,
54- rules .NewCheckReadOnlyRootFilesystemRule (l .cfg .ExcludeRules .ReadOnlyRootFilesystem .Get ()).
55- ObjectReadOnlyRootFilesystem ,
56- rules .NewNoNewPrivilegesRule (l .cfg .ExcludeRules .NoNewPrivileges .Get ()).
57- ContainerNoNewPrivileges ,
58- rules .NewSeccompProfileRule (l .cfg .ExcludeRules .SeccompProfile .Get ()).
59- ContainerSeccompProfile ,
60- rules .NewHostNetworkPortsRule (l .cfg .ExcludeRules .HostNetworkPorts .Get ()).ObjectHostNetworkPorts ,
61-
62- // old with module names skipping
63- rules .NewEnvVariablesDuplicatesRule ().ContainerEnvVariablesDuplicates ,
64- rules .NewImageDigestRule (l .cfg .ExcludeRules .ImageDigest .Get ()).ContainerImageDigestCheck ,
65- rules .NewImagePullPolicyRule ().ContainersImagePullPolicy ,
66- rules .NewResourcesRule (l .cfg .ExcludeRules .Resources .Get ()).
67- ContainerStorageEphemeral ,
68- rules .NewContainerSecurityContextRule (l .cfg .ExcludeRules .SecurityContext .Get ()).
69- ContainerSecurityContext ,
70- rules .NewPortsRule (l .cfg .ExcludeRules .Ports .Get ()).ContainerPorts ,
53+ func (object storage.StoreObject , containers []corev1.Container , errorList * errors.LintRuleErrorsList ) {
54+ rules .NewNameDuplicatesRule ().ContainerNameDuplicates (object , containers , errorList .WithRule ("name-duplicates" ).WithMaxLevel (l .cfg .Rules .NameDuplicatesRule .GetLevel ()))
55+ },
56+ func (object storage.StoreObject , containers []corev1.Container , errorList * errors.LintRuleErrorsList ) {
57+ rules .NewCheckReadOnlyRootFilesystemRule (l .cfg .ExcludeRules .ReadOnlyRootFilesystem .Get ()).
58+ ObjectReadOnlyRootFilesystem (object , containers , errorList .WithRule ("read-only-root-filesystem" ).WithMaxLevel (l .cfg .Rules .ReadOnlyRootFilesystemRule .GetLevel ()))
59+ },
60+ func (object storage.StoreObject , containers []corev1.Container , errorList * errors.LintRuleErrorsList ) {
61+ rules .NewNoNewPrivilegesRule (l .cfg .ExcludeRules .NoNewPrivileges .Get ()).
62+ ContainerNoNewPrivileges (object , containers , errorList .WithRule ("no-new-privileges" ).WithMaxLevel (l .cfg .Rules .NoNewPrivilegesRule .GetLevel ()))
63+ },
64+ func (object storage.StoreObject , containers []corev1.Container , errorList * errors.LintRuleErrorsList ) {
65+ rules .NewSeccompProfileRule (l .cfg .ExcludeRules .SeccompProfile .Get ()).
66+ ContainerSeccompProfile (object , containers , errorList .WithRule ("seccomp-profile" ).WithMaxLevel (l .cfg .Rules .SeccompProfileRule .GetLevel ()))
67+ },
68+ func (object storage.StoreObject , containers []corev1.Container , errorList * errors.LintRuleErrorsList ) {
69+ rules .NewHostNetworkPortsRule (l .cfg .ExcludeRules .HostNetworkPorts .Get ()).ObjectHostNetworkPorts (object , containers , errorList .WithRule ("host-network-ports" ).WithMaxLevel (l .cfg .Rules .HostNetworkPortsRule .GetLevel ()))
70+ },
71+ func (object storage.StoreObject , containers []corev1.Container , errorList * errors.LintRuleErrorsList ) {
72+ rules .NewEnvVariablesDuplicatesRule ().ContainerEnvVariablesDuplicates (object , containers , errorList .WithRule ("env-variables-duplicates" ).WithMaxLevel (l .cfg .Rules .EnvVariablesDuplicatesRule .GetLevel ()))
73+ },
74+ func (object storage.StoreObject , containers []corev1.Container , errorList * errors.LintRuleErrorsList ) {
75+ rules .NewImageDigestRule (l .cfg .ExcludeRules .ImageDigest .Get ()).ContainerImageDigestCheck (object , containers , errorList .WithRule ("image-digest" ).WithMaxLevel (l .cfg .Rules .ImageDigestRule .GetLevel ()))
76+ },
77+ func (object storage.StoreObject , containers []corev1.Container , errorList * errors.LintRuleErrorsList ) {
78+ rules .NewImagePullPolicyRule ().ContainersImagePullPolicy (object , containers , errorList .WithRule ("image-pull-policy" ).WithMaxLevel (l .cfg .Rules .ImagePullPolicyRule .GetLevel ()))
79+ },
80+ func (object storage.StoreObject , containers []corev1.Container , errorList * errors.LintRuleErrorsList ) {
81+ rules .NewResourcesRule (l .cfg .ExcludeRules .Resources .Get ()).
82+ ContainerStorageEphemeral (object , containers , errorList .WithRule ("resources" ).WithMaxLevel (l .cfg .Rules .ResourcesRule .GetLevel ()))
83+ },
84+ func (object storage.StoreObject , containers []corev1.Container , errorList * errors.LintRuleErrorsList ) {
85+ rules .NewContainerSecurityContextRule (l .cfg .ExcludeRules .SecurityContext .Get ()).
86+ ContainerSecurityContext (object , containers , errorList .WithRule ("container-security-context" ).WithMaxLevel (l .cfg .Rules .ContainerSecurityContextRule .GetLevel ()))
87+ },
88+ func (object storage.StoreObject , containers []corev1.Container , errorList * errors.LintRuleErrorsList ) {
89+ rules .NewPortsRule (l .cfg .ExcludeRules .Ports .Get ()).ContainerPorts (object , containers , errorList .WithRule ("ports" ).WithMaxLevel (l .cfg .Rules .PortsRule .GetLevel ()))
90+ },
7191 }
7292
7393 for _ , rule := range containerRules {
@@ -87,10 +107,14 @@ func (l *Container) applyContainerRules(object storage.StoreObject, errorList *e
87107 }
88108
89109 notInitContainerRules := []func (storage.StoreObject , []corev1.Container , * errors.LintRuleErrorsList ){
90- rules .NewLivenessRule (l .cfg .ExcludeRules .Liveness .Get ()).
91- CheckProbe ,
92- rules .NewReadinessRule (l .cfg .ExcludeRules .Readiness .Get ()).
93- CheckProbe ,
110+ func (object storage.StoreObject , containers []corev1.Container , errorList * errors.LintRuleErrorsList ) {
111+ rules .NewLivenessRule (l .cfg .ExcludeRules .Liveness .Get ()).
112+ CheckProbe (object , containers , errorList .WithRule ("liveness-probe" ).WithMaxLevel (l .cfg .Rules .LivenessRule .GetLevel ()))
113+ },
114+ func (object storage.StoreObject , containers []corev1.Container , errorList * errors.LintRuleErrorsList ) {
115+ rules .NewReadinessRule (l .cfg .ExcludeRules .Readiness .Get ()).
116+ CheckProbe (object , containers , errorList .WithRule ("readiness-probe" ).WithMaxLevel (l .cfg .Rules .ReadinessRule .GetLevel ()))
117+ },
94118 }
95119
96120 for _ , rule := range notInitContainerRules {
0 commit comments