Framework 2.0 Decision Index
|
What this covers
Entry point for Framework 2.0 decisions. Links to persona solutions and individual ADRs that describe configuration language, orchestration, secrets, billing, maintenance, and testing. |
TL;DR: Framework 2.0 Architecture
Framework 2.0 enables adding managed services (Redis, PostgreSQL, etc.) without writing Go code. Service Maintainers define services in KCL - a type-safe configuration language that includes parameter schemas, validation rules, and mappings from user parameters to Helm chart values. Crossplane orchestrates everything using a single generic composition function (written in Go) that loads the KCL configured manifests at runtime, merges it with user parameters, and generates Kubernetes resources - primarily HelmReleases that deploy the actual service charts.
KCL is the key: it separates service-specific logic from framework code. Framework Engineers maintain one composition function that works for all services, while Service Maintainers add new services by writing KCL configurations. Connection secrets flow through Crossplane’s native mechanism to user namespaces. Maintenance and upgrades use Kubernetes CronJobs that switch Crossplane composition revisions during maintenance windows for controlled rollouts.
|
Follow how the architecture is evolving on Miro Board. Also a Proof of Concept is available to support the architecture |
Persona Solutions
-
Framework 2.0 Persona Solutions - Detailed solutions for Service Users, Service Maintainers, Service Operators, and Framework Engineers
Documentation
-
Testing Strategy - Comprehensive five-layer testing approach for Framework 2.0
