provisioning-catalog/providers/upcloud/nickel/contracts.ncl

89 lines
2.3 KiB
Text

# UpCloud Provider Contracts - Type Definitions
# Migrated from: provisioning/extensions/providers/upcloud/kcl/
{
# Storage backup configuration
StorageBackup = {
time | String,
interval | String,
retention | Number,
},
# Storage configuration for UpCloud
Storage = {
volname | String,
voltype | String,
labels | String,
encrypt | Bool,
backup | {
time | String,
interval | String,
retention | Number,
} | optional,
},
# Provisioning environment for UpCloud
ProvisionEnv = {
zone | String | optional,
},
# Provisioning settings for UpCloud
Provision = {
main | { zone | String | optional },
priv | { zone | String | optional } | optional,
},
# UpCloud server defaults
ServerDefaults_upcloud = {
provider | String,
prov_settings | String,
prov_settings_clean | Bool,
not_use | Bool,
time_zone | String,
zone | String,
plan | String,
storage_os_find | String,
storage_os | String,
storages, # Bare field: array of Storage
group_id | String | optional,
backup | String | optional,
ssh_key_path | String | optional,
ssh_key_name | String | optional,
priv_cidr_block | String | optional,
network_private_name | String | optional,
liveness_ip | String | optional,
liveness_port | Number,
labels | String,
user | String,
},
# UpCloud server configuration
ServerUpcloud = {
hostname | String,
title | String,
network_private_ip | String | optional,
extra_hostnames, # Bare field: array of strings
taskservs, # Bare field: array of taskserv defs
clusters, # Bare field: array of cluster defs
storages, # Bare field: array of Storage
provider | String,
prov_settings | String,
prov_settings_clean | Bool,
not_use | Bool,
time_zone | String,
zone | String,
plan | String,
storage_os_find | String,
storage_os | String,
group_id | String | optional,
backup | String | optional,
ssh_key_path | String | optional,
ssh_key_name | String | optional,
priv_cidr_block | String | optional,
network_private_name | String | optional,
liveness_ip | String | optional,
liveness_port | Number,
labels | String,
user | String,
},
}