provisioning/config/templates/workspace-config.k.template
Jesús Pérez 6a59d34bb1
chore: update provisioning configuration and documentation
Update configuration files, templates, and internal documentation
for the provisioning repository system.

Configuration Updates:
- KMS configuration modernization
- Plugin system settings
- Service port mappings
- Test cluster topologies
- Installation configuration examples
- VM configuration defaults
- Cedar authorization policies

Documentation Updates:
- Library module documentation
- Extension API guides
- AI system documentation
- Service management guides
- Test environment setup
- Plugin usage guides
- Validator configuration documentation

All changes are backward compatible.
2025-12-11 21:50:42 +00:00

42 lines
1.3 KiB
Plaintext

"""
Workspace Configuration - KCL Format (Type-Safe)
This is the workspace configuration file in KCL format.
It replaces provisioning.yaml with type-safe configuration.
SST (Single Source of Truth) Pattern:
- Schema: ../.kcl/workspace_config.k (type definitions)
- Defaults: ../.kcl/workspace_config_defaults.k (base values)
- Workspace: config/provisioning.k (workspace-specific overrides)
How it works:
1. Import defaults from SST
2. Override only the values specific to this workspace
3. The merge produces the final configuration
To update defaults: edit ../.kcl/workspace_config_defaults.k
To update schema: edit ../.kcl/workspace_config.k
For documentation: docs/architecture/adr/ADR-010-configuration-format-strategy.md
"""
import provisioning.workspace_config_defaults as defaults
# Workspace configuration: start with defaults and override workspace-specific values
workspace_config = defaults.default_workspace_config | {
# Override workspace metadata for this workspace
workspace = {
name = "{{WORKSPACE_NAME}}"
version = "1.0.0"
created = "{{CREATED_TIMESTAMP}}"
}
# Override paths for this workspace (merge with defaults)
paths = defaults.default_workspace_config.paths | {
base = "{{WORKSPACE_PATH}}"
}
# Override provisioning path
provisioning = {
path = "{{PROVISIONING_PATH}}"
}
}