Skip to content

Commit f67fe7a

Browse files
authored
Allow user to specify custom secrets to be mounted on Feast Serving and Feast Core pods (#1127)
Signed-off-by: Khor Shu Heng <khor.heng@gojek.com> Co-authored-by: Khor Shu Heng <khor.heng@gojek.com>
1 parent 738520a commit f67fe7a

9 files changed

Lines changed: 33 additions & 5 deletions

File tree

infra/charts/feast/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ https://docs.feast.dev/v/master/getting-started/deploying-feast/kubernetes
1515
| | feast-jupyter | 0.8-SNAPSHOT |
1616
| | feast-serving | 0.8-SNAPSHOT |
1717
| | prometheus-statsd-exporter | 0.1.2 |
18-
| https://kubernetes-charts-incubator.storage.googleapis.com/ | kafka | 0.20.8 |
18+
| https://charts.bitnami.com/bitnami/ | kafka | 11.8.8 |
1919
| https://kubernetes-charts.storage.googleapis.com/ | grafana | 5.0.5 |
2020
| https://kubernetes-charts.storage.googleapis.com/ | postgresql | 8.6.1 |
2121
| https://kubernetes-charts.storage.googleapis.com/ | prometheus | 11.0.2 |

infra/charts/feast/charts/feast-core/README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@ Current chart version is `0.8-SNAPSHOT`
5858
| readinessProbe.timeoutSeconds | int | `10` | When the probe times out |
5959
| replicaCount | int | `1` | Number of pods that will be created |
6060
| resources | object | `{}` | CPU/memory [resource requests/limit](https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/#resource-requests-and-limits-of-pod-and-container) |
61+
| secrets | list | `[]` | List of Kubernetes secrets to be mounted on Feast Core pods. These secrets will be mounted on /etc/secrets/<secret name>. |
6162
| service.grpc.nodePort | string | `nil` | Port number that each cluster node will listen to |
6263
| service.grpc.port | int | `6565` | Service port for GRPC requests |
6364
| service.grpc.targetPort | int | `6565` | Container port serving GRPC requests |

infra/charts/feast/charts/feast-core/templates/deployment.yaml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,11 @@ spec:
4646
- name: {{ template "feast-core.fullname" . }}-secret
4747
secret:
4848
secretName: {{ template "feast-core.fullname" . }}
49+
{{- range $secret := .Values.secrets }}
50+
- name: {{ $secret }}
51+
secret:
52+
secretName: {{ $secret }}
53+
{{- end }}
4954

5055
containers:
5156
- name: {{ .Chart.Name }}
@@ -58,6 +63,11 @@ spec:
5863
- name: {{ template "feast-core.fullname" . }}-secret
5964
mountPath: /etc/secrets/feast
6065
readOnly: true
66+
{{- range $secret := .Values.secrets }}
67+
- name: {{ $secret }}
68+
mountPath: "/etc/secrets/{{ $secret }}"
69+
readOnly: true
70+
{{- end }}
6171

6272
env:
6373
- name: LOG_TYPE

infra/charts/feast/charts/feast-core/values.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -140,5 +140,8 @@ nodeSelector: {}
140140
# envOverrides -- Extra environment variables to set
141141
envOverrides: {}
142142

143+
# secrets -- List of Kubernetes secrets to be mounted on Feast Core pods. These secrets will be mounted on /etc/secrets/<secret name>.
144+
secrets: []
145+
143146
# podLabels -- Labels to be added to Feast Core pods
144147
podLabels: {}
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
apiVersion: v1
2-
description: Feast Job Coontroller manage ingestion jobs.
2+
description: Feast Job Service manage ingestion jobs.
33
name: feast-jobservice
44
version: 0.8-SNAPSHOT

infra/charts/feast/charts/feast-jobservice/README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
feast-jobservice
2-
==========
2+
================
33
Feast Job Service manage ingestion jobs.
44

55
Current chart version is `0.8-SNAPSHOT`
@@ -37,15 +37,15 @@ Current chart version is `0.8-SNAPSHOT`
3737
| ingress.http.https.enabled | bool | `true` | Flag to enable HTTPS |
3838
| ingress.http.https.secretNames | object | `{}` | Map of hostname to TLS secret name |
3939
| ingress.http.whitelist | string | `""` | Allowed client IP source ranges |
40-
| livenessProbe.enabled | bool | `false` | Flag to enabled the probe |
40+
| livenessProbe.enabled | bool | `true` | Flag to enabled the probe |
4141
| livenessProbe.failureThreshold | int | `5` | Min consecutive failures for the probe to be considered failed |
4242
| livenessProbe.initialDelaySeconds | int | `60` | Delay before the probe is initiated |
4343
| livenessProbe.periodSeconds | int | `10` | How often to perform the probe |
4444
| livenessProbe.successThreshold | int | `1` | Min consecutive success for the probe to be considered successful |
4545
| livenessProbe.timeoutSeconds | int | `5` | When the probe times out |
4646
| nodeSelector | object | `{}` | Node labels for pod assignment |
4747
| podLabels | object | `{}` | Labels to be added to Feast Job Service pods |
48-
| prometheus.enabled | bool | `true` | Flag to enable scraping of Feast Job Service metrics |
48+
| prometheus.enabled | bool | `true` | Flag to enable scraping of metrics |
4949
| readinessProbe.enabled | bool | `true` | Flag to enabled the probe |
5050
| readinessProbe.failureThreshold | int | `5` | Min consecutive failures for the probe to be considered failed |
5151
| readinessProbe.initialDelaySeconds | int | `20` | Delay before the probe is initiated |

infra/charts/feast/charts/feast-serving/README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,7 @@ Current chart version is `0.8-SNAPSHOT`
6161
| readinessProbe.timeoutSeconds | int | `10` | When the probe times out |
6262
| replicaCount | int | `1` | Number of pods that will be created |
6363
| resources | object | `{}` | CPU/memory [resource requests/limit](https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/#resource-requests-and-limits-of-pod-and-container) |
64+
| secrets | list | `[]` | List of Kubernetes secrets to be mounted on Feast Core pods. These secrets will be mounted on /etc/secrets/<secret name>. |
6465
| service.grpc.nodePort | string | `nil` | Port number that each cluster node will listen to |
6566
| service.grpc.port | int | `6566` | Service port for GRPC requests |
6667
| service.grpc.targetPort | int | `6566` | Container port serving GRPC requests |

infra/charts/feast/charts/feast-serving/templates/deployment.yaml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,11 @@ spec:
4646
- name: {{ template "feast-serving.fullname" . }}-secret
4747
secret:
4848
secretName: {{ template "feast-serving.fullname" . }}
49+
{{- range $secret := .Values.secrets }}
50+
- name: {{ $secret }}
51+
secret:
52+
secretName: {{ $secret }}
53+
{{- end }}
4954

5055
containers:
5156
- name: {{ .Chart.Name }}
@@ -58,6 +63,11 @@ spec:
5863
- name: {{ template "feast-serving.fullname" . }}-secret
5964
mountPath: /etc/secrets/feast
6065
readOnly: true
66+
{{- range $secret := .Values.secrets }}
67+
- name: {{ $secret }}
68+
mountPath: "/etc/secrets/{{ $secret }}"
69+
readOnly: true
70+
{{- end }}
6171

6272
env:
6373
- name: LOG_TYPE

infra/charts/feast/charts/feast-serving/values.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -147,5 +147,8 @@ nodeSelector: {}
147147
# envOverrides -- Extra environment variables to set
148148
envOverrides: {}
149149

150+
# secrets -- List of Kubernetes secrets to be mounted on Feast Core pods. These secrets will be mounted on /etc/secrets/<secret name>.
151+
secrets: []
152+
150153
# podLabels -- Labels to be added to Feast Serving pods
151154
podLabels: {}

0 commit comments

Comments
 (0)