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]

Reply via email to