4b9a6de83b
Build / build (pull_request) Failing after 11m25s
Seed encapi (statuses, roles, prodnxsr node assignments) and make the instance module also create an encapi_node for every VM, so the k8s puppetserver ENC can cut over from Cobbler. Cobbler/puppetca/puppetdb resources are left untouched. - Add config/encapi leaf + modules/encapi driving statuses/roles/nodes from YAML (3 statuses, 51 roles, 13 prodnxsr physical nodes). - Add encapi_node to modules/instance (certname, role, environment). - Wire encapi provider into root.hcl required_providers and the module providers; plumb ENCAPI_WRITE_TOKEN via Makefile vault_env.
38 lines
1014 B
Terraform
38 lines
1014 B
Terraform
variable "statuses" {
|
|
description = <<EOT
|
|
Map of encapi statuses (Puppet environments) to seed. Keyed by status name.
|
|
Each value may carry an optional description.
|
|
EOT
|
|
type = map(object({
|
|
description = optional(string)
|
|
}))
|
|
default = {}
|
|
}
|
|
|
|
variable "roles" {
|
|
description = <<EOT
|
|
Map of encapi roles to seed. Keyed by role class name (e.g. roles::base).
|
|
Each value may carry an optional description and a default_params object that
|
|
is jsonencode()'d into the role's inheritable defaults.
|
|
EOT
|
|
type = map(object({
|
|
description = optional(string)
|
|
default_params = optional(any)
|
|
}))
|
|
default = {}
|
|
}
|
|
|
|
variable "nodes" {
|
|
description = <<EOT
|
|
Map of encapi node assignments to seed. Keyed by certname. Each value pins the
|
|
node to a role and environment (which must exist as a role/status above), with
|
|
optional per-node params jsonencode()'d into the ENC output.
|
|
EOT
|
|
type = map(object({
|
|
role = string
|
|
environment = string
|
|
params = optional(any)
|
|
}))
|
|
default = {}
|
|
}
|