How to use this dashboard
Snowflake → Postgres migration planning (Keycloak demonstrative case)
Use this board to plan, manage, derisk, and track a move to Snowflake Postgres — not to execute transforms. Metrics come from snowflake-postgres-discovery-bundle 0.1.0 on codemod/keycloak-java.
| Section | What it answers |
|---|---|
| Coverage KPIs | How much Aurora JDBC / address / TLS / routing / pool surface remains |
| Risk hotspots | Native SQL and deployment signals that need human review |
| Ownership | CODEOWNER routing for remaining wrapper+driver pairings |
| Progress | Whether paired wrapper files burn down over time |
Interpretation caveats: file/match counts are discovery signals (includes tests, docs, generated examples). A native SQL hit ≠ a required rewrite. Prefer role=option-definition over prose when scoping address changes. Change the repositories variable to point at another indexed app.
AWS JDBC settings
4
Deployment wrapper with AWS driver
2
Database option definitions
2
JDBC TLS settings
49
targetServerType routing
6
Native SQL call sites
54
PostgreSQL test containers
3
Additional datasources
24
Pool maximums
26
Deployment signals
54
Wrapper pairing progress (30d)
AWS JDBC by signal
| Signal | Java | XML | Total |
|---|---|---|---|
| aws-driver | 2 | 1 | 3 |
| wrapper-url | - | 1 | 1 |
AWS JDBC file pairing
| Pairing | Java | XML | Total |
|---|---|---|---|
| aws-driver-only | 1 | - | 1 |
| wrapper-url-with-aws-driver | - | 1 | 1 |
Wrapper pairing by CODEOWNER
| CODEOWNER | Java | XML | Total |
|---|---|---|---|
| @keycloak/core-protocols-maintainers | 0 | 1 | 1 |
| @keycloak/cloud-native-maintainers | 0 | 0 | 0 |
| @keycloak/maintainers | 0 | 0 | 0 |
| @keycloak/sre-maintainers | 0 | 0 | 0 |
| @keycloak/ui-maintainers | 0 | 0 | 0 |
Database addresses by role
| Role | Count |
|---|---|
| prose | 46 |
| constant-reference | 16 |
| option-key | 15 |
| env-var | 3 |
| constant-definition | 2 |
| option-definition | 2 |
JDBC TLS by property
| Property | Count |
|---|---|
| db-tls-mode | 16 |
| db-mtls-key-store-file | 7 |
| tls-mode | 6 |
| db-tls-trust-store-file | 4 |
| sslfactory | 4 |
| sslkey | 3 |
| sslmode | 3 |
| sslpassword | 3 |
| sslrootcert | 3 |
targetServerType by signal
| Signal | Count |
|---|---|
| absence-check | 2 |
| explicit-parameter | 2 |
| default-append | 1 |
| property-key | 1 |
Native SQL risk hotspots
| Assembly | Sink | Count |
|---|---|---|
| concatenation | prepareStatement | 32 |
| concatenation | createNativeQuery | 8 |
| method_call | prepareStatement | 7 |
| variable | prepareStatement | 6 |
| variable | createNativeQuery | 1 |
Deployment signals by type
| Signal | Count |
|---|---|
| secret-key-ref | 11 |
| truststore | 9 |
| password-secret | 7 |
| username-secret | 7 |
| pool-max-size | 6 |
| tls-mode | 6 |
| certificate-material | 3 |
| aws-driver | 2 |
| wrapper-url | 2 |
| jdbc-url | 1 |