updating aisqared version of helm chart#135
Conversation
📝 WalkthroughWalkthroughThe ChangesAISquared Helm Chart Rebrand
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes Possibly related PRs
Suggested labels
Suggested reviewers
Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 inconclusive)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
⚔️ Resolve merge conflicts
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 5
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@charts/aisquared/Chart.yaml`:
- Line 4: In the chart description for AISquared in Chart.yaml, correct the typo
by changing "qHightouch" to "Hightouch" on line 4 of the file. The description
currently reads "...offering an alternative to qHightouch, Census, and similar
platforms..." and should read "...offering an alternative to Hightouch, Census,
and similar platforms..." to properly reference the Hightouch brand.
In `@charts/aisquared/templates/aisquared-config.yaml`:
- Around line 98-99: Quote the values for STORAGE_ACCESS_KEY and
STORAGE_ACCOUNT_NAME in the aisquared-config.yaml file to ensure consistency
with other environment variable entries and maintain type safety. Wrap both {{
.Values.aisquaredConfig.storageAccessKey }} and {{
.Values.aisquaredConfig.storageAccountName }} with double quotes so that empty
values render as empty strings instead of null, preventing inconsistent runtime
parsing behavior.
- Around line 33-37: Credentials and sensitive data should not be stored in a
ConfigMap. Move all secret values (AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, and
other sensitive configuration keys) from the ConfigMap.data section to a
Kubernetes Secret resource. Then update the pod/container specification to
reference these secrets using envFrom with secretRef or individual secretKeyRef
entries instead of consuming them directly from ConfigMap. Ensure all credential
material is migrated to the Secret primitive while maintaining the same
environment variable names for the application.
In `@charts/aisquared/templates/aisquared-server-service.yaml`:
- Line 19: Replace the leading tab character with spaces on line 19 in both YAML
template files. In charts/aisquared/templates/aisquared-server-service.yaml at
line 19 and charts/aisquared/templates/aisquared-ui-service.yaml at line 19,
remove the tab indentation before the `{{- .Values.aisquaredServer.ports |
toYaml | nindent 2 -}}` and `{{- .Values.aisquaredUI.ports | toYaml | nindent 2
-}}` template expressions respectively, and replace it with the appropriate
number of spaces to maintain proper YAML indentation alignment with surrounding
content.
In `@charts/aisquared/values.yaml`:
- Line 223: The configuration key in values.yaml is named aisSecretAlias but the
template consumers in aisquared-secret-provider-class-ais.yaml and worker env
refs expect aisCredsSecretAlias, causing a mismatch that breaks secret wiring.
Rename the key from aisSecretAlias to aisCredsSecretAlias in the values.yaml
file to align with what the templates are consuming.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: edfcd249-419d-429f-9352-48f7ea8a8792
📒 Files selected for processing (51)
charts/aisquared/Chart.yamlcharts/aisquared/templates/_helpers.tplcharts/aisquared/templates/aisquared-cluster-role.yamlcharts/aisquared/templates/aisquared-config.yamlcharts/aisquared/templates/aisquared-ingress.yamlcharts/aisquared/templates/aisquared-namespace.yamlcharts/aisquared/templates/aisquared-postgresql-deployment.yamlcharts/aisquared/templates/aisquared-postgresql-pvc.yamlcharts/aisquared/templates/aisquared-postgresql-service.yamlcharts/aisquared/templates/aisquared-secret-provider-class-ais.yamlcharts/aisquared/templates/aisquared-secret-provider-class-temp-store.yamlcharts/aisquared/templates/aisquared-secret-provider-class-temporal-visibility.yamlcharts/aisquared/templates/aisquared-secret-provider-class-temporal.yamlcharts/aisquared/templates/aisquared-server-deployment.yamlcharts/aisquared/templates/aisquared-server-hpa.yamlcharts/aisquared/templates/aisquared-server-service.yamlcharts/aisquared/templates/aisquared-service-account.yamlcharts/aisquared/templates/aisquared-solid-worker-deployment.yamlcharts/aisquared/templates/aisquared-solid-worker-hpa.yamlcharts/aisquared/templates/aisquared-solid-worker-service.yamlcharts/aisquared/templates/aisquared-ui-deployment.yamlcharts/aisquared/templates/aisquared-ui-hpa.yamlcharts/aisquared/templates/aisquared-ui-service.yamlcharts/aisquared/templates/aisquared-worker-deployment.yamlcharts/aisquared/templates/aisquared-worker-hpa.yamlcharts/aisquared/templates/aisquared-worker-service.yamlcharts/aisquared/templates/box-config.yamlcharts/aisquared/templates/box-deployment.yamlcharts/aisquared/templates/box-hpa.yamlcharts/aisquared/templates/box-namespaces.yamlcharts/aisquared/templates/box-rbac.yamlcharts/aisquared/templates/box-service-account.yamlcharts/aisquared/templates/box-service.yamlcharts/aisquared/templates/cluster-autoscaler-priority-expander.yamlcharts/aisquared/templates/lightning-config.yamlcharts/aisquared/templates/lightning-deployment.yamlcharts/aisquared/templates/lightning-hpa.yamlcharts/aisquared/templates/lightning-service.yamlcharts/aisquared/templates/production-issuer.yamlcharts/aisquared/templates/staging-issuer.yamlcharts/aisquared/templates/temporal-config-map.yamlcharts/aisquared/templates/temporal-deployment.yamlcharts/aisquared/templates/temporal-service.yamlcharts/aisquared/templates/temporal-ui-deployment.yamlcharts/aisquared/templates/temporal-ui-service.yamlcharts/aisquared/values.yamlcharts/multiwoven/templates/multiwoven-config.yamlcharts/multiwoven/templates/multiwoven-server-hpa.yamlcharts/multiwoven/templates/multiwoven-solid-worker-hpa.yamlcharts/multiwoven/templates/multiwoven-ui-hpa.yamlcharts/multiwoven/templates/multiwoven-worker-hpa.yaml
💤 Files with no reviewable changes (5)
- charts/multiwoven/templates/multiwoven-ui-hpa.yaml
- charts/multiwoven/templates/multiwoven-config.yaml
- charts/multiwoven/templates/multiwoven-server-hpa.yaml
- charts/multiwoven/templates/multiwoven-solid-worker-hpa.yaml
- charts/multiwoven/templates/multiwoven-worker-hpa.yaml
| name: aisquared | ||
| description: | | ||
| Multiwoven is an open-source reverse ETL tool, offering an alternative to qHightouch, Census, and similar platforms. 🔥 | ||
| AISquared is an open-source reverse ETL tool, offering an alternative to qHightouch, Census, and similar platforms. 🔥 |
There was a problem hiding this comment.
Fix typo in chart description branding text.
Line 4 says qHightouch, which looks like a typo and should be Hightouch.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@charts/aisquared/Chart.yaml` at line 4, In the chart description for
AISquared in Chart.yaml, correct the typo by changing "qHightouch" to
"Hightouch" on line 4 of the file. The description currently reads "...offering
an alternative to qHightouch, Census, and similar platforms..." and should read
"...offering an alternative to Hightouch, Census, and similar platforms..." to
properly reference the Hightouch brand.
| AWS_ACCESS_KEY_ID: {{ .Values.aisquaredConfig.awsAccessKeyId | quote }} | ||
| AWS_LAMBDA_API_URL: {{ .Values.aisquaredConfig.awsLambdaApiUrl | quote }} | ||
| AWS_REGION: {{ .Values.aisquaredConfig.awsRegion | quote }} | ||
| AWS_S3_BUCKET: {{ .Values.aisquaredConfig.awsS3Bucket | quote }} | ||
| AWS_SECRET_ACCESS_KEY: {{ .Values.aisquaredConfig.awsSecretAccessKey | quote }} |
There was a problem hiding this comment.
Do not store credentials/secrets in a ConfigMap.
These lines place credential material in ConfigMap.data (also flagged by Trivy KSV-0109). ConfigMaps are not the right primitive for sensitive values; move secret keys to a Kubernetes Secret (or external secret sync) and consume via envFrom.secretRef / secretKeyRef.
Also applies to: 41-44, 50-52, 55-55, 60-60, 63-63, 69-69, 88-88, 93-93, 112-112, 124-124
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@charts/aisquared/templates/aisquared-config.yaml` around lines 33 - 37,
Credentials and sensitive data should not be stored in a ConfigMap. Move all
secret values (AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, and other sensitive
configuration keys) from the ConfigMap.data section to a Kubernetes Secret
resource. Then update the pod/container specification to reference these secrets
using envFrom with secretRef or individual secretKeyRef entries instead of
consuming them directly from ConfigMap. Ensure all credential material is
migrated to the Secret primitive while maintaining the same environment variable
names for the application.
Source: Linters/SAST tools
| STORAGE_ACCESS_KEY: {{ .Values.aisquaredConfig.storageAccessKey }} | ||
| STORAGE_ACCOUNT_NAME: {{ .Values.aisquaredConfig.storageAccountName }} |
There was a problem hiding this comment.
Quote STORAGE_ACCESS_KEY and STORAGE_ACCOUNT_NAME for consistency and type safety.
Line 98 and Line 99 are unquoted while almost all other env-like entries are quoted. Empty values here can render as null instead of "" and lead to inconsistent runtime parsing.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@charts/aisquared/templates/aisquared-config.yaml` around lines 98 - 99, Quote
the values for STORAGE_ACCESS_KEY and STORAGE_ACCOUNT_NAME in the
aisquared-config.yaml file to ensure consistency with other environment variable
entries and maintain type safety. Wrap both {{
.Values.aisquaredConfig.storageAccessKey }} and {{
.Values.aisquaredConfig.storageAccountName }} with double quotes so that empty
values render as empty strings instead of null, preventing inconsistent runtime
parsing behavior.
| {{- include "chart.selectorLabels" . | nindent 4 }} | ||
| ports: | ||
| {{- .Values.multiwovenServer.ports | toYaml | nindent 2 -}} No newline at end of file | ||
| {{- .Values.aisquaredServer.ports | toYaml | nindent 2 -}} No newline at end of file |
There was a problem hiding this comment.
Replace tab indentation with spaces in ports template lines.
Line 19 in both files contains a tab before {{- ... }}. Tabs in YAML templates are brittle and can break YAML tooling/lint pipelines; use spaces only.
charts/aisquared/templates/aisquared-server-service.yaml#L19-L19: replace leading tab with spaces before theportstemplating expression.charts/aisquared/templates/aisquared-ui-service.yaml#L19-L19: replace leading tab with spaces before theportstemplating expression.
📍 Affects 2 files
charts/aisquared/templates/aisquared-server-service.yaml#L19-L19(this comment)charts/aisquared/templates/aisquared-ui-service.yaml#L19-L19
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@charts/aisquared/templates/aisquared-server-service.yaml` at line 19, Replace
the leading tab character with spaces on line 19 in both YAML template files. In
charts/aisquared/templates/aisquared-server-service.yaml at line 19 and
charts/aisquared/templates/aisquared-ui-service.yaml at line 19, remove the tab
indentation before the `{{- .Values.aisquaredServer.ports | toYaml | nindent 2
-}}` and `{{- .Values.aisquaredUI.ports | toYaml | nindent 2 -}}` template
expressions respectively, and replace it with the appropriate number of spaces
to maintain proper YAML indentation alignment with surrounding content.
| secretsStore: | ||
| enabled: false | ||
| mwSecretAlias: mw-f01dd256e712 | ||
| aisSecretAlias: aisquared-f01dd256e712 |
There was a problem hiding this comment.
Align secret alias key name with template consumers.
Line 223 defines secretsStore.aisSecretAlias, but both charts/aisquared/templates/aisquared-secret-provider-class-ais.yaml (Line 23) and worker env refs consume secretsStore.aisCredsSecretAlias. This mismatch will break secret wiring when secretsStore.enabled=true.
Suggested fix
secretsStore:
enabled: false
- aisSecretAlias: aisquared-f01dd256e712
+ aisCredsSecretAlias: aisquared-f01dd256e712📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| aisSecretAlias: aisquared-f01dd256e712 | |
| secretsStore: | |
| enabled: false | |
| aisCredsSecretAlias: aisquared-f01dd256e712 |
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@charts/aisquared/values.yaml` at line 223, The configuration key in
values.yaml is named aisSecretAlias but the template consumers in
aisquared-secret-provider-class-ais.yaml and worker env refs expect
aisCredsSecretAlias, causing a mismatch that breaks secret wiring. Rename the
key from aisSecretAlias to aisCredsSecretAlias in the values.yaml file to align
with what the templates are consuming.
Summary by CodeRabbit
Release Notes
New Features
Changes