81 lines
3.1 KiB
HCL
81 lines
3.1 KiB
HCL
resource "stackit_resourcemanager_project" "this" {
|
|
parent_container_id = var.organization_id
|
|
name = var.name
|
|
labels = var.labels
|
|
owner_email = var.owner_email
|
|
}
|
|
|
|
# module "sg" {
|
|
# source = "../security-group"
|
|
# for_each = var.security_groups
|
|
|
|
# project_id = stackit_resourcemanager_project.this.project_id
|
|
# name = each.value.name
|
|
# description = each.value.description
|
|
# rules = each.value.rules
|
|
# }
|
|
|
|
module "net" {
|
|
source = "../network"
|
|
for_each = var.networks
|
|
|
|
project_id = stackit_resourcemanager_project.this.project_id
|
|
name = each.value.name
|
|
|
|
ipv4_gateway = each.value.ipv4_gateway != null ? each.value.ipv4_gateway : null
|
|
ipv4_nameservers = each.value.ipv4_nameservers != [] ? each.value.ipv4_nameservers : []
|
|
ipv4_prefix = each.value.ipv4_prefix != null ? each.value.ipv4_prefix : null
|
|
ipv4_prefix_length = each.value.ipv4_prefix_length != null ? each.value.ipv4_prefix_length : null
|
|
ipv6_gateway = each.value.ipv6_gateway != null ? each.value.ipv6_gateway : null
|
|
ipv6_nameservers = each.value.ipv6_nameservers != [] ? each.value.ipv6_nameservers : []
|
|
ipv6_prefix = each.value.ipv6_prefix != null ? each.value.ipv6_prefix : null
|
|
ipv6_prefix_length = each.value.ipv6_prefix_length != null ? each.value.ipv6_prefix_length : null
|
|
labels = each.value.labels != {} ? each.value.labels : {}
|
|
no_ipv4_gateway = each.value.no_ipv4_gateway
|
|
no_ipv6_gateway = each.value.no_ipv6_gateway
|
|
routed = each.value.routed != null ? each.value.routed : true
|
|
|
|
security_groups = each.value.security_groups
|
|
|
|
nic_ipv4 = each.value.nic_ipv4
|
|
nic_name = each.value.nic_name != null ? each.value.nic_name : null
|
|
nic_allowed_addresses = each.value.nic_allowed_addresses
|
|
nic_labels = each.value.nic_labels != {} ? each.value.nic_labels : {}
|
|
nic_security = each.value.nic_security
|
|
nic_security_group_ids = each.value.nic_security_group_ids
|
|
}
|
|
|
|
# module "pg" {
|
|
# source = "../postgres"
|
|
# for_each = var.postgres_instances
|
|
|
|
# project_id = stackit_resourcemanager_project.this.project_id
|
|
# name = each.value.name
|
|
# ver = each.value.version
|
|
# flavor = each.value.flavor
|
|
# storage = each.value.storage
|
|
# replicas = each.value.replicas
|
|
# acl = each.value.acl
|
|
# backup_schedule = each.value.backup_schedule
|
|
# users = each.value.users
|
|
# databases = each.value.databases
|
|
# }
|
|
|
|
# module "ske" {
|
|
# source = "../ske"
|
|
# for_each = var.ske_clusters
|
|
|
|
# project_id = stackit_resourcemanager_project.this.project_id
|
|
# name = each.value.name
|
|
# kubernetes_version_min = each.value.kubernetes_version_min
|
|
# node_pools = each.value.node_pools
|
|
# }
|
|
|
|
# module "obs" {
|
|
# source = "../observability"
|
|
# for_each = var.observability_instances
|
|
|
|
# project_id = stackit_resourcemanager_project.this.project_id
|
|
# name = each.value.name
|
|
# plan_name = each.value.plan_name
|
|
# }
|