diff --git a/CHANGELOG.md b/CHANGELOG.md index 861c6800..cdd36ae6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,7 @@ * Refactor label definitions to be more consistent by building labels and label selectors in partial helper templates. (#299) (by @cognifloyd) * Use the correct `apiVersion` for `Ingress` to add support for Kubernetes `v1.22`. (#301) (by @arms11) * Fix mounts for `jobs.preRegisterContentCommand` container to use the same mounts as the primary register-content container. (#322) (by @cognifloyd) +* Add support for providing custom st2actionrunner-specific docker repository, image name, pull policy, and pull secret via `values.yaml`. (#141) (by @Sheshagiri) ## v0.100.0 * Switch st2 to `v3.7` as a new default stable version (#274) diff --git a/templates/deployments.yaml b/templates/deployments.yaml index da96ad0b..563bb296 100644 --- a/templates/deployments.yaml +++ b/templates/deployments.yaml @@ -1292,6 +1292,9 @@ spec: {{- if .Values.st2.packs.images }} {{- include "stackstorm-ha.packs-pullSecrets" . | nindent 6 }} {{- end }} + {{- if .Values.st2actionrunner.image.pullSecret }} + - name: {{ .Values.st2actionrunner.image.pullSecret }} + {{- end }} initContainers: {{- include "stackstorm-ha.init-containers-wait-for-db" . | nindent 6 }} {{- include "stackstorm-ha.init-containers-wait-for-mq" . | nindent 6 }} @@ -1300,8 +1303,10 @@ spec: {{- end }} containers: - name: st2actionrunner - image: '{{ template "stackstorm-ha.imageRepository" . }}/st2actionrunner:{{ tpl (.Values.st2actionrunner.image.tag | default .Values.image.tag) . }}' - imagePullPolicy: {{ .Values.image.pullPolicy }} + {{- with .Values.st2actionrunner }} + image: '{{ .image.repository | default (include "stackstorm-ha.imageRepository" $) }}/{{ .image.name | default "st2actionrunner" }}:{{ tpl (.image.tag | default $.Values.image.tag) $ }}' + {{- end }} + imagePullPolicy: {{ .Values.st2actionrunner.image.pullPolicy | default .Values.image.pullPolicy }} {{- with default .Values.securityContext .Values.st2actionrunner.securityContext }} securityContext: {{- toYaml . | nindent 10 }} {{- end }} @@ -1719,7 +1724,9 @@ spec: {{- end }} containers: - name: st2chatops - image: '{{ .Values.st2chatops.image.repository | default "stackstorm" }}/{{ .Values.st2chatops.image.name | default "st2chatops" }}:{{ tpl (.Values.st2chatops.image.tag | default .Values.image.tag) . }}' + {{- with .Values.st2chatops }} + image: '{{ .image.repository | default (include "stackstorm-ha.imageRepository" $) }}/{{ .image.name | default "st2chatops" }}:{{ tpl (.image.tag | default $.Values.image.tag) $ }}' + {{- end }} imagePullPolicy: {{ .Values.st2chatops.image.pullPolicy | default .Values.image.pullPolicy }} {{- with .Values.securityContext }} securityContext: {{- toYaml . | nindent 10 }} diff --git a/tests/unit/image_pull_test.yaml b/tests/unit/image_pull_test.yaml index ce59058d..e739be59 100644 --- a/tests/unit/image_pull_test.yaml +++ b/tests/unit/image_pull_test.yaml @@ -24,10 +24,12 @@ templates: # image.pullPolicy # serviceAccount.pullPolicy # st2.packs.images[].pullPolicy -# imagePullSecreets +# st2actionrunner.image.pullPolicy +# imagePullSecrets # image.pullSecret # serviceAccount.pullSecret # st2.packs.images[].pullSecret +# st2actionrunner.image.pullSecret tests: - it: Deployments and Jobs use default pullPolicy and pullSecret @@ -80,9 +82,9 @@ tests: - deployments.yaml - jobs.yaml set: - image: - pullPolicy: Always - pullSecret: custom-pull-secret + image: &globalCustomImage + pullPolicy: &globalCustomImagePullPolicy Always + pullSecret: &globalCustomImagePullSecret custom-pull-secret serviceAccount: create: true # show that this does not affect pod specs @@ -95,16 +97,104 @@ tests: jobs: extra_hooks: *jobs_extra_hooks asserts: - - equal: + - equal: &eq_custom_pull_secret path: spec.template.spec.imagePullSecrets[0].name - value: custom-pull-secret + value: *globalCustomImagePullSecret + - equal: &eq_custom_pull_policy + path: spec.template.spec.containers[0].imagePullPolicy + value: *globalCustomImagePullPolicy + # path can only select one element, not all initContainers (if present). + #- equal: + # path: 'spec.template.spec.initContainers[].imagePullPolicy' + # value: *globalCustomImagePullPolicy + + # this is only for st2actionrunner for now + - it: Deployments use custom Deployment-specific pullPolicy and pullSecret + templates: + - deployments.yaml + set: + image: *globalCustomImage + st2actionrunner: + image: + pullPolicy: Never + pullSecret: custom-st2actionrunner-pull-secret + st2: + packs: { sensors: [] } # ensure only 1 sensor + st2chatops: + enabled: true + asserts: + - hasDocuments: + count: 14 + + - equal: *eq_custom_pull_secret + documentIndex: 0 + - equal: *eq_custom_pull_secret + documentIndex: 1 # st2api + - equal: *eq_custom_pull_secret + documentIndex: 2 + - equal: *eq_custom_pull_secret + documentIndex: 3 + - equal: *eq_custom_pull_secret + documentIndex: 4 + - equal: *eq_custom_pull_secret + documentIndex: 5 + - equal: *eq_custom_pull_secret + documentIndex: 6 + - equal: *eq_custom_pull_secret + documentIndex: 7 + - equal: *eq_custom_pull_secret + documentIndex: 8 + - equal: *eq_custom_pull_secret + documentIndex: 9 # st2sensorcontainer + - equal: *eq_custom_pull_secret + documentIndex: 10 # st2actionrunner + - contains: + path: spec.template.spec.imagePullSecrets + content: + name: custom-st2actionrunner-pull-secret + documentIndex: 10 # st2actionrunner + - equal: *eq_custom_pull_secret + documentIndex: 11 + - equal: *eq_custom_pull_secret + documentIndex: 12 # st2client + - equal: *eq_custom_pull_secret + documentIndex: 13 + - equal: path: spec.template.spec.containers[0].imagePullPolicy - value: Always + value: Never + documentIndex: 10 # st2actionrunner + - equal: *eq_custom_pull_policy + documentIndex: 0 + - equal: *eq_custom_pull_policy + documentIndex: 1 # st2api + - equal: *eq_custom_pull_policy + documentIndex: 2 + - equal: *eq_custom_pull_policy + documentIndex: 3 + - equal: *eq_custom_pull_policy + documentIndex: 4 + - equal: *eq_custom_pull_policy + documentIndex: 5 + - equal: *eq_custom_pull_policy + documentIndex: 6 + - equal: *eq_custom_pull_policy + documentIndex: 7 + - equal: *eq_custom_pull_policy + documentIndex: 8 + - equal: *eq_custom_pull_policy + documentIndex: 9 # st2sensorcontainer + - equal: *eq_custom_pull_policy + documentIndex: 11 + - equal: *eq_custom_pull_policy + documentIndex: 12 # st2client + - equal: *eq_custom_pull_policy + documentIndex: 13 + # path can only select one element, not all initContainers (if present). #- equal: # path: 'spec.template.spec.initContainers[].imagePullPolicy' - # value: Always + # value: *globalCustomImagePullPolicy - it: ServiceAccount has no imagePullSecret by default template: service-account.yaml diff --git a/tests/unit/image_test.yaml b/tests/unit/image_test.yaml new file mode 100644 index 00000000..ba41f98b --- /dev/null +++ b/tests/unit/image_test.yaml @@ -0,0 +1,560 @@ +--- +suite: Image +templates: + # primary template files + - deployments.yaml + - jobs.yaml + + # included templates must also be listed + - configmaps_overrides.yaml + - configmaps_packs.yaml + - configmaps_rbac.yaml + - configmaps_st2-conf.yaml + - configmaps_st2-urls.yaml + - configmaps_st2web.yaml + - secrets_datastore_crypto_key.yaml + - secrets_ssh.yaml + - secrets_st2apikeys.yaml + - secrets_st2auth.yaml + - secrets_st2chatops.yaml + +# relevant values: +# repository +# image.repository +# st2.packs.images[].repository +# st2actionrunner.image.repository +# st2chatops.image.repository +# image name +# st2.packs.images[].name +# st2actionrunner.image.name +# st2chatops.image.name +# image tag +# st2.packs.images[].tag +# st2.packs.sensors[].tag +# st2*.image.tag +# +# TODO: test initContainers that use st2.packs.images +# (there is no good way to select initContainers) + +tests: + - it: Deployments use default image + templates: + - deployments.yaml + # st2auth, st2api, + # st2stream, st2web, + # st2rulesengine, st2timersengine, + # st2workflowengine, st2scheduler, + # st2notifier, (1) st2sensorcontainer, + # st2actionrunner, st2garbagecollector, + # st2client, st2chatops + set: &set_defaults + # relevant image defaults: + #image: + # repository: stackstorm + # tag: "{{ .Chart.AppVersion }}" + st2: + rbac: { enabled: true } # enable rbac job + packs: + sensors: [] # ensure only 1 sensor + # st2.packs.sensors[].image.tag tested in st2sensors_test + images: [] # no extra packs to load + # st2.packs.images only used in initContainers + st2chatops: + enabled: true + jobs: + extra_hooks: &jobs_extra_hooks + - name: upgrade-warning + hook: pre-upgrade, pre-rollback + hook_weight: -5 + command: ["st2", "run", "--tail", "custom_pack.warn_about_upgrade"] + release: + name: st2ha + chart: + appVersion: 3.9.999 + asserts: + - hasDocuments: + count: 14 + + # default repository and tag + - matchRegex: + path: spec.template.spec.containers[0].image + pattern: "^stackstorm/.*:3.9.999$" + + # default image name + - matchRegex: + path: spec.template.spec.containers[0].image + pattern: "/st2auth:" + documentIndex: 0 + - matchRegex: + path: spec.template.spec.containers[0].image + pattern: "/st2api:" + documentIndex: 1 + - matchRegex: + path: spec.template.spec.containers[0].image + pattern: "/st2stream:" + documentIndex: 2 + - matchRegex: + path: spec.template.spec.containers[0].image + pattern: "/st2web:" + documentIndex: 3 + - matchRegex: + path: spec.template.spec.containers[0].image + pattern: "/st2rulesengine:" + documentIndex: 4 + - matchRegex: + path: spec.template.spec.containers[0].image + pattern: "/st2timersengine:" + documentIndex: 5 + - matchRegex: + path: spec.template.spec.containers[0].image + pattern: "/st2workflowengine:" + documentIndex: 6 + - matchRegex: + path: spec.template.spec.containers[0].image + pattern: "/st2scheduler:" + documentIndex: 7 + - matchRegex: + path: spec.template.spec.containers[0].image + pattern: "/st2notifier:" + documentIndex: 8 + - matchRegex: + path: spec.template.spec.containers[0].image + pattern: "/st2sensorcontainer:" + documentIndex: 9 + - matchRegex: + path: spec.template.spec.containers[0].image + pattern: "/st2actionrunner:" + documentIndex: 10 # st2actionrunner + - matchRegex: + path: spec.template.spec.containers[0].image + pattern: "/st2garbagecollector:" + documentIndex: 11 + - matchRegex: + path: spec.template.spec.containers[0].image + pattern: "/st2actionrunner:" + documentIndex: 12 # st2client + - matchRegex: + path: spec.template.spec.containers[0].image + pattern: "/st2chatops:" + documentIndex: 13 + + - it: Jobs use default image + templates: + - jobs.yaml + # job-st2-apply-rbac-defintions + # job-st2-apikey-load + # job-st2-key-load + # job-st2-register-content + # extra_hooks job + set: *set_defaults + release: + name: st2ha + chart: + appVersion: 3.9.999 + asserts: + - hasDocuments: + count: 5 + + # default repository and tag + - equal: + path: spec.template.spec.containers[0].image + value: "stackstorm/st2actionrunner:3.9.999" + + - it: Deployments can use custom image (global) + templates: + - deployments.yaml + set: &set_global_custom_image + image: &globalCustomImage + repository: registry.example.com/stackstorm + tag: "{{ .Chart.AppVersion }}-custom-tag" + st2: + rbac: { enabled: true } # enable rbac job + packs: + sensors: [] # ensure only 1 sensor + # st2.packs.sensors[].image.tag tested in st2sensors_test + images: [] # no extra packs to load + # st2.packs.images only used in initContainers + st2chatops: + enabled: true + jobs: + extra_hooks: *jobs_extra_hooks + release: + name: st2ha + chart: + appVersion: 3.9.999 + asserts: + - hasDocuments: + count: 14 + + # image repository and tag + - matchRegex: + path: spec.template.spec.containers[0].image + pattern: "^registry.example.com/stackstorm/.*:3.9.999-custom-tag$" + + # image name + - matchRegex: + path: spec.template.spec.containers[0].image + pattern: "/st2auth:" + documentIndex: 0 + - matchRegex: + path: spec.template.spec.containers[0].image + pattern: "/st2api:" + documentIndex: 1 + - matchRegex: + path: spec.template.spec.containers[0].image + pattern: "/st2stream:" + documentIndex: 2 + - matchRegex: + path: spec.template.spec.containers[0].image + pattern: "/st2web:" + documentIndex: 3 + - matchRegex: + path: spec.template.spec.containers[0].image + pattern: "/st2rulesengine:" + documentIndex: 4 + - matchRegex: + path: spec.template.spec.containers[0].image + pattern: "/st2timersengine:" + documentIndex: 5 + - matchRegex: + path: spec.template.spec.containers[0].image + pattern: "/st2workflowengine:" + documentIndex: 6 + - matchRegex: + path: spec.template.spec.containers[0].image + pattern: "/st2scheduler:" + documentIndex: 7 + - matchRegex: + path: spec.template.spec.containers[0].image + pattern: "/st2notifier:" + documentIndex: 8 + - matchRegex: + path: spec.template.spec.containers[0].image + pattern: "/st2sensorcontainer:" + documentIndex: 9 + - matchRegex: + path: spec.template.spec.containers[0].image + pattern: "/st2actionrunner:" + documentIndex: 10 # st2actionrunner + - matchRegex: + path: spec.template.spec.containers[0].image + pattern: "/st2garbagecollector:" + documentIndex: 11 + - matchRegex: + path: spec.template.spec.containers[0].image + pattern: "/st2actionrunner:" + documentIndex: 12 # st2client + - matchRegex: + path: spec.template.spec.containers[0].image + pattern: "/st2chatops:" + documentIndex: 13 + + - it: Jobs can use custom image (global) + templates: + - jobs.yaml + set: *set_global_custom_image + release: + name: st2ha + chart: + appVersion: 3.9.999 + asserts: + - hasDocuments: + count: 5 + + # image repository/name:tag + - equal: + path: spec.template.spec.containers[0].image + value: "registry.example.com/stackstorm/st2actionrunner:3.9.999-custom-tag" + + - it: Deployments can use custom image (default with overrides) + templates: + - deployments.yaml + set: &set_custom_overrides + #image: # using global defaults + st2: + rbac: { enabled: true } # enable rbac job + packs: + sensors: [] # ensure only 1 sensor + # st2.packs.sensors[].image.tag tested in st2sensors_test + images: [] # no extra packs to load + # st2.packs.images only used in initContainers + st2web: + image: + tag: "{{ .Chart.AppVersion }}-custom-web" + st2auth: + image: + tag: "{{ .Chart.AppVersion }}-custom-auth" + st2api: + image: + tag: "{{ .Chart.AppVersion }}-custom-api" + st2stream: + image: + tag: "{{ .Chart.AppVersion }}-custom-stream" + st2rulesengine: + image: + tag: "{{ .Chart.AppVersion }}-custom-rules" + st2timersengine: + image: + tag: "{{ .Chart.AppVersion }}-custom-timers" + st2workflowengine: + image: + tag: "{{ .Chart.AppVersion }}-custom-workflow" + st2scheduler: + image: + tag: "{{ .Chart.AppVersion }}-custom-scheduler" + st2notifier: + image: + tag: "{{ .Chart.AppVersion }}-custom-notifier" + st2actionrunner: + image: + repository: docker.example.com/st2 + name: actionrunner + tag: "{{ .Chart.AppVersion }}-custom-actions" + st2sensorcontainer: + image: + tag: "{{ .Chart.AppVersion }}-custom-sensors" + st2client: + image: + tag: "{{ .Chart.AppVersion }}-custom-client" + st2garbagecollector: + image: + tag: "{{ .Chart.AppVersion }}-custom-gc" + st2chatops: + enabled: true + image: + repository: docker.example.io/st2 + name: chatops + tag: "{{ .Chart.AppVersion }}-custom-chatops" + + jobs: + extra_hooks: *jobs_extra_hooks + image: + tag: "{{ .Chart.AppVersion }}-custom-jobs" + release: + name: st2ha + chart: + appVersion: 3.9.999 + asserts: + - hasDocuments: + count: 14 + + # image repository/name:tag + - equal: + path: spec.template.spec.containers[0].image + value: "stackstorm/st2auth:3.9.999-custom-auth" + documentIndex: 0 + - equal: + path: spec.template.spec.containers[0].image + value: "stackstorm/st2api:3.9.999-custom-api" + documentIndex: 1 + - equal: + path: spec.template.spec.containers[0].image + value: "stackstorm/st2stream:3.9.999-custom-stream" + documentIndex: 2 + - equal: + path: spec.template.spec.containers[0].image + value: "stackstorm/st2web:3.9.999-custom-web" + documentIndex: 3 + - equal: + path: spec.template.spec.containers[0].image + value: "stackstorm/st2rulesengine:3.9.999-custom-rules" + documentIndex: 4 + - equal: + path: spec.template.spec.containers[0].image + value: "stackstorm/st2timersengine:3.9.999-custom-timers" + documentIndex: 5 + - equal: + path: spec.template.spec.containers[0].image + value: "stackstorm/st2workflowengine:3.9.999-custom-workflow" + documentIndex: 6 + - equal: + path: spec.template.spec.containers[0].image + value: "stackstorm/st2scheduler:3.9.999-custom-scheduler" + documentIndex: 7 + - equal: + path: spec.template.spec.containers[0].image + value: "stackstorm/st2notifier:3.9.999-custom-notifier" + documentIndex: 8 + - equal: + path: spec.template.spec.containers[0].image + value: "stackstorm/st2sensorcontainer:3.9.999-custom-sensors" + documentIndex: 9 + - equal: + path: spec.template.spec.containers[0].image + value: "docker.example.com/st2/actionrunner:3.9.999-custom-actions" + documentIndex: 10 # st2actionrunner + - equal: + path: spec.template.spec.containers[0].image + value: "stackstorm/st2garbagecollector:3.9.999-custom-gc" + documentIndex: 11 + - equal: + path: spec.template.spec.containers[0].image + value: "stackstorm/st2actionrunner:3.9.999-custom-client" + documentIndex: 12 # st2client + - equal: + path: spec.template.spec.containers[0].image + value: "docker.example.io/st2/chatops:3.9.999-custom-chatops" + documentIndex: 13 + + - it: Jobs can use custom image (default with overrides) + templates: + - jobs.yaml + set: *set_custom_overrides + release: + name: st2ha + chart: + appVersion: 3.9.999 + asserts: + - hasDocuments: + count: 5 + + # image repository/name:tag + - equal: + path: spec.template.spec.containers[0].image + value: "stackstorm/st2actionrunner:3.9.999-custom-jobs" + + - it: Deployments can use custom image (custom global with overrides) + templates: + - deployments.yaml + set: &set_custom_global_with_overrides + image: *globalCustomImage + st2: + rbac: { enabled: true } # enable rbac job + packs: + sensors: [] # ensure only 1 sensor + # st2.packs.sensors[].image.tag tested in st2sensors_test + images: [] # no extra packs to load + # st2.packs.images only used in initContainers + st2web: + image: + tag: "{{ .Chart.AppVersion }}-custom-web" + st2auth: + image: + tag: "{{ .Chart.AppVersion }}-custom-auth" + st2api: + image: + tag: "{{ .Chart.AppVersion }}-custom-api" + st2stream: + image: + tag: "{{ .Chart.AppVersion }}-custom-stream" + st2rulesengine: + image: + tag: "{{ .Chart.AppVersion }}-custom-rules" + st2timersengine: + image: + tag: "{{ .Chart.AppVersion }}-custom-timers" + st2workflowengine: + image: + tag: "{{ .Chart.AppVersion }}-custom-workflow" + st2scheduler: + image: + tag: "{{ .Chart.AppVersion }}-custom-scheduler" + st2notifier: + image: + tag: "{{ .Chart.AppVersion }}-custom-notifier" + st2actionrunner: + image: + repository: docker.example.com/st2 + name: actionrunner + tag: "{{ .Chart.AppVersion }}-custom-actions" + st2sensorcontainer: + image: + tag: "{{ .Chart.AppVersion }}-custom-sensors" + st2client: + image: + tag: "{{ .Chart.AppVersion }}-custom-client" + st2garbagecollector: + image: + tag: "{{ .Chart.AppVersion }}-custom-gc" + st2chatops: + enabled: true + image: + repository: docker.example.io/st2 + name: chatops + tag: "{{ .Chart.AppVersion }}-custom-chatops" + jobs: + extra_hooks: *jobs_extra_hooks + image: + tag: "{{ .Chart.AppVersion }}-custom-jobs" + release: + name: st2ha + chart: + appVersion: 3.9.999 + asserts: + - hasDocuments: + count: 14 + + # image repository/name:tag + - equal: + path: spec.template.spec.containers[0].image + value: "registry.example.com/stackstorm/st2auth:3.9.999-custom-auth" + documentIndex: 0 + - equal: + path: spec.template.spec.containers[0].image + value: "registry.example.com/stackstorm/st2api:3.9.999-custom-api" + documentIndex: 1 + - equal: + path: spec.template.spec.containers[0].image + value: "registry.example.com/stackstorm/st2stream:3.9.999-custom-stream" + documentIndex: 2 + - equal: + path: spec.template.spec.containers[0].image + value: "registry.example.com/stackstorm/st2web:3.9.999-custom-web" + documentIndex: 3 + - equal: + path: spec.template.spec.containers[0].image + value: "registry.example.com/stackstorm/st2rulesengine:3.9.999-custom-rules" + documentIndex: 4 + - equal: + path: spec.template.spec.containers[0].image + value: "registry.example.com/stackstorm/st2timersengine:3.9.999-custom-timers" + documentIndex: 5 + - equal: + path: spec.template.spec.containers[0].image + value: "registry.example.com/stackstorm/st2workflowengine:3.9.999-custom-workflow" + documentIndex: 6 + - equal: + path: spec.template.spec.containers[0].image + value: "registry.example.com/stackstorm/st2scheduler:3.9.999-custom-scheduler" + documentIndex: 7 + - equal: + path: spec.template.spec.containers[0].image + value: "registry.example.com/stackstorm/st2notifier:3.9.999-custom-notifier" + documentIndex: 8 + - equal: + path: spec.template.spec.containers[0].image + value: "registry.example.com/stackstorm/st2sensorcontainer:3.9.999-custom-sensors" + documentIndex: 9 + - equal: + path: spec.template.spec.containers[0].image + value: "docker.example.com/st2/actionrunner:3.9.999-custom-actions" + documentIndex: 10 # st2actionrunner + - equal: + path: spec.template.spec.containers[0].image + value: "registry.example.com/stackstorm/st2garbagecollector:3.9.999-custom-gc" + documentIndex: 11 + - equal: + path: spec.template.spec.containers[0].image + value: "registry.example.com/stackstorm/st2actionrunner:3.9.999-custom-client" + documentIndex: 12 # st2client + - equal: + path: spec.template.spec.containers[0].image + value: "docker.example.io/st2/chatops:3.9.999-custom-chatops" + documentIndex: 13 + + - it: Jobs can use custom image (custom global with overrides) + templates: + - jobs.yaml + set: *set_custom_global_with_overrides + release: + name: st2ha + chart: + appVersion: 3.9.999 + asserts: + - hasDocuments: + count: 5 + + # image repository/name:tag + - equal: + path: spec.template.spec.containers[0].image + value: "registry.example.com/stackstorm/st2actionrunner:3.9.999-custom-jobs" diff --git a/values.yaml b/values.yaml index 6dc4a8c0..77a206fb 100644 --- a/values.yaml +++ b/values.yaml @@ -7,10 +7,10 @@ image: # Image pull policy pullPolicy: IfNotPresent - # st2 image repository. Set this to override the default ("stackstorm") - # docker image repository ("docker.stackstorm.com"). Applies to all st2 containers except - # st2chatops and st2packs (which have their own override). This also does not impact - # dependencies such as mongo or redis, which have their own helm chart settings. + # st2 image repository. Set this to override the default ("stackstorm"). + # Applies to all st2 containers except st2packs (which has its own setting). + # This also does not impact dependencies such as mongo or redis, which have + # their own helm chart settings. repository: "" # st2 image tag - defaults to AppVersion. # Note that Helm templating is supported in this block! @@ -625,10 +625,16 @@ st2actionrunner: requests: memory: "200Mi" cpu: "75m" - # Override default image settings (for now, only tag can be overridden) + # Override default image settings image: {} + # Uncomment the following block to use your own at2actionrunner docker image + #repository: your-remote-docker-registry.io + #name: st2actionrunner ## Note that Helm templating is supported in this block! #tag: "{{ .Values.image.tag }}" + #pullPolicy: Always + # Optional name of the imagePullSecret if your custom action runner image is hosted by a private Docker registry behind the auth + #pullSecret: st2actionrunner-auth annotations: {} # Additional advanced settings to control pod/deployment placement nodeSelector: {}