provisioning-catalog/components/lian_build_daemon/nickel/contracts.ncl

33 lines
1 KiB
Text
Raw Permalink Normal View History

# Contracts imported from lian-build's canonical catalog.
# Requires --import-path /path/to/lian-build in nickel export invocations.
# Type authority stays in lian-build; provisioning adapts, does not duplicate.
let lb = import "catalog/components/daemon/contracts.ncl" in
{
Adapter = lb.Adapter,
AdapterComplete = lb.AdapterComplete,
NatsConfig = lb.NatsConfig,
DaemonConfig = lb.DaemonConfig,
# Provisioning-specific wrapper: daemon config + deployment target.
LianBuildDaemon = {
daemon_url | String
| doc "Base URL where the daemon is reachable — used by workspace builds to POST /api/projects/{slug}/trigger.",
config | lb.DaemonConfig,
credentials | {
registry | String
| doc "Path to docker-config JSON for OCI push/pull.",
ssh_key | String
| doc "SSH keypair path for adapters that require SSH access.",
nats_seed | String
| optional
| doc "NKey seed file for NATS authentication.",
},
..
},
}