From b9096ee15b5df95cbcf3dbea661ff9ca94652c6c Mon Sep 17 00:00:00 2001 From: Krishnadas M <89966612+krishnadas-m@users.noreply.github.com> Date: Wed, 17 May 2023 18:29:05 +0530 Subject: [PATCH] Make injected Agent ephemeral storage configurable through injector.agentDefaults (#798) --- CHANGELOG.md | 3 +++ templates/injector-deployment.yaml | 8 ++++++++ test/unit/injector-deployment.bats | 11 +++++++++++ values.schema.json | 6 ++++++ values.yaml | 2 ++ 5 files changed, 30 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 741c5ab..a68f853 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -35,6 +35,9 @@ Features: Bugs: * server: Quote `.server.ha.clusterAddr` value [GH-810](https://github.com/hashicorp/vault-helm/pull/810) +Improvements: +* injector: Add `ephemeralLimit` and `ephemeralRequest` as options for configuring Agent's ephemeral storage resources [GH-798](https://github.com/hashicorp/vault-helm/pull/798) + ## 0.22.1 (October 26th, 2022) Changes: diff --git a/templates/injector-deployment.yaml b/templates/injector-deployment.yaml index 7e0101a..fbf32c0 100644 --- a/templates/injector-deployment.yaml +++ b/templates/injector-deployment.yaml @@ -109,6 +109,14 @@ spec: value: "{{ .Values.injector.agentDefaults.memRequest }}" - name: AGENT_INJECT_MEM_LIMIT value: "{{ .Values.injector.agentDefaults.memLimit }}" + {{- if .Values.injector.agentDefaults.ephemeralRequest }} + - name: AGENT_INJECT_EPHEMERAL_REQUEST + value: "{{ .Values.injector.agentDefaults.ephemeralRequest }}" + {{- end }} + {{- if .Values.injector.agentDefaults.ephemeralLimit }} + - name: AGENT_INJECT_EPHEMERAL_LIMIT + value: "{{ .Values.injector.agentDefaults.ephemeralLimit }}" + {{- end }} - name: AGENT_INJECT_DEFAULT_TEMPLATE value: "{{ .Values.injector.agentDefaults.template }}" - name: AGENT_INJECT_TEMPLATE_CONFIG_EXIT_ON_RETRY_FAILURE diff --git a/test/unit/injector-deployment.bats b/test/unit/injector-deployment.bats index 3cfe777..7723a15 100755 --- a/test/unit/injector-deployment.bats +++ b/test/unit/injector-deployment.bats @@ -963,6 +963,7 @@ EOF local value=$(echo $object | yq -r 'map(select(.name=="AGENT_INJECT_MEM_REQUEST")) | .[] .value' | tee /dev/stderr) [ "${value}" = "64Mi" ] + } @test "injector/deployment: can set agent default resources" { @@ -973,6 +974,8 @@ EOF --set 'injector.agentDefaults.cpuRequest=cpuRequest' \ --set 'injector.agentDefaults.memLimit=memLimit' \ --set 'injector.agentDefaults.memRequest=memRequest' \ + --set 'injector.agentDefaults.ephemeralLimit=ephemeralLimit' \ + --set 'injector.agentDefaults.ephemeralRequest=ephemeralRequest' \ . | tee /dev/stderr | yq -r '.spec.template.spec.containers[0].env' | tee /dev/stderr) @@ -991,6 +994,14 @@ EOF local value=$(echo $object | yq -r 'map(select(.name=="AGENT_INJECT_MEM_REQUEST")) | .[] .value' | tee /dev/stderr) [ "${value}" = "memRequest" ] + + local value=$(echo $object | + yq -r 'map(select(.name=="AGENT_INJECT_EPHEMERAL_LIMIT")) | .[] .value' | tee /dev/stderr) + [ "${value}" = "ephemeralLimit" ] + + local value=$(echo $object | + yq -r 'map(select(.name=="AGENT_INJECT_EPHEMERAL_REQUEST")) | .[] .value' | tee /dev/stderr) + [ "${value}" = "ephemeralRequest" ] } @test "injector/deployment: agent default template" { diff --git a/values.schema.json b/values.schema.json index 44980e1..4214e4b 100644 --- a/values.schema.json +++ b/values.schema.json @@ -266,6 +266,12 @@ "memRequest": { "type": "string" }, + "ephemeralLimit": { + "type": "string" + }, + "ephemeralRequest": { + "type": "string" + }, "template": { "type": "string" }, diff --git a/values.yaml b/values.yaml index e060b0b..13938fb 100644 --- a/values.yaml +++ b/values.yaml @@ -83,6 +83,8 @@ injector: cpuRequest: "250m" memLimit: "128Mi" memRequest: "64Mi" + # ephemeralLimit: "128Mi" + # ephemeralRequest: "64Mi" # Default template type for secrets when no custom template is specified. # Possible values include: "json" and "map".