From 0c4d90c6ea0287db9eaa8b9e796f5da50fa49471 Mon Sep 17 00:00:00 2001 From: faraonc Date: Tue, 14 Dec 2021 14:55:11 -0800 Subject: [PATCH 1/9] Add index.yaml --- .github/workflows/release.yml | 25 ------------------------- docs/index.yaml | 14 ++++++++++++++ 2 files changed, 14 insertions(+), 25 deletions(-) delete mode 100644 .github/workflows/release.yml create mode 100644 docs/index.yaml diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml deleted file mode 100644 index 52fe1c5..0000000 --- a/.github/workflows/release.yml +++ /dev/null @@ -1,25 +0,0 @@ -name: Release Charts - -on: - push: - branches: - - main - -jobs: - release: - runs-on: ubuntu-latest - steps: - - name: Checkout - uses: actions/checkout@v2 - with: - fetch-depth: 0 - - - name: Configure Git - run: | - git config user.name "$GITHUB_ACTOR" - git config user.email "$GITHUB_ACTOR@users.noreply.github.com" - - - name: Run chart-releaser - uses: helm/chart-releaser-action@v1.2.1 - env: - CR_TOKEN: "${{ secrets.GITHUB_TOKEN }}" diff --git a/docs/index.yaml b/docs/index.yaml new file mode 100644 index 0000000..af930a7 --- /dev/null +++ b/docs/index.yaml @@ -0,0 +1,14 @@ +apiVersion: v1 +entries: + rudderstack: + - apiVersion: v2 + appVersion: 1.16.0 + created: "2021-12-14T14:54:48.352673849-08:00" + description: A Helm chart for Kubernetes + digest: 743c20a4014dc15039059852aa76ba4cbb2d60e11c53a30ed34333aac2edda8a + name: rudderstack + type: application + urls: + - https://luxorlabs.github.io/helm-charts/rudderstack-0.3.0.tgz + version: 0.3.0 +generated: "2021-12-14T14:54:48.344752593-08:00" From a02ab5dbd6479b14d04cb8239e6cfba03c3c35e3 Mon Sep 17 00:00:00 2001 From: faraonc Date: Tue, 14 Dec 2021 15:01:18 -0800 Subject: [PATCH 2/9] Add README.md --- README.md | 19 +------------------ 1 file changed, 1 insertion(+), 18 deletions(-) diff --git a/README.md b/README.md index 73e30b6..aa54360 100644 --- a/README.md +++ b/README.md @@ -1,20 +1,3 @@ ## Usage -[Helm](https://helm.sh) must be installed to use the charts. Please refer to -Helm's [documentation](https://helm.sh/docs) to get started. - -Once Helm has been set up correctly, add the repo as follows: - - helm repo add https://.github.io/helm-charts - -If you had already added this repo earlier, run `helm repo update` to retrieve -the latest versions of the packages. You can then run `helm search repo -` to see the charts. - -To install the chart: - - helm install my- / - -To uninstall the chart: - - helm delete my- +`$ helm repo add luxor-helm https://luxorlabs.github.io/helm-charts/` From 9a1b3b359cd5927a524bf41611623283e5d0d91b Mon Sep 17 00:00:00 2001 From: faraonc Date: Tue, 14 Dec 2021 15:16:45 -0800 Subject: [PATCH 3/9] Update README.md --- README.md | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index aa54360..36f2bb9 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,19 @@ ## Usage -`$ helm repo add luxor-helm https://luxorlabs.github.io/helm-charts/` +``` +# to build a new helm charts package (tarball) +$ helm package charts/rudderstack-helm/ +$ mv rudderstack-.tgz docs + +# add to the index +$ helm repo index docs --url https://luxorlabs.github.io/helm-charts + +# add the repo if it is not added yet +$ helm repo add luxor-helm https://luxorlabs.github.io/helm-charts/ + +# pull helm repo update +$ helm repo update + +# check the desired version exists +$ helm search repo rudder -l +``` \ No newline at end of file From 93296c85550304f21608df672ea89ea3770b82fe Mon Sep 17 00:00:00 2001 From: eddiewang Date: Fri, 13 May 2022 17:07:40 +0000 Subject: [PATCH 4/9] Update index.yaml Signed-off-by: eddiewang --- index.yaml | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 index.yaml diff --git a/index.yaml b/index.yaml new file mode 100644 index 0000000..1951c4b --- /dev/null +++ b/index.yaml @@ -0,0 +1,24 @@ +apiVersion: v1 +entries: + rudderstack: + - apiVersion: v2 + appVersion: 1.16.0 + created: "2022-05-13T17:07:40.38722699Z" + description: A Helm chart for Kubernetes + digest: bcd318f34052dfaed81f26ebbe276d3f6565c74d1c6f0e71a50a11cbba605a80 + name: rudderstack + type: application + urls: + - https://github.com/LuxorLabs/helm-charts/releases/download/rudderstack-0.4.0/rudderstack-0.4.0.tgz + version: 0.4.0 + - apiVersion: v2 + appVersion: 1.16.0 + created: "2021-12-14T14:54:48.352673849-08:00" + description: A Helm chart for Kubernetes + digest: 743c20a4014dc15039059852aa76ba4cbb2d60e11c53a30ed34333aac2edda8a + name: rudderstack + type: application + urls: + - https://luxorlabs.github.io/helm-charts/rudderstack-0.3.0.tgz + version: 0.3.0 +generated: "2022-05-13T17:07:40.38724309Z" From d7aa8629095b42906b3ab0afc203d9d61f5bb14c Mon Sep 17 00:00:00 2001 From: eddiewang Date: Fri, 13 May 2022 17:25:03 +0000 Subject: [PATCH 5/9] Update index.yaml Signed-off-by: eddiewang --- index.yaml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/index.yaml b/index.yaml index 1951c4b..0cce4db 100644 --- a/index.yaml +++ b/index.yaml @@ -3,14 +3,14 @@ entries: rudderstack: - apiVersion: v2 appVersion: 1.16.0 - created: "2022-05-13T17:07:40.38722699Z" + created: "2022-05-13T17:25:03.045198459Z" description: A Helm chart for Kubernetes - digest: bcd318f34052dfaed81f26ebbe276d3f6565c74d1c6f0e71a50a11cbba605a80 + digest: eb51b3649ee2dab9121792ef9135186f53f991ed6b0b6bda40abe00642ed9f50 name: rudderstack type: application urls: - - https://github.com/LuxorLabs/helm-charts/releases/download/rudderstack-0.4.0/rudderstack-0.4.0.tgz - version: 0.4.0 + - https://github.com/LuxorLabs/helm-charts/releases/download/rudderstack-0.4.1/rudderstack-0.4.1.tgz + version: 0.4.1 - apiVersion: v2 appVersion: 1.16.0 created: "2021-12-14T14:54:48.352673849-08:00" @@ -21,4 +21,4 @@ entries: urls: - https://luxorlabs.github.io/helm-charts/rudderstack-0.3.0.tgz version: 0.3.0 -generated: "2022-05-13T17:07:40.38724309Z" +generated: "2022-05-13T17:25:03.045239759Z" From 6fbee23688f090b91f02056735e5886f6f737bb9 Mon Sep 17 00:00:00 2001 From: Eddie Wang Date: Fri, 13 May 2022 10:31:29 -0700 Subject: [PATCH 6/9] latest --- docs/index.yaml | 12 +++++++++++- docs/rudderstack-0.4.1.tgz | Bin 0 -> 50756 bytes 2 files changed, 11 insertions(+), 1 deletion(-) create mode 100644 docs/rudderstack-0.4.1.tgz diff --git a/docs/index.yaml b/docs/index.yaml index af930a7..0cce4db 100644 --- a/docs/index.yaml +++ b/docs/index.yaml @@ -1,6 +1,16 @@ apiVersion: v1 entries: rudderstack: + - apiVersion: v2 + appVersion: 1.16.0 + created: "2022-05-13T17:25:03.045198459Z" + description: A Helm chart for Kubernetes + digest: eb51b3649ee2dab9121792ef9135186f53f991ed6b0b6bda40abe00642ed9f50 + name: rudderstack + type: application + urls: + - https://github.com/LuxorLabs/helm-charts/releases/download/rudderstack-0.4.1/rudderstack-0.4.1.tgz + version: 0.4.1 - apiVersion: v2 appVersion: 1.16.0 created: "2021-12-14T14:54:48.352673849-08:00" @@ -11,4 +21,4 @@ entries: urls: - https://luxorlabs.github.io/helm-charts/rudderstack-0.3.0.tgz version: 0.3.0 -generated: "2021-12-14T14:54:48.344752593-08:00" +generated: "2022-05-13T17:25:03.045239759Z" diff --git a/docs/rudderstack-0.4.1.tgz b/docs/rudderstack-0.4.1.tgz new file mode 100644 index 0000000000000000000000000000000000000000..4566e4c297ce647fe3b98412aa019b45c1be3fc5 GIT binary patch literal 50756 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�l938(YU9GqPO$>sE5|!(yTRXDJoJ$Kbp>{ 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%0A$*HwLLaIXci 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 literal 0 HcmV?d00001 From 042c8bf1d82344f0d7a0dbeeb825bcbffadf37e0 Mon Sep 17 00:00:00 2001 From: Eddie Wang Date: Fri, 13 May 2022 10:32:14 -0700 Subject: [PATCH 7/9] latest --- docs/index.yaml | 10 ---------- index.yaml | 10 ---------- 2 files changed, 20 deletions(-) diff --git a/docs/index.yaml b/docs/index.yaml index 0cce4db..fc46b48 100644 --- a/docs/index.yaml +++ b/docs/index.yaml @@ -11,14 +11,4 @@ entries: urls: - https://github.com/LuxorLabs/helm-charts/releases/download/rudderstack-0.4.1/rudderstack-0.4.1.tgz version: 0.4.1 - - apiVersion: v2 - appVersion: 1.16.0 - created: "2021-12-14T14:54:48.352673849-08:00" - description: A Helm chart for Kubernetes - digest: 743c20a4014dc15039059852aa76ba4cbb2d60e11c53a30ed34333aac2edda8a - name: rudderstack - type: application - urls: - - https://luxorlabs.github.io/helm-charts/rudderstack-0.3.0.tgz - version: 0.3.0 generated: "2022-05-13T17:25:03.045239759Z" diff --git a/index.yaml b/index.yaml index 0cce4db..fc46b48 100644 --- a/index.yaml +++ b/index.yaml @@ -11,14 +11,4 @@ entries: urls: - https://github.com/LuxorLabs/helm-charts/releases/download/rudderstack-0.4.1/rudderstack-0.4.1.tgz version: 0.4.1 - - apiVersion: v2 - appVersion: 1.16.0 - created: "2021-12-14T14:54:48.352673849-08:00" - description: A Helm chart for Kubernetes - digest: 743c20a4014dc15039059852aa76ba4cbb2d60e11c53a30ed34333aac2edda8a - name: rudderstack - type: application - urls: - - https://luxorlabs.github.io/helm-charts/rudderstack-0.3.0.tgz - version: 0.3.0 generated: "2022-05-13T17:25:03.045239759Z" From 481c05b070ce99d9826933e10834594d6877c127 Mon Sep 17 00:00:00 2001 From: Eddie Wang Date: Tue, 25 Apr 2023 12:04:01 -0700 Subject: [PATCH 8/9] add rudderstack 0.5.0 --- charts/rudderstack-helm/Chart.yaml | 28 +++++++++---------- charts/rudderstack-helm/README.md | 9 ++++-- .../charts/postgresql/values.yaml | 10 +++---- charts/rudderstack-helm/rudder-config.yaml | 2 ++ .../rudderstack-helm/templates/_helpers.tpl | 28 +++++++++++++++++++ .../templates/configmap-rudder-server.yaml | 5 +++- .../templates/secret-rudder-token.yaml | 13 +++++++++ .../templates/statefulset.yaml | 16 +++++++++-- charts/rudderstack-helm/values.yaml | 24 +++++++++++----- 9 files changed, 102 insertions(+), 33 deletions(-) create mode 100644 charts/rudderstack-helm/templates/secret-rudder-token.yaml diff --git a/charts/rudderstack-helm/Chart.yaml b/charts/rudderstack-helm/Chart.yaml index 58b4b93..375c4a9 100644 --- a/charts/rudderstack-helm/Chart.yaml +++ b/charts/rudderstack-helm/Chart.yaml @@ -1,6 +1,6 @@ apiVersion: v2 name: rudderstack -description: A Helm chart for Kubernetes +description: Privacy and Security focused Segment-alternative, in Golang and React # A chart can be either an 'application' or a 'library' chart. # @@ -14,21 +14,21 @@ type: application # This is the chart version. This version number should be incremented each time you make changes # to the chart and its templates, including the app version. -version: 0.3.0 +version: 0.5.0 # This is the version number of the application being deployed. This version number should be # incremented each time you make changes to the application. -appVersion: 1.16.0 +appVersion: 1.4.3 # WIP -#dependencies: -# - name: nginx-ingress -# version: ~1.6.0 -# repository: https://helm.nginx.com/stable -# condition: (optional) A yaml path that resolves to a boolean, used for enabling/disabling charts (e.g. subchart1.enabled ) -# tags: # (optional) -# - Tags can be used to group charts for enabling/disabling together -# enabled: (optional) Enabled bool determines if chart should be loaded -# import-values: # (optional) -# - ImportValues holds the mapping of source values to parent key to be imported. Each item can be a string or pair of child/parent sublist items. -# alias: (optional) Alias usable alias to be used for the chart. Useful when you have to add the same chart multiple times +# dependencies: +# - name: nginx-ingress +# version: ~1.6.0 +# repository: https://helm.nginx.com/stable +# condition: (optional) A yaml path that resolves to a boolean, used for enabling/disabling charts (e.g. subchart1.enabled ) +# tags: # (optional) +# - Tags can be used to group charts for enabling/disabling together +# enabled: (optional) Enabled bool determines if chart should be loaded +# import-values: # (optional) +# - ImportValues holds the mapping of source values to parent key to be imported. Each item can be a string or pair of child/parent sublist items. +# alias: (optional) Alias usable alias to be used for the chart. Useful when you have to add the same chart multiple times diff --git a/charts/rudderstack-helm/README.md b/charts/rudderstack-helm/README.md index a6976b2..43e80f4 100644 --- a/charts/rudderstack-helm/README.md +++ b/charts/rudderstack-helm/README.md @@ -74,11 +74,13 @@ The following table lists the configurable parameters of the Rudderstack chart a | Parameter | Description | Default | | ----------------------------------- | --------------------------------------------------------------------------------------------------- | ------------------------ | | `rudderWorkspaceToken` | Workspace token from the dashboard | `-` | +| `rudderWorkspaceTokenExistingSecret` | Secret with workspace token (overrides `rudderWorkspaceToken`) | `-` | | `backend.image.repository` | Container image repository for the backend | `rudderlabs/rudder-server` | | `backend.image.version` | Container image tag for the backend. [Available versions](https://hub.docker.com/r/rudderlabs/rudder-server/tags) | `v0.1.6` | | `backend.image.pullPolicy` | Container image pull policy for the backend image | `Always` | -| `transformer.image.repository` | Container image repository for the transformer | `rudderlabs/transformer` | -| `transformer.image.version` | Container image tag for the transformer. [Available versions](https://hub.docker.com/r/rudderlabs/rudder-transformer/tags) | `v0.1.2` | +| `backend.config.overrides` | object | `{}` | rudder-server config overrides See [config parameters](https://docs.rudderlabs.com/administrators-guide/config-parameters) for more details | +| `transformer.image.repository` | Container image repository for the transformer | `rudderstack/transformer` | +| `transformer.image.version` | Container image tag for the transformer. [Available versions](https://hub.docker.com/r/rudderstack/rudder-transformer/tags) | `latest` | | `transformer.image.pullPolicy` | Container image pull policy for the transformer image | `Always` | | `backend.extraEnvVars` | Extra environments variables to be used by the backend in the deployments | `Refer values.yaml file` | | `backend.controlPlaneJSON` | If `true`, backend will read config from the workspaceConfig.json file | `false` | @@ -92,7 +94,8 @@ $ helm install --name my-release \ ``` **Note:** Configuration specific to: -- Backend can be edited in [rudder-config.yaml](https://docs.rudderlabs.com/administrators-guide/config-parameters). + +- Backend can be edited in [rudder-config.yaml](https://github.com/rudderlabs/rudderstack-helm/blob/master/rudder-config.yaml). or in values.yaml under `backend.config.overrides`. - PostgreSQL can be edited in `pg_hba.conf`, `postgresql.conf` ## Components diff --git a/charts/rudderstack-helm/charts/postgresql/values.yaml b/charts/rudderstack-helm/charts/postgresql/values.yaml index 00bf6f7..922d4e0 100644 --- a/charts/rudderstack-helm/charts/postgresql/values.yaml +++ b/charts/rudderstack-helm/charts/postgresql/values.yaml @@ -209,11 +209,11 @@ ldap: tls: false ## PostgreSQL service configuration -# service: -# ## PosgresSQL service type -# type: ClusterIP -# # clusterIP: None -# port: 5432 +service: + ## PosgresSQL service type + type: ClusterIP + # clusterIP: None + port: 5432 ## Specify the nodePort value for the LoadBalancer and NodePort service types. ## ref: https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport diff --git a/charts/rudderstack-helm/rudder-config.yaml b/charts/rudderstack-helm/rudder-config.yaml index b9af72a..17b9aed 100644 --- a/charts/rudderstack-helm/rudder-config.yaml +++ b/charts/rudderstack-helm/rudder-config.yaml @@ -35,6 +35,8 @@ Gateway: maxTransformerProcess: 64 maxRetry: 5 maxRetryTime: 10s + sourceListForParsingParams: + - shopify EventSchemas: enableEventSchemasFeature: false syncInterval: 240s diff --git a/charts/rudderstack-helm/templates/_helpers.tpl b/charts/rudderstack-helm/templates/_helpers.tpl index 6e69832..35943b0 100644 --- a/charts/rudderstack-helm/templates/_helpers.tpl +++ b/charts/rudderstack-helm/templates/_helpers.tpl @@ -51,6 +51,13 @@ app.kubernetes.io/name: {{ include "rudderstack.name" . }} app.kubernetes.io/instance: {{ .Release.Name }} {{- end -}} +{{/* +Return secret name to be used based on provided values. +*/}} +{{- define "rudderstack.rudderWorkspaceTokenSecretName" -}} +{{- default (include "rudderstack.fullname" .) .Values.rudderWorkspaceTokenExistingSecret -}} +{{- end -}} + {{- define "transformer.name" -}} {{- printf "%s-%s" (include "rudderstack.name" .) "transformer" -}} {{- end -}} @@ -86,6 +93,27 @@ Return the appropriate apiVersion for statefulset. {{- end -}} {{- end -}} +{{- define "statsd.enabled" -}} +{{- if .Values.telegraf_sidecar -}} +{{- if .Values.telegraf_sidecar.enabled }} +{{ .Values.telegraf_sidecar.enabled }} +{{- end -}} +{{- else -}} +{{ fail "Telegraf sidecar block doesn't exist in values.yaml ." }} +{{- end -}} +{{- end -}} + +{{- define "statsd.url" -}} +{{- if .Values.telegraf_sidecar -}} +{{- if .Values.telegraf_sidecar.enabled -}} +{{- printf "localhost:8125" }} +{{- else -}} +{{ fail "Sidecar Telegraf is not enabled. We can't deduce statsd url." }} +{{- end -}} +{{- else -}} +{{ fail "Telegraf sidecar block doesn't exist in values.yaml . We can't deduce statsd url." }} +{{- end -}} +{{- end -}} {{/*telegraf helper functions */}} diff --git a/charts/rudderstack-helm/templates/configmap-rudder-server.yaml b/charts/rudderstack-helm/templates/configmap-rudder-server.yaml index 63bc5da..8d0c88a 100644 --- a/charts/rudderstack-helm/templates/configmap-rudder-server.yaml +++ b/charts/rudderstack-helm/templates/configmap-rudder-server.yaml @@ -1,3 +1,6 @@ +--- +{{- $baseConfig := .Files.Get "rudder-config.yaml" | fromYaml -}} +{{- $mergedConfig := mustMergeOverwrite $baseConfig .Values.backend.config.overrides -}} apiVersion: v1 kind: ConfigMap metadata: @@ -7,7 +10,7 @@ metadata: release: {{ .Release.Name | quote }} data: config.yaml: |- -{{ .Files.Get "rudder-config.yaml" | indent 4}} + {{ $mergedConfig | toYaml | nindent 4 }} google-application-credentials.json: |- {{.Files.Get "rudder-google-application-credentials.json" | indent 4}} {{- if .Values.backend.controlPlaneJSON}} diff --git a/charts/rudderstack-helm/templates/secret-rudder-token.yaml b/charts/rudderstack-helm/templates/secret-rudder-token.yaml new file mode 100644 index 0000000..80c6909 --- /dev/null +++ b/charts/rudderstack-helm/templates/secret-rudder-token.yaml @@ -0,0 +1,13 @@ +{{- if not .Values.rudderWorkspaceTokenExistingSecret }} +--- +apiVersion: v1 +kind: Secret +metadata: + name: {{ template "rudderstack.rudderWorkspaceTokenSecretName" . }} + labels: + {{- include "rudderstack.labels" . | nindent 4 }} +type: Opaque +data: + rudderWorkspaceToken: {{ required "value for either .Values.rudderWorkspaceTokenExistingSecret or .Values.rudderWorkspaceToken is expected" .Values.rudderWorkspaceToken | b64enc | quote }} +{{- end }} + diff --git a/charts/rudderstack-helm/templates/statefulset.yaml b/charts/rudderstack-helm/templates/statefulset.yaml index 68466f7..f47e8f4 100644 --- a/charts/rudderstack-helm/templates/statefulset.yaml +++ b/charts/rudderstack-helm/templates/statefulset.yaml @@ -1,3 +1,5 @@ +{{- $baseConfig := .Files.Get "rudder-config.yaml" | fromYaml -}} +{{- $rudderConfig := mustMergeOverwrite $baseConfig .Values.backend.config.overrides -}} apiVersion: {{ include "statefulset.apiVersion" . }} kind: StatefulSet metadata: @@ -15,7 +17,10 @@ spec: labels: {{- include "rudderstack.selectorLabels" . | nindent 8 }} annotations: - checksum/rudder-config: {{ .Files.Get "rudder-config.yaml" | sha256sum }} + {{- if not .Values.rudderWorkspaceTokenExistingSecret }} + checksum/rudder-workspace-token: {{ include (print $.Template.BasePath "/secret-rudder-token.yaml") . | sha256sum }} + {{- end }} + checksum/rudder-config: {{ $rudderConfig | toYaml | sha256sum }} checksum/rudder-bigquery-credentials: {{ .Files.Get "bigquery-credentials.json" | sha256sum }} spec: {{- with .Values.global.imagePullSecrets }} @@ -27,12 +32,14 @@ spec: defaultMode: 420 name: {{ include "backend.fullname" . }}-config name: backend-config-volume + {{- if .Values.telegraf_sidecar }} {{- if .Values.telegraf_sidecar.enabled}} - name: telegraf configMap: defaultMode: 420 name: {{ include "telegraf-sidecar.fullname" . }}-config {{- end }} + {{- end }} {{- if .Values.gcpCredentialSecret.enabled }} - name: google-application-credentials secret: @@ -71,7 +78,10 @@ spec: {{- .Values.backend.extraEnvVars | toYaml | nindent 10 }} {{- end }} - name: CONFIG_BACKEND_TOKEN - value: {{ .Values.rudderWorkspaceToken }} + valueFrom: + secretKeyRef: + name: {{ template "rudderstack.rudderWorkspaceTokenSecretName" . }} + key: rudderWorkspaceToken {{- if .Values.backend.controlPlaneJSON }} - name: RSERVER_BACKEND_CONFIG_CONFIG_FROM_FILE value: "{{ .Values.backend.controlPlaneJSON }}" @@ -103,7 +113,7 @@ spec: - name: KUBE_NAMESPACE value: {{ .Release.Namespace }} command: ["/docker-entrypoint.sh"] - args: ["/bin/sh","-c","/wait-for $JOBS_DB_HOST:$(JOBS_DB_PORT) -- /rudder-server"] + args: ["/bin/sh","-c","/wait-for $JOBS_DB_HOST:$(JOBS_DB_PORT) {{ if (include "statsd.enabled" .) -}} -- /wait-for -u {{ include "statsd.url" .}} {{- end }} -- /rudder-server"] {{- if .Values.telegraf_sidecar.enabled}} - name: {{ include "telegraf-sidecar.name" .}} image: "{{ .Values.telegraf_sidecar.image.repo }}:{{ .Values.telegraf_sidecar.image.tag }}" diff --git a/charts/rudderstack-helm/values.yaml b/charts/rudderstack-helm/values.yaml index da7fa59..0792bbe 100644 --- a/charts/rudderstack-helm/values.yaml +++ b/charts/rudderstack-helm/values.yaml @@ -7,8 +7,9 @@ # Following values must be filled in for the deployment to succeed # Please uncomment below lines and fill values accordingly. -# Please enter api token obtained from rudder dashboard below -# rudderWorkspaceToken: +# Please enter api token obtained from rudder dashboard below or specify existing secret, that contains rudderWorkspaceToken key +rudderWorkspaceToken: replaceMe +# rudderWorkspaceTokenExistingSecret: gcpCredentialSecret: enabled: false @@ -30,7 +31,7 @@ global: backend: image: repository: rudderlabs/rudder-server - version: 1-alpine + version: latest pullPolicy: Always controlPlaneJSON: false ingress: @@ -44,7 +45,7 @@ backend: annotations: ## Refer https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer for more annotations service.beta.kubernetes.io/aws-load-balancer-backend-protocol: http - ## For enabling https on aws, + ## For enabling https on aws, ## uncomment below line with acm managed certificate arn and change port value below to 443 # service.beta.kubernetes.io/aws-load-balancer-ssl-cert: arn:aws:acm:us-east-1:123456789012:certificate/12345678-1234-1234-1234-123456789012 type: LoadBalancer @@ -68,6 +69,12 @@ backend: config: mountPath: "/etc/rudderstack" + # -- rudder-server config overrides + # See [config parameters](https://docs.rudderlabs.com/administrators-guide/config-parameters) for more details + overrides: {} + # enableStats: false + # Logger: + # consoleJsonFormat: true extraEnvVars: - name: CONFIG_BACKEND_URL @@ -84,7 +91,7 @@ backend: - name: RUDDER_TMPDIR value: "/data/rudderstack" - name: JOBS_BACKUP_STORAGE_PROVIDER - value: "S3" # object storage provider to store backups eg. S3, GCS, AZURE_BLOB, MINIO + value: "S3" # object storage provider to store backups eg. S3, GCS, AZURE_BLOB, MINIO - name: JOBS_BACKUP_BUCKET value: "Add your bucket name to store backups of incoming events" - name: JOB_STATUS_BACKUP_BUCKET @@ -92,14 +99,17 @@ backend: - name: GOOGLE_APPLICATION_CREDENTIALS value: "/etc/rudderstack/google-application-credentials.json" - name: LOG_LEVEL - value: "INFO" # eg. DEBUG, ERROR + value: "INFO" # eg. DEBUG, ERROR + # DO NOT REMOVE - Mandatory env for Shopify + - name: RSERVER_GATEWAY_WEBHOOK_SOURCE_LIST_FOR_PARSING_PARAMS + value: Shopify transformer: replicaCount: 1 service: port: 9090 image: - repository: rudderlabs/rudder-transformer + repository: rudderstack/rudder-transformer version: latest pullPolicy: Always resources: From 873e7720051314c76dd1cec56cd69a7c116f73e3 Mon Sep 17 00:00:00 2001 From: Eddie Wang Date: Tue, 25 Apr 2023 12:46:44 -0700 Subject: [PATCH 9/9] update index --- docs/index.yaml | 28 ++++++++++++++++++++++++---- docs/rudderstack-0.5.0.tgz | Bin 0 -> 51128 bytes 2 files changed, 24 insertions(+), 4 deletions(-) create mode 100644 docs/rudderstack-0.5.0.tgz diff --git a/docs/index.yaml b/docs/index.yaml index fc46b48..800c452 100644 --- a/docs/index.yaml +++ b/docs/index.yaml @@ -1,14 +1,34 @@ apiVersion: v1 entries: rudderstack: + - apiVersion: v2 + appVersion: 1.4.3 + created: "2023-04-25T12:46:25.207157-07:00" + description: Privacy and Security focused Segment-alternative, in Golang and React + digest: 8e4c8eeba30525170a01ffd14d95018d86bcbe391cfb40e367255b7ba77e6e85 + name: rudderstack + type: application + urls: + - https://luxorlabs.github.io/helm-charts/rudderstack-0.5.0.tgz + version: 0.5.0 - apiVersion: v2 appVersion: 1.16.0 - created: "2022-05-13T17:25:03.045198459Z" + created: "2023-04-25T12:46:25.204487-07:00" description: A Helm chart for Kubernetes - digest: eb51b3649ee2dab9121792ef9135186f53f991ed6b0b6bda40abe00642ed9f50 + digest: c8dfb21fabd0ee5b17eaeaeaf125a7206580eb23d19288b019dad15e349d9451 name: rudderstack type: application urls: - - https://github.com/LuxorLabs/helm-charts/releases/download/rudderstack-0.4.1/rudderstack-0.4.1.tgz + - https://luxorlabs.github.io/helm-charts/rudderstack-0.4.1.tgz version: 0.4.1 -generated: "2022-05-13T17:25:03.045239759Z" + - apiVersion: v2 + appVersion: 1.16.0 + created: "2023-04-25T12:46:25.201903-07:00" + description: A Helm chart for Kubernetes + digest: 743c20a4014dc15039059852aa76ba4cbb2d60e11c53a30ed34333aac2edda8a + name: rudderstack + type: application + urls: + - https://luxorlabs.github.io/helm-charts/rudderstack-0.3.0.tgz + version: 0.3.0 +generated: "2023-04-25T12:46:25.199424-07:00" diff --git a/docs/rudderstack-0.5.0.tgz b/docs/rudderstack-0.5.0.tgz new file mode 100644 index 0000000000000000000000000000000000000000..522e1e476bf7d29f5a4a751d4bb4a2d89f52429f GIT binary patch literal 51128 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

4|}=f>9L9 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î?8;?(rr=Ik}D?AlX5FKW5 zC=nItiO%%-WE+uC5FJKCzlk8+8znR#ZRkL>H)2k_IMET0^*d-u z5kLxR7r9;Op5A9MnbIJd5yG6~soK$sgwQhBFkUn^#@GZ$iH_@JlDrl@aa)CP&2?u^ zmyQ>+APe0L=K6YYUd-twmc+AD-L|9MK(R}<>cu>=wZoBV5@b3oiJ~uv4PWQR+|p)c z8qw%Lg3q%+Z+d4x!@4}~9UY*643g2vSo=?CL<2H#a52xK*Od04W6|DF&3i2J23U-} zwA}{MeOR5QT0>`&n+w|*b0s5$(~ONd61+9s$;^5-f#ppwjZ$L;YxtlFZmD&)fm~ys zZlOojX3gGoV@2yBXs}_z^SO}{-54nw8^%-bBy-j5+UT-yHx74?MkX`XxjE-P?b;$4 zI<+b7x10%3c#e>qNPi437O0rtj=(5pXH<@o?$zS7?0)|ISN;U)GoWmF}Z|e}WkedU zMq5P$Nl3T}Sld)v^QUHOW`kWOq(p|JNfJsLhr~t=TC&nVi zGl@8%{}OB!*Q{CNUDVmx=`?bU_Mlo;gPeswiF!SjSToq&44hVg7of@X!g*&FT6zuulc!Da?M!0A;iqGoM2AoU z#0M&z%r09qD|7ikMJ9k|s_NS?+EGuA351#OEd6?*cjQ8PJc*ppXdeu0-ONs`FursJ z+#k5Wpl2PwyH%hXm9oQR)b6DU+gEx&>)J2s(-AO{oL`aprghuJlo_h0s-Pi_4K?Ey z$e(CPTnYDW(PQN{@TyrMDA#N^b1`Zovdv)Bx;5PbkP3#Ghz(s-c2HJOXkp!^jxr}2 zDuV&Sd?aoOJ{Ly^&|8m#8)i<}H5yq6S8Zb{7Q$^vjw6A6>(Fy&;Qoq3h1KG;=I$fh z!I({@Iv>HJ3LddV2*F<(X**72`8_uzMlvevkcf8XWjBMxMILBED#4+!bHc7! z#9l7L!VLP-JF*!(_JrLh2Z=;#+kk=>)&$vREGpDmfRd->m@t>Wd4#N_kcYc9&t9#0 zl6eE->8mww$k_z0tb_+wYn~kA2spO2Kg}9a5EW6m?*zf0B}5&f3ny|+B560{O7aAe zIntpm9K(l3cC_qT?=WMKTqw1W_#A7Bd4z}J(a!^%rxJASfih8>nd4CZCwU?yydN_m z)7MZ4-V_Qb(4+wbR;Z?>wH!-TtV^L z*JfsjjSWuFg3 z!i-nnuIAQU!vbp}(rcabWO||AUg*YKV%$a7Mj4GZ{=Ge*QCp1d3*wI%YVNTtD0{1! z+hq#-Nh(t2oT3U@6^a-%FW}6W{>lqeg(<9o+e*^Pp`?hS!dz={tX7|BQ*ltN4V=s& zRg|X|*ebxM<{YA5;*fz_(*X!EUIAedbR#+f+*T=s0>`*o=&ZtNu(XJfK*yFLd_qCX zG2+-Kpl__D*zj58lURzjf?ly@(TfRrAA8r{+cuKq|L3QuqqAo_CsLAM$q<(X99xq$)^>#0lVA}Hyp-6IxS>c6A96g3 z?z11ds$ZmNOZH@(`9s7YV^U;w^}D(rzZy<%{G!NIark5u^0_RZ4JV8rUGS!ea#PN( z!p0pWFcSE0-*+p_&9eogsXhk-r^J;&JSl;n;s;G zp5VSO+>HGA&P<%30ZwxPTrkC4>oU|l5WKFFr?-Uw<|8v7nS#Q?sj7k1-48;OpJd=7 z7CAqrYhKVksO=&3rZroWQq%}Mmn7yB@H@7yq>QqYGY|~uW{wQD&ib;kIkTX-C8Q?$ zX|=W!gWMcLKhdD|97ahQIKp)-qk+0D`R<)g~P%TWJXDbtV_^sSIFrH zjF2XSl>^<5OaF0EMHpE8tXPWb-pP0Q;>iEUSN)_c2su^^t|W$hGKDFdBF5m>7QEHq z3$!guxNXu>2C#!$Aw{9z2`@0Mp%yZKj(Y-@1pjUaY}U>vQ$h+pI=J{Z?4Z5O9lLxK z@mD{K!Z6yr(cMJ|2~jx6{OnF0TLpMc`=EQYD}(=#puzI}MD5GL|h) zG=-myS)l{z2&}Z0NDMp%19DZBkGy1EvcDK9B{U z>L(PLt%|juG<^SSKKi?OUl^Wj$8P$>wk39pQcnkW{CG7aAI&^WFa(@vamkX@s5^#J z;x1p%L@{w0MJ1R>UfZ-Ye(hLa@8>-pAHsVs8=cE;%*pG64sjv(rO#@AA! z^6sC601y97n5u<8{DKxz0}iuEUCw1`ZNZxQu|H-(L-X@7gP8TgT4XeS|Ko|Wg-H{b zqDUa$8nTv#(I6?~;16#sDpr5Rz9JSnsVT&2$d&pUgM}q%W0gxa*ikitYG*>h%qiub zfWlDXM#YarZ1NU>0wHZwg&BO9D6BQCUxbY<(MYU#337r4 zZgh&Xyc`f;wvBAmyk=~NOJTH;TqFS##zY4`FhBT|g#~*b<4%%?zcUYBzY7~SaXvh& zx$|on^?W-)Si>t;h^$z-1gqIy3XqT~L|X%75&=f0VQuYS=@>LjrfG@ZG2-Nf4jJl> z+%l;Q+R^Ax;=$hG(M5<)hH1%fJ5$T5B(V@vMdZ?#{t0}ut|rq^g}LxPj_%-$5_G8C z8WjIuAOi9TLBnppjxjoTJJ;@ATIj-02>V%_R=JRrg?>w7)bLU6Kg0WNL)r#o1xQbglJ0` zGG-Dpz0@CQBZY@mL*wx(#|6W)g?h91 zl^=YS=Oq2&!2Aol^YF8lKvLoh@mbswSQ;LDmehV-)YdApR*P)8IDw;Z#$uM|0+G@W zLcB|}WWd%EUDx&4k_9=c5QhqBZy6uslU+-`+~@a=Zle^pbIKzB&eS6Vq*dK=mp|h} zFewZ5@X!KG?^R~(dXlkxl0<78QCLYK+@|!q9@xALyYUsFlmDsv`W3xU*FGvfE|NG@GiFKU4~7P~ zA~8reJIYuEQ=&raJpT=~p);*Qm_l^9a;UTB`QeX_=&MSg|j5t{_q+Da|^drVc z;y=nUGracB{jqw7i+gG2K{~!MobqlWe>@lT-q`cGcJ{X$obzpPVX=_elkEkxVgIPp zfxn~2pe$#^m+kJ|mHBcy^|^p*&@#Ds9Ni~|3dkBdYK>Gu0|dOQ zhQJN{0@bm{SJ><=I61!R!KZ)pE;)grU-(fnb|-$Wh}|fc+8y2z4NOcbf9;6$~oY_!p|SxU)=LK1aOPt*OKcvK?um5 zZ8@Pk+bvKxU4A2*b$i!VtuU>&6e&l^OGIkCx*lq&~VS!lYqStp`ec z2cDiNV3VZt)w|A((O^Z!{c<GbBA1C5kWqTn2TE< zW>c?jbOVAs$Fq;r0Z8#RcU92j2?llYEz|(0&__KQpOHVv+w`YnE-(OUL7{l=hX5U{ zN*F!Z#?ZH|r7(MRKrmEjO&*%0{Q9Z$Q^%^>a>%R&pBR)modZ<@6cp^u^d+MCb@oKE zazdnWnI-aBJ`9sGr*qLH35VLtv&>m0vaO&#JB<0kGiQ_namWOIe=aj5n;sfukcq;g zh-!+&7MFDGhjTLn3mMr&hK<~_=5q(ak&cY8rBk^L?ne?Cq>2{(p%)7@wxikh z^8IP=rvLuK^_v$vW?~o0B}1mU`CRGDU1fBG#R8lJGn%G;F?nOpT})-mspg+Mzq-=D zd|@lUGEPb0J@Nr72GsewfKL zeQD5@7+kKIuw3E?-s<$iSWies<^bA$bWi8AAvm{d_TRSdKbb;jsSA+FPaz`la)Z_^&;hQjBfvkQyGeD3mpfC~kSg}rDP1-ddGXSde5Sl`9s zo`Io6l{MyM|NSW@AgMJOx@)XA=p(TGGkf4i_Vi!s)Vucne?uwma<@nydlX!;|L=G9U)A^jS9`BE`~P!X^LhIv%)+UM zjz|1J#}|h;Q{F7Y3G?7(8&{b2ORM)amHDM&!y-V5?=112BMj+HbKTKz;E{(+;WVw~ z5@nvj;2RWK84uxTAO8%eR~YFBwxfyhImQ1b9yRcVD1-3Uek=Vb9EB|4Gn`OctWS)n z!LBOnKTD?Ve9)%3^-(-xA90Xs9hqRpm#o?V^qP+Rwn{isEm}X>s(0>vVXbE8`;EMLfmQI{ ztlzT+pQ<&8N_DkYyjGq*n!z*+<6;E%-*V?~xm}}1B83>uw_(M=-#tDjQ` zi_t=Fp?koJPR2Lwd#hx&IQ=aYx$q4Q^L&@G|HlUV#(v7YN~Y5!7H$j=^GWXzp$Uto zZa$%%#k*Is5><0am}!1TI$)m*@-7%dohp2+l-K;XWuZdpiufMB^vO5)txO6AM*SP9 zh=3$#aOYKo0SSrL*nY}!ah(>dSJi3cgR}>$rK^TdrF7*jNi%isfAsdWx&Gv9ZTT<2 zes(d9Ly-fQOfz>KWOp zI=^W$?|zybfB3sAx$Ab|OdW3XvJpu+NsS9XI>_Prb|?=G5?BO)%R zf{f45O#({}eorjvwN%x}dJ`Sg&&yg9bh%siL{mzh25@qdry}{6KaHA8HMTwaK%)yw zB988VQ{qrxNLM~|_meDB&IfJPfyKgG`gx{yZo5jWZ`gB|zS71XlLyoYdWM=xvOOt^ z)YM+-8X_(Q%;!xy7K1X719XuLlgNYXlfL?;!E1&tUgkSicvTt{dplu%R7|SBAR`q< zo4j7WA8o^I)ihAlWRvD8J#e}mv(Z^RtJ5$}A*KlhY7J^0Mk?=plUy_mR{d#Z$S%zn z({!R=s~A+)o*+x*EtRH171bBYF7woBxKxH20jY{H?Lki|=|}HFo9oA1Ys-IfL41NM z$SVJ@!=t7AFR%6wHuB$dTowN>Df)?{?2niG$mycN^r0;n#$NA;4ekL`iC8QVPNrYq z4VyOhiri3@FP|jh9sI=>+qLI^!SaIsb#&D1daJ>z`G3^iujhX|JlM?tXSo{Ze?JKt z=Dxk&gK9QGG=Xoutj`4xq=|fa?2fuMH~Mm_APhtd)CH(<%7w%&Hs_N`7Ca0LIZ#J zrA!Hp*LvyZx2g5g9r$0Ymu@jlt(X62ZNW!B3zIU3v(sK~xoMXChYbtM4Fl%4>AfuZ lkLAwtVG^+RUulEiT$^iiZLWK+{|^8F|NoG4mHYrY1OS{|3rGL} literal 0 HcmV?d00001