provisioning-catalog/providers/hetzner/nickel/main.ncl

42 lines
1.4 KiB
Text
Raw Normal View History

# Hetzner Cloud Provider Main Module - Public API
# Aggregates contracts and defaults for Hetzner provider extension
# Migrated from: provisioning/extensions/providers/hetzner/kcl/
let contracts_lib = import "./contracts.ncl" in
let defaults_lib = import "./defaults.ncl" in
{
defaults = defaults_lib,
# Maker functions (not exported - used internally)
make_volume | not_exported = fun overrides =>
defaults_lib.volume & overrides,
make_network | not_exported = fun overrides =>
defaults_lib.network & overrides,
make_firewall | not_exported = fun overrides =>
defaults_lib.firewall & overrides,
make_storage_box | not_exported = fun overrides =>
defaults_lib.storage_box & overrides,
make_server_defaults_hetzner | not_exported = fun overrides =>
defaults_lib.server_defaults_hetzner & overrides,
make_server_hetzner | not_exported = fun overrides =>
defaults_lib.server_hetzner & overrides,
make_provision_hetzner | not_exported = fun overrides =>
defaults_lib.provision_hetzner & overrides,
# Default instances (exported)
DefaultVolume = defaults_lib.volume,
DefaultNetwork = defaults_lib.network,
DefaultFirewall = defaults_lib.firewall,
DefaultStorageBox = defaults_lib.storage_box,
DefaultServerDefaults_hetzner = defaults_lib.server_defaults_hetzner,
DefaultServerHetzner = defaults_lib.server_hetzner,
DefaultProvisionHetzner = defaults_lib.provision_hetzner,
}