villebro opened a new pull request, #74:
URL: https://github.com/apache/superset-kubernetes-operator/pull/74
## Summary
Addresses an 8-point external code review and fixes two bugs surfaced while
testing the changes on a live cluster.
## Details
### Review findings
1. **Probes follow custom container ports.** `buildDeploymentSpec` retargets
default probes to the first user-overridden container port so the Service
`targetPort` and the probe target stay in sync.
2. **MySQL clone honors `excludeTableData`.** `buildMySQLCloneScript` emits
a two-pass `mysqldump` (schema-only first pass for `excludeTableData`, data
pass with `--ignore-table` for both lists) joined into a single stream.
3. **CEL: `serviceAccount.name` required when `create: false`.** Prevents
workloads from silently falling back to the namespace's default ServiceAccount.
4. **CEL: `service.nodePort` min/max + type gating.** Rejects out-of-range
nodePorts and rejects nodePort with `type: ClusterIP` at admission rather than
at Service-create time.
5. **Docs: PYTHONPATH.** The operator does not inject `PYTHONPATH`; it
relies on the upstream image's default. Env-vars table corrected.
6. **Docs: NetworkPolicy same-instance ports.** The generated same-instance
ingress rule has no `Ports` restriction; the per-component table now matches
the code.
7. **API comments: Celery + Valkey.** "Requires Valkey" softened — Celery
can be configured manually via `spec.config` without `spec.valkey`.
8. **CEL: `websocketServer` requires image override.** The default Superset
image does not contain `websocket_server.js`, so `websocketServer: {}` is now
rejected at admission instead of producing a crashlooping Pod.
### Bugs found while testing
- **Postgres `createdb` init container syntax error.** The script used
psql's `:'name'` interpolation via `-c`, but psql's `-c` does not process
client-side features — the literal `:'name'` reached the server, which rejected
it as a syntax error. Replaced with shell-side single-quote doubling and direct
interpolation into the SQL string.
- **Migrate checksum missed the init-container script body.** The script is
rendered by the operator binary, not the user's spec, so an operator upgrade
that fixed the bug above did not change the migrate checksum, and a previously
failed migrate stayed terminal-failed across operator restarts. `migrateInputs`
now embeds the rendered Postgres/MySQL init script so operator-side fixes
propagate into the checksum.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]