144 lines
3.5 KiB
Plaintext
144 lines
3.5 KiB
Plaintext
"""
|
|
Workspace Configuration Defaults (SST - Single Source of Truth)
|
|
|
|
These are the default values for all workspace configurations.
|
|
Workspaces override these defaults in their provisioning.k file.
|
|
|
|
Pattern:
|
|
- SST Defaults: .kcl/workspace_config_defaults.k (this file)
|
|
- SST Schema: .kcl/workspace_config.k (schema definitions)
|
|
- Workspace Config: config/provisioning.k (workspace-specific overrides)
|
|
"""
|
|
|
|
# Import the schema from the same package
|
|
import .workspace_config as cfg
|
|
|
|
# Default workspace configuration instance
|
|
# All workspaces inherit these defaults and can override specific values
|
|
default_workspace_config: cfg.WorkspaceConfig = {
|
|
workspace = {
|
|
name = "default-workspace"
|
|
version = "1.0.0"
|
|
created = ""
|
|
current_infra = ""
|
|
current_environment = ""
|
|
}
|
|
paths = {
|
|
base = "."
|
|
infra = "infra"
|
|
cache = ".cache"
|
|
runtime = ".runtime"
|
|
providers = ".providers"
|
|
taskservs = ".taskservs"
|
|
clusters = ".clusters"
|
|
orchestrator = ".orchestrator"
|
|
control_center = ".control-center"
|
|
kms = ".kms"
|
|
generate = "generate"
|
|
run_clusters = "clusters"
|
|
run_taskservs = "taskservs"
|
|
extensions = ".provisioning-extensions"
|
|
resources = "resources"
|
|
templates = "templates"
|
|
tools = "tools"
|
|
}
|
|
provisioning = {
|
|
path = "."
|
|
}
|
|
core = {
|
|
version = "1.0.0"
|
|
name = "provisioning"
|
|
}
|
|
debug = {
|
|
enabled = False
|
|
metadata = False
|
|
check_mode = False
|
|
validation = False
|
|
remote = False
|
|
log_level = "info"
|
|
no_terminal = False
|
|
}
|
|
output = {
|
|
file_viewer = "bat"
|
|
format = "yaml"
|
|
}
|
|
http = {
|
|
use_curl = False
|
|
timeout = 30
|
|
}
|
|
providers = {
|
|
active = ["upcloud"]
|
|
default = "upcloud"
|
|
}
|
|
platform = {
|
|
orchestrator_enabled = False
|
|
control_center_enabled = False
|
|
mcp_enabled = False
|
|
}
|
|
secrets = {
|
|
provider = "sops"
|
|
sops_enabled = True
|
|
kms_enabled = False
|
|
}
|
|
kms = {
|
|
mode = "local"
|
|
config_file = "config/kms.toml"
|
|
}
|
|
sops = {
|
|
use_sops = True
|
|
config_path = ".sops.yaml"
|
|
key_search_paths = [
|
|
".kms/keys/age.txt"
|
|
"~/.config/sops/age/keys.txt"
|
|
]
|
|
}
|
|
ai = {
|
|
enabled = False
|
|
provider = "openai"
|
|
config_path = "config/ai.yaml"
|
|
}
|
|
taskservs = {
|
|
run_path = ".runtime/taskservs"
|
|
}
|
|
clusters = {
|
|
run_path = ".runtime/clusters"
|
|
}
|
|
generation = {
|
|
dir_path = "generated"
|
|
defs_file = "defs.toml"
|
|
}
|
|
cache = {
|
|
enabled = True
|
|
path = ".cache/versions"
|
|
infra_cache = "infra/default/cache/versions"
|
|
grace_period = 86400
|
|
check_updates = False
|
|
max_cache_size = "10MB"
|
|
}
|
|
infra = {
|
|
current = "default"
|
|
}
|
|
tools = {
|
|
use_kcl = True
|
|
use_kcl_plugin = True
|
|
use_tera_plugin = True
|
|
}
|
|
kcl = {
|
|
core_module = "kcl"
|
|
core_version = "0.0.1"
|
|
core_package_name = "provisioning_core"
|
|
use_module_loader = True
|
|
module_loader_path = "core/cli/module-loader"
|
|
modules_dir = ".kcl-modules"
|
|
}
|
|
ssh = {
|
|
user = ""
|
|
options = [
|
|
"StrictHostKeyChecking=accept-new"
|
|
"UserKnownHostsFile=/dev/null"
|
|
]
|
|
timeout = 30
|
|
debug = False
|
|
}
|
|
}
|