miki3421 opened a new pull request, #142:
URL: https://github.com/apache/openserverless-operator/pull/142

   FerretDB tenant provisioning in 0.9.0 passes a name such as 
`tenant_ferretdb` to the PostgreSQL script renderer as a Kubernetes namespace. 
The namespace validator correctly rejects the underscore, so both user creation 
and deletion fail before SQL execution. This failure is reproducible in the 
original [0.9.0 CI run 
38893750250](https://github.com/apache/openserverless-operator/actions/runs/38893750250).
   
   Pass the actual Kubernetes namespace to the renderer while preserving the 
existing `_ferretdb` SQL database and role names. Select the PostgreSQL primary 
explicitly, validate SQL identifiers with the existing database-name validator, 
and report provisioning success only after connection metadata has been 
produced. Namespace validation, component versions, tenant credentials and SQL 
naming remain unchanged.
   
   Validation:
   
   - 8 focused provisioning regressions and all 22 shared regression tests 
passed locally. The create-user regression fails against the original 
implementation and passes with this fix.
   - Tests exercise the actual namespace validator and script renderer with 
Kubernetes/filesystem boundaries mocked, including create/delete, primary 
selection, invalid names, SQL failure and unavailable connection metadata.
   - The Kind integration test now verifies the actual SQL database, login role 
and CONNECT/CREATE grants and checks that both database and role disappear on 
deletion. Its SQL probe was checked read-only in the existing K3s lab; full 
provisioning validation runs in the isolated CI cluster.
   - CI runs the regression suite and rejects integration failures other than 
the independently reproduced runtime-preloader test failure. A failure of the 
corrected FerretDB integration test therefore fails the check despite the 
legacy `task itest` runner's exit-code behavior.
   
   This PR is independent of the Redis and etcd/Milvus security backports. The 
separate runtime-preloader test correction addresses the other baseline CI 
failure. Current-head CI results will be recorded after completion.
   


-- 
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]

Reply via email to