Skip to content

Commit a7acbc8

Browse files
committed
C-0004 change type of memoryRequestMin and others to integer
1 parent 449f33f commit a7acbc8

File tree

3 files changed

+20
-32
lines changed

3 files changed

+20
-32
lines changed

configuration/policy-configuration-definition.yaml

+4-12
Original file line numberDiff line numberDiff line change
@@ -48,21 +48,13 @@ spec:
4848
type: integer
4949
type: array
5050
memoryLimitMax:
51-
items:
52-
type: integer
53-
type: array
51+
type: integer
5452
memoryLimitMin:
55-
items:
56-
type: integer
57-
type: array
53+
type: integer
5854
memoryRequestMax:
59-
items:
60-
type: integer
61-
type: array
55+
type: integer
6256
memoryRequestMin:
63-
items:
64-
type: integer
65-
type: array
57+
type: integer
6658
publicRegistries:
6759
items:
6860
type: string

controls/C-0004/policy.yaml

+12-12
Original file line numberDiff line numberDiff line change
@@ -24,27 +24,27 @@ spec:
2424
validations:
2525
- expression: >
2626
object.kind != 'Pod' || object.spec.containers.all(container, (!(!(has(container.resources)) || !(has(container.resources.requests)) || !(has(container.resources.requests.memory))) &&
27-
params.settings.memoryRequestMin.all(mRm, mRm <= int(container.resources.requests.memory)) &&
28-
params.settings.memoryRequestMax.all(mRm, mRm >= int(container.resources.requests.memory))) &&
27+
params.settings.memoryRequestMin <= int(container.resources.requests.memory) &&
28+
params.settings.memoryRequestMax >= int(container.resources.requests.memory)) &&
2929
(!(!(has(container.resources.limits)) || !(has(container.resources.limits.memory))) &&
30-
params.settings.memoryLimitMin.all(mRm, mRm <= int(container.resources.limits.memory)) &&
31-
params.settings.memoryLimitMax.all(mRm, mRm >= int(container.resources.limits.memory))))
30+
params.settings.memoryLimitMin <= int(container.resources.limits.memory) &&
31+
params.settings.memoryLimitMax >= int(container.resources.limits.memory)))
3232
message: "Pods contains container/s with memory limit or request not set or they are not in the specified range! (see more at https://hub.armosec.io/docs/c-0004)"
3333
3434
- expression: >
3535
['Deployment','ReplicaSet','DaemonSet','StatefulSet','Job'].all(kind, object.kind != kind) || object.spec.template.spec.containers.all(container, (!(!(has(container.resources)) || !(has(container.resources.requests)) || !(has(container.resources.requests.memory))) &&
36-
params.settings.memoryRequestMin.all(mRm, mRm <= int(container.resources.requests.memory)) &&
37-
params.settings.memoryRequestMax.all(mRm, mRm >= int(container.resources.requests.memory))) &&
36+
params.settings.memoryRequestMin <= int(container.resources.requests.memory) &&
37+
params.settings.memoryRequestMax >= int(container.resources.requests.memory)) &&
3838
(!(!(has(container.resources.limits)) || !(has(container.resources.limits.memory))) &&
39-
params.settings.memoryLimitMin.all(mRm, mRm <= int(container.resources.limits.memory)) &&
40-
params.settings.memoryLimitMax.all(mRm, mRm >= int(container.resources.limits.memory))))
39+
params.settings.memoryLimitMin <= int(container.resources.limits.memory) &&
40+
params.settings.memoryLimitMax >= int(container.resources.limits.memory)))
4141
message: "Workloads contains container/s with memory limit or request not set or they are not in the specified range! (see more at https://hub.armosec.io/docs/c-0004)"
4242
4343
- expression: >
4444
object.kind != 'CronJob' || object.spec.jobTemplate.spec.containers.all(container, (!(!(has(container.resources)) || !(has(container.resources.requests)) || !(has(container.resources.requests.memory))) &&
45-
params.settings.memoryRequestMin.all(mRm, mRm <= int(container.resources.requests.memory)) &&
46-
params.settings.memoryRequestMax.all(mRm, mRm >= int(container.resources.requests.memory))) &&
45+
params.settings.memoryRequestMin <= int(container.resources.requests.memory) &&
46+
params.settings.memoryRequestMax >= int(container.resources.requests.memory)) &&
4747
(!(!(has(container.resources.limits)) || !(has(container.resources.limits.memory))) &&
48-
params.settings.memoryLimitMin.all(mRm, mRm <= int(container.resources.limits.memory)) &&
49-
params.settings.memoryLimitMax.all(mRm, mRm >= int(container.resources.limits.memory))))
48+
params.settings.memoryLimitMin <= int(container.resources.limits.memory) &&
49+
params.settings.memoryLimitMax >= int(container.resources.limits.memory)))
5050
message: "CronJob contains container/s with memory limit or request not set or they are not in the specified range! (see more at https://hub.armosec.io/docs/c-0004)"

test-resources/default-control-configuration.yaml

+4-8
Original file line numberDiff line numberDiff line change
@@ -45,14 +45,10 @@ settings:
4545
- 5
4646
maxHighVulnerabilities:
4747
- 10
48-
memoryLimitMax:
49-
- 256
50-
memoryLimitMin:
51-
- 32
52-
memoryRequestMax:
53-
- 256
54-
memoryRequestMin:
55-
- 32
48+
memoryLimitMax: 256
49+
memoryLimitMin: 32
50+
memoryRequestMax: 256
51+
memoryRequestMin: 32
5652
publicRegistries:
5753
- docker.io
5854
- gcr.io

0 commit comments

Comments
 (0)