provisioning-catalog/components/fleet_agent/nickel/defaults.ncl

49 lines
1.4 KiB
Text

let _presets = (import "schemas/lib/concerns_presets.ncl").presets in
{
fleet_agent | default = {
name | default = "fleet_agent",
version | default = "0.1.0",
mode | default = 'systemd_unit,
live_check | default = { strategy = 'on_demand },
# Per-instance — caller MUST override. Install script rejects "UNSET".
node_id | default = "UNSET",
target_server | default = "UNSET",
image_ref | default = "daoreg.librecloud.online/libre-forge/fleet-agent:0.1.0",
# Direct SSH IP — when set, the deploy recipe connects to this IP instead of
# the hostname, bypassing SSH config aliases (needed for OrbStack local VMs).
ssh_ip | default = "",
# adr-010: agent dials daemon outbound over WebSocket; no NATS broker.
daemon_url | default = "ws://fleet-daemon.fleet-system.svc:19012",
declared | default = {
cpu = 4,
ram_gb = 8,
disk_gb = 80,
},
heartbeat_seconds | default = 15,
system_user | default = "fleet-agent",
requires | default = {
credentials = [],
capabilities = ["vm-lifecycle", "ssh-access", "oci-pull"],
},
provides | default = {
service = "fleet_agent",
interface = "fleet-agent",
},
operations | default = {
install = true,
update = true,
health = true,
},
concerns | default = _presets.infrastructure_glue,
},
}