From ea7fdef8e5da53802459be33e626391bd32dc64a Mon Sep 17 00:00:00 2001 From: Luna Das Date: Wed, 25 Mar 2020 18:17:20 +0530 Subject: [PATCH] [FIX] Add whitelisting of fields of various types to configMap. This Patch Set enables whitelisting of proper field names of different types(i.e string, integer)in configMap volume. It makes the pauseImage for daemonjob configurable. Change-Id: Ia2062c5bc9ba1d8783e9573d7f9ea315c34f7fe7 --- daemonjob-controller/templates/bin/_sync-hook.py.tpl | 3 ++- daemonjob-controller/templates/crd.yaml | 7 +++++-- daemonjob-controller/values.yaml | 1 + 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/daemonjob-controller/templates/bin/_sync-hook.py.tpl b/daemonjob-controller/templates/bin/_sync-hook.py.tpl index 3c5b97d4..546f0dd0 100644 --- a/daemonjob-controller/templates/bin/_sync-hook.py.tpl +++ b/daemonjob-controller/templates/bin/_sync-hook.py.tpl @@ -32,6 +32,7 @@ def is_job_finished(job): def new_daemon(job): + pause_image = {{ .Values.images.tags.pause | quote }} daemon = copy.deepcopy(job) daemon['apiVersion'] = 'apps/v1' daemon['kind'] = 'DaemonSet' @@ -45,7 +46,7 @@ def new_daemon(job): job['spec']['template']['spec']['containers']) daemon['spec']['template']['spec']['containers'] = [ {'name': "pause", 'image': job['spec'].get( - 'pauseImage', 'gcr.io/google_containers/pause'), + 'pauseImage', pause_image), 'resources': {'requests': {'cpu': '10m'}}}] daemon['spec']['selector'] = {'matchLabels': copy.deepcopy( job['spec']['template']['metadata']['labels'])} diff --git a/daemonjob-controller/templates/crd.yaml b/daemonjob-controller/templates/crd.yaml index 48fcfc8c..2127d120 100644 --- a/daemonjob-controller/templates/crd.yaml +++ b/daemonjob-controller/templates/crd.yaml @@ -343,8 +343,11 @@ spec: type: string configMap: type: object - additionalProperties: - type: string + properties: + name: + type: string + defaultMode: + type: integer restartPolicy: type: string tty: diff --git a/daemonjob-controller/values.yaml b/daemonjob-controller/values.yaml index 6ac2a8bd..4ad6b71f 100644 --- a/daemonjob-controller/values.yaml +++ b/daemonjob-controller/values.yaml @@ -19,6 +19,7 @@ release_group: null images: tags: python: docker.io/python:3.6-slim + pause: gcr.io/google_containers/pause:latest image_repo_sync: docker.io/docker:17.07.0 pullPolicy: IfNotPresent local_registry: