diff --git a/charts/README.md b/charts/README.md index fedfea15..22a698a7 100644 --- a/charts/README.md +++ b/charts/README.md @@ -64,6 +64,7 @@ Parameter | Description | Default `debugEnv` | If there are any pod specialization errors when a function is triggered and this flag is set to true, the error summary is returned as part of http response | `true` `prometheusDeploy` | Set to true if prometheus needs to be deployed along with fission | `true` in `fission-all`, `false` in `fission-core` `canaryDeployment.enabled` | Set to true if you need canary deployment feature | `true` in `fission-all`, `false` in `fission-core` +`extraCoreComponmentPodConfig` | Extend the container specs for the core fission pods. Can be used to add things like affinty/tolerations/nodeSelectors/etc. | None ### Extra configuration for `fission-all` diff --git a/charts/fission-all/templates/deployment.yaml b/charts/fission-all/templates/deployment.yaml index 220098cf..99f14d61 100644 --- a/charts/fission-all/templates/deployment.yaml +++ b/charts/fission-all/templates/deployment.yaml @@ -163,6 +163,9 @@ spec: - name: config-volume configMap: name: feature-config +{{- if .Values.extraCoreComponmentPodConfig }} +{{ toYaml .Values.extraCoreComponmentPodConfig | indent 6 -}} +{{- end }} --- apiVersion: extensions/v1beta1 kind: Deployment @@ -235,6 +238,9 @@ spec: - containerPort: 8888 name: http serviceAccount: fission-svc +{{- if .Values.extraCoreComponmentPodConfig }} +{{ toYaml .Values.extraCoreComponmentPodConfig | indent 6 -}} +{{- end }} --- apiVersion: v1 @@ -316,6 +322,9 @@ spec: - containerPort: 8888 name: http serviceAccount: fission-svc +{{- if .Values.extraCoreComponmentPodConfig }} +{{ toYaml .Values.extraCoreComponmentPodConfig | indent 6 -}} +{{- end }} --- apiVersion: extensions/v1beta1 @@ -359,6 +368,9 @@ spec: - name: FETCHER_MAXMEM value: {{ .Values.fetcherMaxMem | default "128Mi" | quote }} serviceAccount: fission-svc +{{- if .Values.extraCoreComponmentPodConfig }} +{{ toYaml .Values.extraCoreComponmentPodConfig | indent 6 -}} +{{- end }} --- apiVersion: extensions/v1beta1 @@ -384,6 +396,9 @@ spec: - name: TRACING_SAMPLING_RATE value: {{ .Values.traceSamplingRate | default "0.5" | quote }} serviceAccount: fission-svc +{{- if .Values.extraCoreComponmentPodConfig }} +{{ toYaml .Values.extraCoreComponmentPodConfig | indent 6 -}} +{{- end }} --- apiVersion: v1 @@ -432,6 +447,9 @@ spec: secretKeyRef: name: influxdb key: password +{{- if .Values.extraCoreComponmentPodConfig }} +{{ toYaml .Values.extraCoreComponmentPodConfig | indent 6 -}} +{{- end }} {{- if .Values.heapster }} --- @@ -497,6 +515,9 @@ spec: command: ["/fission-bundle"] args: ["--timer", "--routerUrl", "http://router.{{ .Release.Namespace }}"] serviceAccount: fission-svc +{{- if .Values.extraCoreComponmentPodConfig }} +{{ toYaml .Values.extraCoreComponmentPodConfig | indent 6 -}} +{{- end }} # # This is commented out until fission-ui allows configuring the @@ -554,6 +575,9 @@ spec: - containerPort: 4222 hostPort: 4222 protocol: TCP +{{- if .Values.extraCoreComponmentPodConfig }} +{{ toYaml .Values.extraCoreComponmentPodConfig | indent 6 -}} +{{- end }} --- apiVersion: extensions/v1beta1 kind: Deployment @@ -583,6 +607,9 @@ spec: - name: TRACING_SAMPLING_RATE value: {{ .Values.traceSamplingRate | default "0.5" | quote }} serviceAccount: fission-svc +{{- if .Values.extraCoreComponmentPodConfig }} +{{ toYaml .Values.extraCoreComponmentPodConfig | indent 6 -}} +{{- end }} {{- end }} {{- if .Values.kafka.enabled }} @@ -617,6 +644,9 @@ spec: - name: TRACING_SAMPLING_RATE value: {{ .Values.traceSamplingRate | default "0.5" | quote }} serviceAccount: fission-svc +{{- if .Values.extraCoreComponmentPodConfig }} +{{ toYaml .Values.extraCoreComponmentPodConfig | indent 6 -}} +{{- end }} {{- end }} {{- if .Values.azureStorageQueue.enabled }} @@ -654,6 +684,9 @@ spec: name: azure-storage-account-key key: key serviceAccount: fission-svc +{{- if .Values.extraCoreComponmentPodConfig }} +{{ toYaml .Values.extraCoreComponmentPodConfig | indent 6 -}} +{{- end }} {{- end }} --- apiVersion: extensions/v1beta1 @@ -705,4 +738,7 @@ spec: claimName: {{ .Values.persistence.existingClaim | default "fission-storage-pvc" }} {{- else }} emptyDir: {} - {{- end -}} + {{- end }} +{{- if .Values.extraCoreComponmentPodConfig }} +{{ toYaml .Values.extraCoreComponmentPodConfig | indent 6 -}} +{{- end }} diff --git a/charts/fission-all/values.yaml b/charts/fission-all/values.yaml index c12f6097..33a8106e 100644 --- a/charts/fission-all/values.yaml +++ b/charts/fission-all/values.yaml @@ -106,6 +106,24 @@ persistence: accessMode: ReadWriteOnce size: 8Gi +## Extend the container specs for the core fission pods. +## Can be used to add things like affinty/tolerations/nodeSelectors/etc. +## For example: +## extraCoreComponmentPodConfig: +## affinity: +## nodeAffinity: +## requiredDuringSchedulingIgnoredDuringExecution: +## nodeSelectorTerms: +## - matchExpressions: +## - key: capability +## operator: In +## values: +## - app +extraCoreComponmentPodConfig: +# affinity: +# tolerations: +# nodeSelector: + ## Analytics let us count how many people installed fission. Set to ## false to disable analytics. analytics: true diff --git a/charts/fission-core/templates/deployment.yaml b/charts/fission-core/templates/deployment.yaml index 9174354e..31fbe980 100644 --- a/charts/fission-core/templates/deployment.yaml +++ b/charts/fission-core/templates/deployment.yaml @@ -164,6 +164,9 @@ spec: - name: config-volume configMap: name: feature-config +{{- if .Values.extraCoreComponmentPodConfig }} +{{ toYaml .Values.extraCoreComponmentPodConfig | indent 6 -}} +{{- end }} --- apiVersion: extensions/v1beta1 @@ -232,6 +235,9 @@ spec: initialDelaySeconds: 35 periodSeconds: 5 serviceAccount: fission-svc +{{- if .Values.extraCoreComponmentPodConfig }} +{{ toYaml .Values.extraCoreComponmentPodConfig | indent 6 -}} +{{- end }} --- apiVersion: v1 @@ -306,6 +312,9 @@ spec: initialDelaySeconds: 35 periodSeconds: 5 serviceAccount: fission-svc +{{- if .Values.extraCoreComponmentPodConfig }} +{{ toYaml .Values.extraCoreComponmentPodConfig | indent 6 -}} +{{- end }} --- apiVersion: extensions/v1beta1 @@ -349,6 +358,9 @@ spec: - name: FETCHER_MAXMEM value: {{ .Values.fetcherMaxMem | default "128Mi" | quote }} serviceAccount: fission-svc +{{- if .Values.extraCoreComponmentPodConfig }} +{{ toYaml .Values.extraCoreComponmentPodConfig | indent 6 -}} +{{- end }} --- apiVersion: extensions/v1beta1 @@ -374,6 +386,9 @@ spec: - name: TRACING_SAMPLING_RATE value: {{ .Values.traceSamplingRate | default "0.5" | quote }} serviceAccount: fission-svc +{{- if .Values.extraCoreComponmentPodConfig }} +{{ toYaml .Values.extraCoreComponmentPodConfig | indent 6 -}} +{{- end }} --- apiVersion: extensions/v1beta1 @@ -399,6 +414,9 @@ spec: - name: TRACING_SAMPLING_RATE value: {{ .Values.traceSamplingRate | default "0.5" | quote }} serviceAccount: fission-svc +{{- if .Values.extraCoreComponmentPodConfig }} +{{ toYaml .Values.extraCoreComponmentPodConfig | indent 6 -}} +{{- end }} --- apiVersion: extensions/v1beta1 @@ -437,4 +455,7 @@ spec: claimName: {{ .Values.persistence.existingClaim | default "fission-storage-pvc" }} {{- else }} emptyDir: {} - {{- end -}} + {{- end }} +{{- if .Values.extraCoreComponmentPodConfig }} +{{ toYaml .Values.extraCoreComponmentPodConfig | indent 6 -}} +{{- end }} diff --git a/charts/fission-core/values.yaml b/charts/fission-core/values.yaml index 51aad686..721e1374 100644 --- a/charts/fission-core/values.yaml +++ b/charts/fission-core/values.yaml @@ -68,6 +68,24 @@ persistence: accessMode: ReadWriteOnce size: 8Gi +## Extend the container specs for the core fission pods. +## Can be used to add things like affinty/tolerations/nodeSelectors/etc. +## For example: +## extraCoreComponmentPodConfig: +## affinity: +## nodeAffinity: +## requiredDuringSchedulingIgnoredDuringExecution: +## nodeSelectorTerms: +## - matchExpressions: +## - key: capability +## operator: In +## values: +## - app +extraCoreComponmentPodConfig: +# affinity: +# tolerations: +# nodeSelector: + ## Analytics let us count how many people installed fission. Set to ## false to disable analytics. analytics: true