Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
3d5607c
feat: add radar-fitbit-connector-strimzi chart
Jul 1, 2025
8b38a76
fix: number of schema topic partitions needs to be 1.
Jun 27, 2025
e9756d6
chore: remove support for yaml file user repository
pvannierop Jul 2, 2025
650a7a0
fix: add log4j configmap for radar-fitbit-connector to be used by str…
Jul 3, 2025
015c079
feat: add strimzi chart for s3-connector
pvannierop Jul 3, 2025
08201f5
fix: change reference to log4j configmap in fitbit KafkaConnect specs
Jul 3, 2025
7ee164d
fix: change reference to log4j configmap in s3 KafkaConnect specs
Jul 4, 2025
d63fe7b
fix: add missing 'kafka' value
pvannierop Jul 4, 2025
7f0f67e
fix: update log4j configmap
Jul 4, 2025
f5fe06a
feat: add topics sync cronjob for s3-connector
pvannierop Jul 4, 2025
eecdac5
feat: add topics sync cronjob for s3-connector
pvannierop Jul 4, 2025
272c2a4
feat: add radar-oura-connector-strimzi chart
Jul 4, 2025
eab6daf
fix: move aws creditial definition
pvannierop Jul 4, 2025
ab79415
feat: conditionally create topics-sync cronjob
pvannierop Jul 4, 2025
fd466e3
chore: up chart version for oura-connector
pvannierop Jul 4, 2025
5c84203
chore: simplify helpers template in fitbit and oura strimzi charts
Jul 7, 2025
f4d8784
fix: changes for working version
pvannierop Jul 5, 2025
a7a1e31
feat: externalize values for cronjob
pvannierop Jul 7, 2025
13a31a0
fix: radar-s3-connector-strimzi chart:wq
pvannierop Jul 7, 2025
5b1eb57
fix: apply log4j setup to radar-s3-connector-strimzi
Jul 7, 2025
d528cbc
feat: add networkpolicy for topic init and sync jobs
pvannierop Jul 7, 2025
d670c0e
fix: successful job on first run
pvannierop Jul 7, 2025
741fae8
chore: remove redundant name field from fitbit kafkaconnector
pvannierop Jul 8, 2025
9c24d66
fix: replicacount value reference
pvannierop Jul 8, 2025
cda7beb
feat: add strimzi chart for jdbc-connector
pvannierop Jul 8, 2025
2718e3a
feat: add strimzi chart for upload-connector
pvannierop Jul 8, 2025
8a7f95a
chore: add deprecation status to legacy jdbc-connector chart
pvannierop Jul 8, 2025
983e407
chore: add deprecation status to legacy s3-connector chart
pvannierop Jul 8, 2025
d5ca8dd
chore: add deprecation status to legacy upload-connector chart
pvannierop Jul 8, 2025
4dad1bf
chore: clean up fitbit-connector for strimzi chart
pvannierop Jul 9, 2025
e243ba3
chore: clean up jdbc-connector for strimzi chart
pvannierop Jul 9, 2025
746d5a8
chore: clean up s3-connector for strimzi chart
pvannierop Jul 9, 2025
6b98dc7
chore: clean up upload-connector for strimzi chart
pvannierop Jul 9, 2025
9c8ecb5
chore: clean up oura-connector for strimzi chart
pvannierop Jul 9, 2025
e20a2c9
feat: add oura-connector client to management-portal oauth clients
pvannierop Jul 14, 2025
7035390
feat: add oura-connector client to management-portal oauth clients
pvannierop Jul 14, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion charts/management-portal/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ apiVersion: v2
appVersion: "2.1.8"
description: A Helm chart for RADAR-Base Management Portal to manage projects and participants throughout RADAR-base.
name: management-portal
version: 1.6.0
version: 1.6.1
icon: "http://radar-base.org/wp-content/uploads/2022/09/Logo_RADAR-Base-RGB.png"
sources:
- https://github.com/RADAR-base/radar-helm-charts/tree/main/charts/management-portal
Expand Down
2 changes: 1 addition & 1 deletion charts/management-portal/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
# management-portal
[![Artifact HUB](https://img.shields.io/endpoint?url=https://artifacthub.io/badge/repository/management-portal)](https://artifacthub.io/packages/helm/radar-base/management-portal)

![Version: 1.6.0](https://img.shields.io/badge/Version-1.6.0-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 2.1.8](https://img.shields.io/badge/AppVersion-2.1.8-informational?style=flat-square)
![Version: 1.6.1](https://img.shields.io/badge/Version-1.6.1-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 2.1.8](https://img.shields.io/badge/AppVersion-2.1.8-informational?style=flat-square)

A Helm chart for RADAR-Base Management Portal to manage projects and participants throughout RADAR-base.

Expand Down
12 changes: 12 additions & 0 deletions charts/management-portal/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -548,6 +548,18 @@ oauth_clients:
- client_credentials
access_token_validity: 900

radar_oura_connector:
enable: false
resource_ids:
- res_restAuthorizer
client_secret: ""
scope:
- SUBJECT.READ
- MEASUREMENT.CREATE
authorized_grant_types:
- client_credentials
access_token_validity: 900

radar_appconfig:
enable: false
resource_ids:
Expand Down
22 changes: 22 additions & 0 deletions charts/radar-fitbit-connector-strimzi/.helmignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# Patterns to ignore when building packages.
# This supports shell glob matching, relative path matching, and
# negation (prefixed with !). Only one pattern per line.
.DS_Store
# Common VCS dirs
.git/
.gitignore
.bzr/
.bzrignore
.hg/
.hgignore
.svn/
# Common backup files
*.swp
*.bak
*.tmp
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/
6 changes: 6 additions & 0 deletions charts/radar-fitbit-connector-strimzi/Chart.lock
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
dependencies:
- name: common
repository: https://radar-base.github.io/radar-helm-charts
version: 2.27.0
digest: sha256:397fd12e07f1aa1a5280579406a75b169f8262ac4214584ea366460277288546
generated: "2025-04-08T16:44:09.158978088+02:00"
27 changes: 27 additions & 0 deletions charts/radar-fitbit-connector-strimzi/Chart.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
apiVersion: v2
appVersion: 0.6.2
description: A Helm chart for RADAR-base fitbit Kafka connector using the Strimzi Operator. This application collects data from participants via the Fitbit Web API.
name: radar-fitbit-connector-strimzi
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This name works, but we need to change the release name in RADAR-Kubernets to the same name or else I get an error due to a too long name for a resource.

version: 0.0.2
icon: "http://radar-base.org/wp-content/uploads/2022/09/Logo_RADAR-Base-RGB.png"
sources:
- https://github.com/RADAR-base/radar-helm-charts/tree/main/charts/radar-fitbit-connector-strimzi
- https://github.com/RADAR-base/RADAR-REST-Connector
keywords:
- radar-base
- remote-trial
annotations:
artifacthub.io/license: Apache-2.0
deprecated: false
type: application
home: "https://radar-base.org"
maintainers:
- email: pim@thehyve.nl
name: Pim van Nierop
url: https://www.thehyve.nl/experts/pim-van-nierop
dependencies:
- name: common
repository: https://radar-base.github.io/radar-helm-charts
tags:
- bitnami-common
version: 2.x.x
Empty file.
96 changes: 96 additions & 0 deletions charts/radar-fitbit-connector-strimzi/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@


# radar-fitbit-connector-strimzi
[![Artifact HUB](https://img.shields.io/endpoint?url=https://artifacthub.io/badge/repository/radar-fitbit-connector-strimzi)](https://artifacthub.io/packages/helm/radar-base/radar-fitbit-connector-strimzi)

![Version: 0.0.2](https://img.shields.io/badge/Version-0.0.2-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 0.6.2](https://img.shields.io/badge/AppVersion-0.6.2-informational?style=flat-square)

A Helm chart for RADAR-base fitbit Kafka connector using the Strimzi Operator. This application collects data from participants via the Fitbit Web API.

**Homepage:** <https://radar-base.org>

## Maintainers

| Name | Email | Url |
| ---- | ------ | --- |
| Pim van Nierop | <pim@thehyve.nl> | <https://www.thehyve.nl/experts/pim-van-nierop> |

## Source Code

* <https://github.com/RADAR-base/radar-helm-charts/tree/main/charts/radar-fitbit-connector-strimzi>
* <https://github.com/RADAR-base/RADAR-REST-Connector>

## Prerequisites
* Kubernetes 1.28+
* Kubectl 1.28+
* Helm 3.1.0+
* PV provisioner support in the underlying infrastructure

## Requirements

| Repository | Name | Version |
|------------|------|---------|
| https://radar-base.github.io/radar-helm-charts | common | 2.x.x |

## Values

| Key | Type | Default | Description |
|-----|------|---------|-------------|
| replicaCount | int | `1` | Number of radar-fitbit-connector-strimzi replicas to deploy |
| image.registry | string | `"docker.io"` | Image registry |
| image.repository | string | `"radarbase/kafka-connect-rest-fitbit-source"` | Image repository |
| image.tag | string | `nil` | Image tag (immutable tags are recommended) Overrides the image tag whose default is the chart appVersion. |
| image.digest | string | `""` | Image digest in the way sha256:aa.... Please note this parameter, if set, will override the tag |
| image.pullPolicy | string | `"IfNotPresent"` | Image pull policy |
| image.pullSecrets | list | `[]` | Optionally specify an array of imagePullSecrets. Secrets must be manually created in the namespace. e.g: pullSecrets: - myRegistryKeySecretName |
| nameOverride | string | `""` | String to partially override radar-fitbit-connector-strimzi.fullname template with a string (will prepend the release name) |
| fullnameOverride | string | `""` | String to fully override radar-fitbit-connector-strimzi.fullname template with a string |
| podSecurityContext | object | `{}` | Configure radar-fitbit-connector-strimzi pods' Security Context |
| securityContext | object | `{}` | Configure radar-fitbit-connector-strimzi containers' Security Context |
| service.type | string | `"ClusterIP"` | Kubernetes Service type |
| service.port | int | `8083` | radar-fitbit-connector-strimzi port |
| resources.requests | object | `{"cpu":"100m","memory":"1Gi"}` | CPU/Memory resource requests |
| jvmOptions.xmx | string | `"768m"` | |
| jvmOptions.xms | string | `"256m"` | |
| nodeSelector | object | `{}` | Node labels for pod assignment |
| tolerations | list | `[]` | Toleration labels for pod assignment |
| affinity | object | `{}` | Affinity labels for pod assignment |
| secret.jaas | object | `{"key":"sasl.jaas.config","name":"shared-service-user"}` | Secret for the Kafka SASL JAAS configuration |
| extraEnvVars | list | `[]` | Extra environment variables |
| customLivenessProbe | object | `{}` | Custom livenessProbe that overrides the default one |
| livenessProbe.enabled | bool | `true` | Enable livenessProbe |
| livenessProbe.initialDelaySeconds | int | `5` | Initial delay seconds for livenessProbe |
| livenessProbe.periodSeconds | int | `30` | Period seconds for livenessProbe |
| livenessProbe.timeoutSeconds | int | `5` | Timeout seconds for livenessProbe |
| livenessProbe.successThreshold | int | `1` | Success threshold for livenessProbe |
| livenessProbe.failureThreshold | int | `3` | Failure threshold for livenessProbe |
| customReadinessProbe | object | `{}` | Custom readinessProbe that overrides the default one |
| readinessProbe.enabled | bool | `true` | Enable readinessProbe |
| readinessProbe.initialDelaySeconds | int | `5` | Initial delay seconds for readinessProbe |
| readinessProbe.periodSeconds | int | `30` | Period seconds for readinessProbe |
| readinessProbe.timeoutSeconds | int | `5` | Timeout seconds for readinessProbe |
| readinessProbe.successThreshold | int | `1` | Success threshold for readinessProbe |
| readinessProbe.failureThreshold | int | `3` | Failure threshold for readinessProbe |
| networkpolicy | object | check `values.yaml` | Network policy defines who can access this application and who this applications has access to |
| maxTasks | int | `5` | Maximum number of worker threads inside a connector pod. |
| kafkaVersion | string | `"3.9.0"` | The version of the Kafka deployed by the Strimzi operator. Must be consistent across the RADAR-base platform. |
| kafka | string | `"SASL_PLAINTEXT://radar-kafka-kafka-bootstrap:9094"` | URI of Kafka brokers of the cluster |
| schema_registry | string | `"http://radar-kafka-schema-registry:8081"` | URL of the Kafka schema registry |
| radar_rest_sources_backend_url | string | `"http://radar-rest-sources-backend:8080/rest-sources/backend/"` | Base URL of the rest-sources-authorizer-backend service |
| fitbit_api_url | string | `"https://api.fitbit.com"` | Fitbit API URL. |
| fitbit_api_client | string | `""` | Fitbit API client id. |
| fitbit_api_secret | string | `""` | Fitbit API client secret. |
| oauthClientId | string | `"radar_fitbit_connector"` | OAuth2 client id from Management Portal |
| oauthClientSecret | string | `"secret"` | OAuth2 client secret from Management Portal |
| auth_url | string | `"http://management-portal:8080/managementportal/oauth/token"` | OAuth2 Auth URL for connector client to get access tokens |
| managementportal_url | string | `"http://management-portal:8080/managementportal"` | URL of Management Portal. This will be used to create URLs to access Management Portal |
| includeIntradayData | bool | `true` | Set to true, if intraday access data should be collected by the connector. This will be set in connector.properties. |
| user_repository_class | string | `"org.radarbase.connect.rest.fitbit.user.ServiceUserRepositoryLegacy"` | Class of the user repository to use. This should be a class that implements the UserRepository interface. Use of the YamlUserRepository is deprecated, use ServiceUserRepositoryLegacy instead. |
| rest_source_poll_interval_ms | int | `60000` | How often to poll the source URL. Only use to speed up processing times during e2e testing. |
| fitbit_user_poll_interval | int | `5000` | Polling interval per Fitbit user per request route in seconds. Only use to speed up processing times during e2e testing. |
| application_loop_interval_ms | int | `300000` | How often to perform the main application loop (only controls how often to poll for new user registrations). Only use to speed up processing times during e2e testing. |
| user_cache_refresh_interval_ms | int | `3600000` | How often to invalidate the cache and poll for new user registrations. Only use to speed up processing times during e2e testing. |
| log4j | object | `{"rootLogLevel":"INFO"}` | Log4j configuration |
| log4j.rootLogLevel | string | `"INFO"` | Root log level for the Kafka Connect instance |
| sentry.dsn | string | `nil` | DSN (Data Source Name) of the sentry server |
| sentry.level | string | `"ERROR"` | Log level for sentry (TRACE, DEBUG, INFO, WARN, or ERROR) |
18 changes: 18 additions & 0 deletions charts/radar-fitbit-connector-strimzi/README.md.gotmpl
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
{{ template "common.header" . }}
{{ template "chart.deprecationWarning" . }}

{{ template "chart.badgesSection" . }}

{{ template "chart.description" . }}

{{ template "chart.homepageLine" . }}

{{ template "chart.maintainersSection" . }}

{{ template "chart.sourcesSection" . }}

{{ template "common.prerequisiteswithpv" . }}

{{ template "chart.requirementsSection" . }}

{{ template "chart.valuesSection" . }}
Binary file not shown.
Empty file.
6 changes: 6 additions & 0 deletions charts/radar-fitbit-connector-strimzi/templates/_helpers.tpl
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{{/*
Return the proper image name
*/}}
{{- define "radar-fitbit-connector.image" -}}
{{ include "common.images.image" (dict "imageRoot" .Values.image "global" .Values.global "chart" .Chart ) }}
{{- end -}}
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
# This approach allows to specify dynamic logging configuration for Kafka Connect through an external logging section of KafkaConnect resource specification.
# See: https://strimzi.io/docs/operators/0.45.1/configuring#property-kafka-connect-logging-reference
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ template "common.names.fullname" . }}-log4j
namespace: {{ include "common.names.namespace" . | quote }}
labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }}
{{- if .Values.commonAnnotations }}
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
{{- end }}
data:
log4j.properties: |-
# Root logger configuration
# The sentryAppender is added to the rootLogger if SENTRY_DSN is set
log4j.rootLogger={{ .Values.log4j.rootLogLevel | default "INFO" }}, stdout{{- if .Values.sentry.dsn }}, sentryAppender{{- end }}
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=[%d] %p %m (%c)%n

# Appender for Sentry monitoring
{{- if .Values.sentry.dsn }}
log4j.appender.sentryAppender=io.sentry.log4j.SentryAppender
log4j.appender.sentryAppender.threshold={{ .Values.sentry.level | default "INFO" }}
{{- end }}

# Default log levels
log4j.logger.org.reflections=ERROR
log4j.logger.org.I0Itec.zkclient=ERROR
133 changes: 133 additions & 0 deletions charts/radar-fitbit-connector-strimzi/templates/kafka-connect.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,133 @@
apiVersion: kafka.strimzi.io/v1beta2
kind: KafkaConnect
metadata:
name: {{ template "common.names.fullname" . }}
namespace: {{ include "common.names.namespace" . | quote }}
labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }}
annotations:
strimzi.io/use-connector-resources: "true"
{{- if .Values.commonAnnotations }}
{{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
{{- end }}
spec:
version: {{ .Values.kafkaVersion }}
replicas: {{ .Values.replicaCount }}
bootstrapServers: {{ .Values.kafka }}
image: {{ template "radar-fitbit-connector.image" . }}
{{- if .Values.secret.jaas.name }}
# Authentication-related props are handled by the template builder in https://github.com/strimzi/strimzi-kafka-operator/blob/main/cluster-operator/src/main/java/io/strimzi/operator/cluster/model/KafkaConnectConfigurationBuilder.java
authentication:
type: scram-sha-512
username: shared-service-user
passwordSecret:
secretName: {{ .Values.secret.jaas.name }}
password: password # The name of the key in the secret that contains the password
{{- end }}
autoRestart:
enabled: true # automatic restarts of failed connectors or their tasks
jvmOptions:
"-Xmx": {{ .Values.jvmOptions.xmx | quote }}
"-Xms": {{ .Values.jvmOptions.xms | quote }}
config: # Properties that configure the Kafka Connect cluster itself
group.id: {{ include "common.names.fullname" . }}
offset.storage.topic: {{ template "common.names.fullname" . }}.offset
config.storage.topic: {{ template "common.names.fullname" . }}.config
status.storage.topic: {{ template "common.names.fullname" . }}.status
# -1 means it will use the default replication factor configured in the broker
config.storage.replication.factor: -1
offset.storage.replication.factor: -1
status.storage.replication.factor: -1
key.converter: "io.confluent.connect.avro.AvroConverter"
value.converter: "io.confluent.connect.avro.AvroConverter"
key.converter.schema.registry.url: {{ .Values.schema_registry }}
value.converter.schema.registry.url: {{ .Values.schema_registry }}
internal.key.converter: "org.apache.kafka.connect.json.JsonConverter"
internal.value.converter: "org.apache.kafka.connect.json.JsonConverter"
template:
pod:
metadata:
annotations:
checksum/configmap-log4j: {{ include (print $.Template.BasePath "/configmap-log4j.yaml") . | sha256sum }}
labels:
app.kubernetes.io/name: {{ include "common.names.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
imagePullPolicy: {{ .Values.image.pullPolicy | quote }}
{{- if .Values.image.pullSecrets }}
imagePullSecrets:
{{- toYaml .Values.image.pullSecrets | nindent 8 }}
{{- end }}
securityContext:
{{- toYaml .Values.podSecurityContext | nindent 8 }}
affinity:
{{- if .Values.affinity }}
{{- toYaml .Values.affinity | nindent 8 }}
{{- end }}
podAntiAffinity:
preferredDuringSchedulingIgnoredDuringExecution:
- weight: 1
podAffinityTerm:
labelSelector:
matchExpressions:
- key: "app.kubernetes.io/name"
operator: In
values:
- {{ template "common.names.name" . }}
- key: "app.kubernetes.io/instance"
operator: In
values:
- {{ .Release.Name }}
topologyKey: "kubernetes.io/hostname"
{{- with .Values.nodeSelector }}
nodeSelector:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.tolerations }}
tolerations:
{{- toYaml . | nindent 8 }}
{{- end }}
containers:
securityContext:
{{- toYaml .Values.securityContext | nindent 12 }}
connectContainer:
env:
- name: CONNECT_REST_ADVERTISED_HOST_NAME # Possibly replaced by ADVERTISED_HOSTNAME in kafka_connect_run.sh
value: {{ include "common.names.fullname" . }}
- name: KAFKA_LOG4J_OPTS
value: "-Dlog4j.configuration=file:/opt/kafka/custom-config/log4j.properties"
{{- if .Values.sentry.dsn }}
- name: SENTRY_DSN
value: {{ .Values.sentry.dsn | quote }}
- name: SENTRY_LOG_LEVEL
value: {{ .Values.sentry.level | quote }}
{{- end }}
{{- with .Values.extraEnvVars }}
{{- toYaml . | nindent 8 }}
{{- end }}
logging:
type: external
valueFrom:
configMapKeyRef:
name: {{ template "common.names.fullname" . }}-log4j
key: log4j.properties
{{- if .Values.customLivenessProbe }}
livenessProbe: {{- .Values.customLivenessProbe | toYaml | nindent 12 }}
{{- else if .Values.livenessProbe.enabled }}
livenessProbe:
initialDelaySeconds: {{ .Values.livenessProbe.initialDelaySeconds }}
periodSeconds: {{ .Values.livenessProbe.periodSeconds }}
timeoutSeconds: {{ .Values.livenessProbe.timeoutSeconds }}
successThreshold: {{ .Values.livenessProbe.successThreshold }}
failureThreshold: {{ .Values.livenessProbe.failureThreshold }}
{{- end }}
{{- if .Values.customReadinessProbe }}
readinessProbe: {{- .Values.customReadinessProbe | toYaml | nindent 12 }}
{{- else if .Values.readinessProbe.enabled }}
readinessProbe:
initialDelaySeconds: {{ .Values.readinessProbe.initialDelaySeconds }}
periodSeconds: {{ .Values.readinessProbe.periodSeconds }}
timeoutSeconds: {{ .Values.readinessProbe.timeoutSeconds }}
successThreshold: {{ .Values.readinessProbe.successThreshold }}
failureThreshold: {{ .Values.readinessProbe.failureThreshold }}
{{- end }}
resources:
{{- toYaml .Values.resources | nindent 4 }}
Loading
Loading