Skip to content

Commit 8a5de8c

Browse files
authored
chore(docs): attach network interface via server attribute (#881)
1 parent afc8cbb commit 8a5de8c

6 files changed

Lines changed: 70 additions & 95 deletions

File tree

docs/guides/using_loadbalancer_with_observability.md

Lines changed: 11 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ This guide explains how to configure the STACKIT Loadbalancer product to send me
2323

2424
```hcl
2525
resource "stackit_observability_instance" "observability01" {
26-
project_id = var.project_id_prod
26+
project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
2727
name = "example-instance"
2828
plan_name = "Observability-Monitoring-Medium-EU01"
2929
acl = ["0.0.0.0/0"]
@@ -33,7 +33,7 @@ This guide explains how to configure the STACKIT Loadbalancer product to send me
3333
}
3434
3535
resource "stackit_observability_credential" "observability01-credential" {
36-
project_id = var.project_id_prod
36+
project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
3737
instance_id = stackit_observability_instance.observability01.instance_id
3838
}
3939
```
@@ -44,7 +44,7 @@ This guide explains how to configure the STACKIT Loadbalancer product to send me
4444

4545
```hcl
4646
resource "stackit_loadbalancer_observability_credential" "example" {
47-
project_id = var.project_id_prod
47+
project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
4848
display_name = "example-credentials"
4949
username = stackit_observability_credential.observability01-credential.username
5050
password = stackit_observability_credential.observability01-credential.password
@@ -56,7 +56,7 @@ This guide explains how to configure the STACKIT Loadbalancer product to send me
5656
```hcl
5757
# Create a network
5858
resource "stackit_network" "example_network" {
59-
project_id = var.project_id_prod
59+
project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
6060
name = "example-network"
6161
ipv4_nameservers = ["8.8.8.8"]
6262
ipv4_prefix = "192.168.0.0/25"
@@ -68,13 +68,13 @@ This guide explains how to configure the STACKIT Loadbalancer product to send me
6868
6969
# Create a network interface
7070
resource "stackit_network_interface" "nic" {
71-
project_id = var.project_id_prod
71+
project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
7272
network_id = stackit_network.example_network.network_id
7373
}
7474
7575
# Create a public IP for the load balancer
7676
resource "stackit_public_ip" "public-ip" {
77-
project_id = var.project_id_prod
77+
project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
7878
lifecycle {
7979
ignore_changes = [network_interface_id]
8080
}
@@ -89,7 +89,7 @@ This guide explains how to configure the STACKIT Loadbalancer product to send me
8989
9090
# Create a server instance
9191
resource "stackit_server" "boot-from-image" {
92-
project_id = var.project_id_prod
92+
project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
9393
name = "example-server"
9494
boot_volume = {
9595
size = 64
@@ -99,18 +99,14 @@ This guide explains how to configure the STACKIT Loadbalancer product to send me
9999
availability_zone = "eu01-1"
100100
machine_type = "g1.1"
101101
keypair_name = stackit_key_pair.keypair.name
102-
}
103-
104-
# Attach the network interface to the server
105-
resource "stackit_server_network_interface_attach" "nic-attachment" {
106-
project_id = var.project_id_prod
107-
server_id = stackit_server.boot-from-image.server_id
108-
network_interface_id = stackit_network_interface.nic.network_interface_id
102+
network_interfaces = [
103+
stackit_network_interface.nic.network_interface_id
104+
]
109105
}
110106
111107
# Create a load balancer
112108
resource "stackit_loadbalancer" "example" {
113-
project_id = var.project_id_prod
109+
project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
114110
name = "example-load-balancer"
115111
target_pools = [
116112
{

docs/resources/loadbalancer.md

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -61,13 +61,9 @@ resource "stackit_server" "boot-from-image" {
6161
availability_zone = "xxxx-x"
6262
machine_type = "g1.1"
6363
keypair_name = stackit_key_pair.keypair.name
64-
}
65-
66-
# Attach the network interface to the server
67-
resource "stackit_server_network_interface_attach" "nic-attachment" {
68-
project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
69-
server_id = stackit_server.boot-from-image.server_id
70-
network_interface_id = stackit_network_interface.nic.network_interface_id
64+
network_interfaces = [
65+
stackit_network_interface.nic.network_interface_id
66+
]
7167
}
7268
7369
# Create a load balancer

docs/resources/server.md

Lines changed: 28 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -70,18 +70,6 @@ description: |-
7070
7171
Network setup
7272
73-
resource "stackit_server" "server-with-network" {
74-
project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
75-
name = "example-server"
76-
boot_volume = {
77-
size = 64
78-
source_type = "image"
79-
source_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
80-
}
81-
machine_type = "g1.1"
82-
keypair_name = stackit_key_pair.keypair.name
83-
}
84-
8573
resource "stackit_network" "network" {
8674
project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
8775
name = "example-network"
@@ -108,14 +96,23 @@ description: |-
10896
security_group_ids = [stackit_security_group.sec-group.security_group_id]
10997
}
11098
111-
resource "stackit_public_ip" "public-ip" {
112-
project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
113-
network_interface_id = stackit_network_interface.nic.network_interface_id
99+
resource "stackit_server" "server-with-network" {
100+
project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
101+
name = "example-server"
102+
boot_volume = {
103+
size = 64
104+
source_type = "image"
105+
source_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
106+
}
107+
machine_type = "g1.1"
108+
keypair_name = stackit_key_pair.keypair.name
109+
network_interfaces = [
110+
stackit_network_interface.nic.network_interface_id
111+
]
114112
}
115113
116-
resource "stackit_server_network_interface_attach" "nic-attachment" {
114+
resource "stackit_public_ip" "public-ip" {
117115
project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
118-
server_id = stackit_server.server-with-network.server_id
119116
network_interface_id = stackit_network_interface.nic.network_interface_id
120117
}
121118
@@ -254,18 +251,6 @@ resource "stackit_server" "boot-from-volume" {
254251

255252
### Network setup
256253
```terraform
257-
resource "stackit_server" "server-with-network" {
258-
project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
259-
name = "example-server"
260-
boot_volume = {
261-
size = 64
262-
source_type = "image"
263-
source_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
264-
}
265-
machine_type = "g1.1"
266-
keypair_name = stackit_key_pair.keypair.name
267-
}
268-
269254
resource "stackit_network" "network" {
270255
project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
271256
name = "example-network"
@@ -292,14 +277,23 @@ resource "stackit_network_interface" "nic" {
292277
security_group_ids = [stackit_security_group.sec-group.security_group_id]
293278
}
294279
295-
resource "stackit_public_ip" "public-ip" {
296-
project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
297-
network_interface_id = stackit_network_interface.nic.network_interface_id
280+
resource "stackit_server" "server-with-network" {
281+
project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
282+
name = "example-server"
283+
boot_volume = {
284+
size = 64
285+
source_type = "image"
286+
source_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
287+
}
288+
machine_type = "g1.1"
289+
keypair_name = stackit_key_pair.keypair.name
290+
network_interfaces = [
291+
stackit_network_interface.nic.network_interface_id
292+
]
298293
}
299294
300-
resource "stackit_server_network_interface_attach" "nic-attachment" {
295+
resource "stackit_public_ip" "public-ip" {
301296
project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
302-
server_id = stackit_server.server-with-network.server_id
303297
network_interface_id = stackit_network_interface.nic.network_interface_id
304298
}
305299

examples/resources/stackit_loadbalancer/resource.tf

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -42,13 +42,9 @@ resource "stackit_server" "boot-from-image" {
4242
availability_zone = "xxxx-x"
4343
machine_type = "g1.1"
4444
keypair_name = stackit_key_pair.keypair.name
45-
}
46-
47-
# Attach the network interface to the server
48-
resource "stackit_server_network_interface_attach" "nic-attachment" {
49-
project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
50-
server_id = stackit_server.boot-from-image.server_id
51-
network_interface_id = stackit_network_interface.nic.network_interface_id
45+
network_interfaces = [
46+
stackit_network_interface.nic.network_interface_id
47+
]
5248
}
5349

5450
# Create a load balancer

stackit/internal/services/iaas/server/const.go

Lines changed: 14 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -69,18 +69,6 @@ resource "stackit_server" "boot-from-volume" {
6969
7070
### Network setup` + "\n" +
7171
"```terraform" + `
72-
resource "stackit_server" "server-with-network" {
73-
project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
74-
name = "example-server"
75-
boot_volume = {
76-
size = 64
77-
source_type = "image"
78-
source_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
79-
}
80-
machine_type = "g1.1"
81-
keypair_name = stackit_key_pair.keypair.name
82-
}
83-
8472
resource "stackit_network" "network" {
8573
project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
8674
name = "example-network"
@@ -107,14 +95,23 @@ resource "stackit_network_interface" "nic" {
10795
security_group_ids = [stackit_security_group.sec-group.security_group_id]
10896
}
10997
110-
resource "stackit_public_ip" "public-ip" {
111-
project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
112-
network_interface_id = stackit_network_interface.nic.network_interface_id
98+
resource "stackit_server" "server-with-network" {
99+
project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
100+
name = "example-server"
101+
boot_volume = {
102+
size = 64
103+
source_type = "image"
104+
source_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
105+
}
106+
machine_type = "g1.1"
107+
keypair_name = stackit_key_pair.keypair.name
108+
network_interfaces = [
109+
stackit_network_interface.nic.network_interface_id
110+
]
113111
}
114112
115-
resource "stackit_server_network_interface_attach" "nic-attachment" {
113+
resource "stackit_public_ip" "public-ip" {
116114
project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
117-
server_id = stackit_server.server-with-network.server_id
118115
network_interface_id = stackit_network_interface.nic.network_interface_id
119116
}
120117
` + "\n```" + `

templates/guides/using_loadbalancer_with_observability.md.tmpl

Lines changed: 11 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ This guide explains how to configure the STACKIT Loadbalancer product to send me
2323

2424
```hcl
2525
resource "stackit_observability_instance" "observability01" {
26-
project_id = var.project_id_prod
26+
project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
2727
name = "example-instance"
2828
plan_name = "Observability-Monitoring-Medium-EU01"
2929
acl = ["0.0.0.0/0"]
@@ -33,7 +33,7 @@ This guide explains how to configure the STACKIT Loadbalancer product to send me
3333
}
3434
3535
resource "stackit_observability_credential" "observability01-credential" {
36-
project_id = var.project_id_prod
36+
project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
3737
instance_id = stackit_observability_instance.observability01.instance_id
3838
}
3939
```
@@ -44,7 +44,7 @@ This guide explains how to configure the STACKIT Loadbalancer product to send me
4444

4545
```hcl
4646
resource "stackit_loadbalancer_observability_credential" "example" {
47-
project_id = var.project_id_prod
47+
project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
4848
display_name = "example-credentials"
4949
username = stackit_observability_credential.observability01-credential.username
5050
password = stackit_observability_credential.observability01-credential.password
@@ -56,7 +56,7 @@ This guide explains how to configure the STACKIT Loadbalancer product to send me
5656
```hcl
5757
# Create a network
5858
resource "stackit_network" "example_network" {
59-
project_id = var.project_id_prod
59+
project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
6060
name = "example-network"
6161
ipv4_nameservers = ["8.8.8.8"]
6262
ipv4_prefix = "192.168.0.0/25"
@@ -68,13 +68,13 @@ This guide explains how to configure the STACKIT Loadbalancer product to send me
6868
6969
# Create a network interface
7070
resource "stackit_network_interface" "nic" {
71-
project_id = var.project_id_prod
71+
project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
7272
network_id = stackit_network.example_network.network_id
7373
}
7474
7575
# Create a public IP for the load balancer
7676
resource "stackit_public_ip" "public-ip" {
77-
project_id = var.project_id_prod
77+
project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
7878
lifecycle {
7979
ignore_changes = [network_interface_id]
8080
}
@@ -89,7 +89,7 @@ This guide explains how to configure the STACKIT Loadbalancer product to send me
8989
9090
# Create a server instance
9191
resource "stackit_server" "boot-from-image" {
92-
project_id = var.project_id_prod
92+
project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
9393
name = "example-server"
9494
boot_volume = {
9595
size = 64
@@ -99,18 +99,14 @@ This guide explains how to configure the STACKIT Loadbalancer product to send me
9999
availability_zone = "eu01-1"
100100
machine_type = "g1.1"
101101
keypair_name = stackit_key_pair.keypair.name
102-
}
103-
104-
# Attach the network interface to the server
105-
resource "stackit_server_network_interface_attach" "nic-attachment" {
106-
project_id = var.project_id_prod
107-
server_id = stackit_server.boot-from-image.server_id
108-
network_interface_id = stackit_network_interface.nic.network_interface_id
102+
network_interfaces = [
103+
stackit_network_interface.nic.network_interface_id
104+
]
109105
}
110106
111107
# Create a load balancer
112108
resource "stackit_loadbalancer" "example" {
113-
project_id = var.project_id_prod
109+
project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
114110
name = "example-load-balancer"
115111
target_pools = [
116112
{

0 commit comments

Comments
 (0)