- Remove KCL ecosystem (~220 files deleted) - Migrate all infrastructure to Nickel schema system - Consolidate documentation: legacy docs → provisioning/docs/src/ - Add CI/CD workflows (.github/) and Rust build config (.cargo/) - Update core system for Nickel schema parsing - Update README.md and CHANGES.md for v5.0.0 release - Fix pre-commit hooks: end-of-file, trailing-whitespace - Breaking changes: KCL workspaces require migration - Migration bridge available in docs/src/development/
55 lines
980 B
Plaintext
55 lines
980 B
Plaintext
# Local Provider Configuration Schema
|
|
# For testing and local development environments
|
|
|
|
let defaults = import "./local-defaults.ncl" in
|
|
|
|
{
|
|
# Contract definitions
|
|
|
|
LocalAuth = {
|
|
interface | String,
|
|
},
|
|
|
|
LocalPaths = {
|
|
base | String,
|
|
cache | String,
|
|
state | String,
|
|
vms | String,
|
|
},
|
|
|
|
LocalAPI = {
|
|
url | String,
|
|
timeout | Number,
|
|
},
|
|
|
|
LocalProvider = {
|
|
name | String,
|
|
enabled | Bool,
|
|
workspace | String,
|
|
auth | LocalAuth,
|
|
paths | LocalPaths,
|
|
api | LocalAPI,
|
|
},
|
|
|
|
# Hybrid interface
|
|
defaults = defaults,
|
|
|
|
make_auth | not_exported = fun o =>
|
|
defaults.auth & o,
|
|
|
|
make_paths | not_exported = fun o =>
|
|
defaults.paths & o,
|
|
|
|
make_api | not_exported = fun o =>
|
|
defaults.api & o,
|
|
|
|
make_local | not_exported = fun o =>
|
|
defaults.local & o,
|
|
|
|
# Default instances
|
|
DefaultAuth = defaults.auth,
|
|
DefaultPaths = defaults.paths,
|
|
DefaultAPI = defaults.api,
|
|
DefaultLocalProvider = defaults.local,
|
|
}
|