Add Hetzner Cloud firewall and network resources with netbox integration

This commit is contained in:
2025-12-23 11:50:13 +01:00
parent f850066aad
commit c406a23576
5 changed files with 189 additions and 4 deletions

View File

@@ -0,0 +1,14 @@
resource "netbox_cluster_group" "hetzner" {
description = "Hetzner Cloud Hosts"
name = "hetzner"
}
resource "netbox_cluster_type" "openstack" {
name = "Openstack"
}
resource "netbox_cluster" "hetzner_cluster" {
cluster_type_id = netbox_cluster_type.openstack.id
name = "Hetzner Cluster"
cluster_group_id = netbox_cluster_group.hetzner.id
}

View File

@@ -1,7 +1,7 @@
{ {
"version": 4, "version": 4,
"terraform_version": "1.14.3", "terraform_version": "1.14.3",
"serial": 10, "serial": 16,
"lineage": "2f42bf18-041f-78d9-24cc-d9a193bc3daf", "lineage": "2f42bf18-041f-78d9-24cc-d9a193bc3daf",
"outputs": {}, "outputs": {},
"resources": [ "resources": [
@@ -104,6 +104,78 @@
} }
] ]
}, },
{
"mode": "managed",
"type": "netbox_cluster",
"name": "hetzner_cluster",
"provider": "provider[\"registry.terraform.io/e-breuninger/netbox\"]",
"instances": [
{
"schema_version": 0,
"attributes": {
"cluster_group_id": 1,
"cluster_type_id": 1,
"comments": "",
"description": "",
"id": "1",
"location_id": 0,
"name": "Hetzner Cluster",
"region_id": 0,
"site_group_id": 0,
"site_id": 0,
"tags": [],
"tags_all": [],
"tenant_id": 0
},
"sensitive_attributes": [],
"identity_schema_version": 0,
"private": "bnVsbA==",
"dependencies": [
"netbox_cluster_group.hetzner",
"netbox_cluster_type.openstack"
]
}
]
},
{
"mode": "managed",
"type": "netbox_cluster_group",
"name": "hetzner",
"provider": "provider[\"registry.terraform.io/e-breuninger/netbox\"]",
"instances": [
{
"schema_version": 0,
"attributes": {
"description": "Hetzner Cloud Hosts",
"id": "1",
"name": "hetzner",
"slug": "hetzner"
},
"sensitive_attributes": [],
"identity_schema_version": 0,
"private": "bnVsbA=="
}
]
},
{
"mode": "managed",
"type": "netbox_cluster_type",
"name": "openstack",
"provider": "provider[\"registry.terraform.io/e-breuninger/netbox\"]",
"instances": [
{
"schema_version": 0,
"attributes": {
"id": "1",
"name": "Openstack",
"slug": "openstack"
},
"sensitive_attributes": [],
"identity_schema_version": 0,
"private": "bnVsbA=="
}
]
},
{ {
"mode": "managed", "mode": "managed",
"type": "netbox_ip_range", "type": "netbox_ip_range",
@@ -120,7 +192,7 @@
"size": 65534, "size": 65534,
"start_address": "10.0.0.1/16", "start_address": "10.0.0.1/16",
"status": "active", "status": "active",
"tags": null, "tags": [],
"tags_all": [], "tags_all": [],
"tenant_id": null, "tenant_id": null,
"vrf_id": null "vrf_id": null

View File

@@ -1,7 +1,7 @@
{ {
"version": 4, "version": 4,
"terraform_version": "1.14.3", "terraform_version": "1.14.3",
"serial": 8, "serial": 14,
"lineage": "2f42bf18-041f-78d9-24cc-d9a193bc3daf", "lineage": "2f42bf18-041f-78d9-24cc-d9a193bc3daf",
"outputs": {}, "outputs": {},
"resources": [ "resources": [
@@ -95,7 +95,7 @@
"expose_routes_to_vswitch": false, "expose_routes_to_vswitch": false,
"id": "11773043", "id": "11773043",
"ip_range": "10.0.0.0/16", "ip_range": "10.0.0.0/16",
"labels": null, "labels": {},
"name": "prod-network" "name": "prod-network"
}, },
"sensitive_attributes": [], "sensitive_attributes": [],
@@ -103,6 +103,105 @@
"private": "bnVsbA==" "private": "bnVsbA=="
} }
] ]
},
{
"mode": "managed",
"type": "netbox_cluster",
"name": "hetzner_cluster",
"provider": "provider[\"registry.terraform.io/e-breuninger/netbox\"]",
"instances": [
{
"schema_version": 0,
"attributes": {
"cluster_group_id": 1,
"cluster_type_id": 1,
"comments": "",
"description": "",
"id": "1",
"location_id": 0,
"name": "hetzner_openstack_cluster",
"region_id": 0,
"site_group_id": 0,
"site_id": 0,
"tags": null,
"tags_all": [],
"tenant_id": 0
},
"sensitive_attributes": [],
"identity_schema_version": 0,
"private": "bnVsbA==",
"dependencies": [
"netbox_cluster_group.hetzner",
"netbox_cluster_type.openstack"
]
}
]
},
{
"mode": "managed",
"type": "netbox_cluster_group",
"name": "hetzner",
"provider": "provider[\"registry.terraform.io/e-breuninger/netbox\"]",
"instances": [
{
"schema_version": 0,
"attributes": {
"description": "Hetzner Cloud Hosts",
"id": "1",
"name": "hetzner",
"slug": "hetzner"
},
"sensitive_attributes": [],
"identity_schema_version": 0,
"private": "bnVsbA=="
}
]
},
{
"mode": "managed",
"type": "netbox_cluster_type",
"name": "openstack",
"provider": "provider[\"registry.terraform.io/e-breuninger/netbox\"]",
"instances": [
{
"schema_version": 0,
"attributes": {
"id": "1",
"name": "Openstack",
"slug": "openstack"
},
"sensitive_attributes": [],
"identity_schema_version": 0,
"private": "bnVsbA=="
}
]
},
{
"mode": "managed",
"type": "netbox_ip_range",
"name": "prodnet",
"provider": "provider[\"registry.terraform.io/e-breuninger/netbox\"]",
"instances": [
{
"schema_version": 0,
"attributes": {
"description": null,
"end_address": "10.0.255.254/16",
"id": "1",
"role_id": null,
"size": 65534,
"start_address": "10.0.0.1/16",
"status": "active",
"tags": [],
"tags_all": [],
"tenant_id": null,
"vrf_id": null
},
"sensitive_attributes": [],
"identity_schema_version": 0,
"private": "bnVsbA=="
}
]
} }
], ],
"check_results": null "check_results": null