feat: stateless warehouse connection test endpoint#8060
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub. 3 Skipped Deployments
|
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Pro Plus Run ID: 📒 Files selected for processing (2)
📝 WalkthroughWalkthroughAdds an unsaved ClickHouse connection verification option, a throttled API action for testing warehouse configurations, validation and status responses, OpenAPI schemas, endpoint tests, and updated event catalogue source references. Estimated code review effort: 3 (Moderate) | ~20 minutes 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 |
|
@themis-blindfold review |
Docker builds report
|
There was a problem hiding this comment.
Actionable comments posted: 1
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: ASSERTIVE
Plan: Pro Plus
Run ID: e2070c5a-77bf-41fe-bfb3-33c5c6484315
📒 Files selected for processing (5)
api/experimentation/services.pyapi/experimentation/views.pyapi/tests/unit/experimentation/test_views.pydocs/docs/deployment-self-hosting/observability/_events-catalogue.mdopenapi.yaml
⚖️ Themis judgement: 🧹 Ship it, nits insideClean feature addition: a stateless
🧹 Nits
📝 Walkthrough
🧪 How to verify
Automate: the parametrised Product take: Solid UX improvement — users can validate ClickHouse credentials at form-fill time instead of discovering typos after saving. This removes a round-trip-and-rollback friction that was the main pain point in the connection setup flow. 🧭 Assumptions & unverified claims
A warehouse connection that never touches the warehouse — truly the best kind of test. · reviewed at 41f8652 |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #8060 +/- ##
=======================================
Coverage 98.65% 98.65%
=======================================
Files 1514 1514
Lines 60110 60133 +23
=======================================
+ Hits 59304 59327 +23
Misses 806 806 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
✅ private-cloud · depot-ubuntu-latest-arm-16 — run #18616 (attempt 1)Playwright Test Results (private-cloud - depot-ubuntu-latest-arm-16)Details
🗂️ Previous results✅ private-cloud · depot-ubuntu-latest-16 — run #18616 (attempt 1)Playwright Test Results (private-cloud - depot-ubuntu-latest-16)Details
✅ oss · depot-ubuntu-latest-arm-16 — run #18616 (attempt 1)Playwright Test Results (oss - depot-ubuntu-latest-arm-16)Details
✅ oss · depot-ubuntu-latest-16 — run #18616 (attempt 1)Playwright Test Results (oss - depot-ubuntu-latest-16)Details
✅ private-cloud · depot-ubuntu-latest-arm-16 — run #18612 (attempt 1)Playwright Test Results (private-cloud - depot-ubuntu-latest-arm-16)Details
✅ private-cloud · depot-ubuntu-latest-16 — run #18612 (attempt 1)Playwright Test Results (private-cloud - depot-ubuntu-latest-16)Details
✅ oss · depot-ubuntu-latest-arm-16 — run #18613 (attempt 1)Playwright Test Results (oss - depot-ubuntu-latest-arm-16)Details
✅ oss · depot-ubuntu-latest-arm-16 — run #18612 (attempt 1)Playwright Test Results (oss - depot-ubuntu-latest-arm-16)Details
✅ oss · depot-ubuntu-latest-16 — run #18613 (attempt 1)Playwright Test Results (oss - depot-ubuntu-latest-16)Details
✅ oss · depot-ubuntu-latest-16 — run #18612 (attempt 1)Playwright Test Results (oss - depot-ubuntu-latest-16)Details
✅ private-cloud · depot-ubuntu-latest-16 — run #18571 (attempt 1)Playwright Test Results (private-cloud - depot-ubuntu-latest-16)Details
✅ private-cloud · depot-ubuntu-latest-arm-16 — run #18571 (attempt 1)Playwright Test Results (private-cloud - depot-ubuntu-latest-arm-16)Details
|
Visual Regression19 screenshots compared. See report for details. |
Thanks for submitting a PR! Please check the boxes below:
docs/if required so people know about the feature.Changes
Stateless test endpoint for warehouse connections, so the frontend can verify ClickHouse credentials before creating or updating a connection.
POST /environments/{key}/warehouse-connections/test-warehouse-connection/(no id): validates the create-shaped payload, runs the ClickHouse check against an unsaved connection, and returns{status, status_detail}without persisting anything. ClickHouse only; other types get a 400. Throttled under the existingwarehouse_connection_writescope.verify_clickhouse_connectiongains apersistflag; the existing detail-scoped test endpoint is unchanged.How did you test this code?
Parametrised view tests covering reachable, unreachable, non-ClickHouse and invalid payloads, all asserting nothing is persisted.
make test,make typecheckandmake lintpass.