Skip to content

Conversation

@rubenhoenle
Copy link
Member

@rubenhoenle rubenhoenle commented Nov 25, 2025

Description

relates to STACKITTPR-313

Checklist

  • Issue was linked above
  • Code format was applied: make fmt
  • Examples were added / adjusted (see examples/ directory)
  • Docs are up-to-date: make generate-docs (will be checked by CI)
  • Unit tests got implemented or updated
  • Acceptance tests got implemented or updated (see e.g. here)
  • Unit tests are passing: make test (will be checked by CI)
  • No linter issues: make lint (will be checked by CI)

@rubenhoenle rubenhoenle self-assigned this Nov 25, 2025
@rubenhoenle rubenhoenle force-pushed the feat/STACKITTPR-313-iaas-v2 branch 2 times, most recently from 5cfe536 to 29cbe25 Compare November 25, 2025 15:16
@github-actions
Copy link

github-actions bot commented Dec 6, 2025

This PR was marked as stale after 7 days of inactivity and will be closed after another 7 days of further inactivity. If this PR should be kept open, just add a comment, remove the stale label or push new commits to it.

@github-actions github-actions bot added the Stale PR is marked as stale due to inactivity. label Dec 6, 2025
@rubenhoenle rubenhoenle removed the Stale PR is marked as stale due to inactivity. label Dec 8, 2025
@rubenhoenle rubenhoenle force-pushed the feat/STACKITTPR-313-iaas-v2 branch from 2b753bf to c72a460 Compare December 8, 2025 09:27
@github-actions
Copy link

github-actions bot commented Dec 8, 2025

Merging this branch changes the coverage (15 decrease, 4 increase)

Impacted Packages Coverage Δ 🤖
github.com/stackitcloud/terraform-provider-stackit/stackit 1.59% (ø)
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas 0.00% (ø)
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/affinitygroup 11.80% (-1.02%) 👎
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/image 37.43% (-2.11%) 👎
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/imagev2 44.71% (-0.47%) 👎
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/keypair 11.98% (ø)
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/machinetype 36.14% (-0.56%) 👎
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/network 48.16% (+48.16%) 🌟
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/network/utils/model 0.00% (ø)
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/network/utils/v1network 0.00% (-54.31%) 💀 💀 💀 💀 💀
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/network/utils/v2network 0.00% (-52.60%) 💀 💀 💀 💀 💀
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/networkarea 28.54% (-5.08%) 👎
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/networkarearegion 32.65% (+32.65%) 🌟
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/networkarearoute 11.98% (+0.92%) 👍
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/networkinterface 25.97% (-0.63%) 👎
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/networkinterfaceattach 0.00% (ø)
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/project 45.59% (+0.81%) 👍
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/publicip 12.22% (-0.98%) 👎
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/publicipassociate 11.97% (-0.73%) 👎
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/securitygroup 11.76% (-0.93%) 👎
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/securitygrouprule 25.98% (-1.26%) 👎
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/server 31.29% (-0.18%) 👎
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/serviceaccountattach 0.00% (ø)
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/utils 78.95% (-1.05%) 👎
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/volume 15.22% (-1.05%) 👎
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/volumeattach 0.00% (ø)
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/logme 0.00% (ø)
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/serverupdate 0.00% (ø)

Coverage by file

Changed files (no unit tests)

Changed File Coverage Δ Total Covered Missed 🤖
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/affinitygroup/datasource.go 0.00% (ø) 39 (+3) 0 39 (+3)
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/affinitygroup/resource.go 15.11% (-1.56%) 139 (+19) 21 (+1) 118 (+18) 👎
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/image/datasource.go 53.12% (-1.22%) 96 (+4) 51 (+1) 45 (+3) 👎
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/image/resource.go 32.01% (-2.23%) 278 (+21) 89 (+1) 189 (+20) 👎
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/imagev2/datasource.go 44.71% (-0.47%) 170 (+4) 76 (+1) 94 (+3) 👎
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/keypair/datasource.go 0.00% (ø) 35 0 35
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/machinetype/datasource.go 36.14% (-0.56%) 83 (+4) 30 (+1) 53 (+3) 👎
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/network/datasource.go 61.24% (+61.24%) 129 (+106) 79 (+79) 50 (+27) 🌟
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/network/resource.go 43.45% (+43.45%) 359 (+282) 156 (+156) 203 (+126) 🌟
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/network/utils/model/model.go 0.00% (ø) 0 0 0
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/network/utils/v1network/datasource.go 0.00% (-66.67%) 0 (-114) 0 (-76) 0 (-38) 💀 💀 💀 💀 💀
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/network/utils/v1network/resource.go 0.00% (-49.67%) 0 (-304) 0 (-151) 0 (-153) 💀 💀 💀 💀
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/network/utils/v2network/datasource.go 0.00% (-66.39%) 0 (-119) 0 (-79) 0 (-40) 💀 💀 💀 💀 💀
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/network/utils/v2network/resource.go 0.00% (-47.53%) 0 (-324) 0 (-154) 0 (-170) 💀 💀 💀 💀
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/networkarea/datasource.go 0.00% (ø) 50 (+12) 0 50 (+12)
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/networkarea/resource.go 32.15% (-5.63%) 395 (+88) 127 (+11) 268 (+77) 👎
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/networkarearegion/datasource.go 0.00% (ø) 36 (+36) 0 36 (+36)
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/networkarearegion/resource.go 37.25% (+37.25%) 255 (+255) 95 (+95) 160 (+160) 🌟
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/networkarearoute/datasource.go 0.00% (ø) 42 (+3) 0 42 (+3)
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/networkarearoute/resource.go 14.50% (+1.02%) 200 (+22) 29 (+5) 171 (+17) 👍
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/networkinterface/datasource.go 0.00% (ø) 43 (+3) 0 43 (+3)
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/networkinterface/resource.go 30.19% (-0.55%) 265 (+8) 80 (+1) 185 (+7) 👎
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/networkinterfaceattach/resource.go 0.00% (ø) 116 (+14) 0 116 (+14)
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/project/datasource.go 45.59% (+0.81%) 68 (+1) 31 (+1) 37 👍
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/publicip/datasource.go 0.00% (ø) 40 (+3) 0 40 (+3)
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/publicip/resource.go 14.92% (-1.33%) 181 (+21) 27 (+1) 154 (+20) 👎
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/publicipassociate/resource.go 11.97% (-0.73%) 142 (+16) 17 (+1) 125 (+15) 👎
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/securitygroup/datasource.go 0.00% (ø) 40 (+3) 0 40 (+3)
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/securitygroup/resource.go 14.36% (-1.26%) 181 (+21) 26 (+1) 155 (+20) 👎
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/securitygrouprule/datasource.go 0.00% (ø) 43 (+3) 0 43 (+3)
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/securitygrouprule/resource.go 33.46% (-1.81%) 257 (+16) 86 (+1) 171 (+15) 👎
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/server/datasource.go 47.96% (-0.98%) 98 (+4) 47 (+1) 51 (+3) 👎
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/server/resource.go 27.11% (+0.08%) 391 (+21) 106 (+6) 285 (+15) 👍
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/serviceaccountattach/resource.go 0.00% (ø) 116 (+14) 0 116 (+14)
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/utils/util.go 78.95% (-1.05%) 19 (-1) 15 (-1) 4 👎
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/volume/datasource.go 0.00% (ø) 40 (+3) 0 40 (+3)
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/volume/resource.go 17.80% (-1.27%) 236 (+21) 42 (+1) 194 (+20) 👎
github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/volumeattach/resource.go 0.00% (ø) 117 (+15) 0 117 (+15)
github.com/stackitcloud/terraform-provider-stackit/stackit/provider.go 1.59% (ø) 126 2 124

Please note that the "Total", "Covered", and "Missed" counts above refer to code statements instead of lines of code. The value in brackets refers to the test coverage of that file in the old version of the code.

Changed unit test files

  • github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/affinitygroup/resource_test.go
  • github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/iaas_acc_test.go
  • github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/image/datasource_test.go
  • github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/image/resource_test.go
  • github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/imagev2/datasource_test.go
  • github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/machinetype/datasource_test.go
  • github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/network/datasource_test.go
  • github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/network/resource_test.go
  • github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/network/utils/v1network/datasource_test.go
  • github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/network/utils/v1network/resource_test.go
  • github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/networkarea/resource_test.go
  • github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/networkarearegion/resource_test.go
  • github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/networkarearoute/resource_test.go
  • github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/networkinterface/resource_test.go
  • github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/project/datasource_test.go
  • github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/publicip/resource_test.go
  • github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/publicipassociate/resource_test.go
  • github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/securitygroup/resource_test.go
  • github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/securitygrouprule/resource_test.go
  • github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/server/datasource_test.go
  • github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/server/resource_test.go
  • github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/utils/util_test.go
  • github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/volume/resource_test.go
  • github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/logme/logme_acc_test.go
  • github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/serverupdate/serverupdate_acc_test.go


- `affinity_group_id` (String) The affinity group ID.
- `id` (String) Terraform's internal resource identifier. It is structured as "`project_id`,`affinity_group_id`".
- `id` (String) Terraform's internal resource identifier. It is structured as "`project_id`,`region`,`affinity_group_id`".
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The example import statement must be adjusted as well. Currently it has the old id structure (${var.project_id},${var.affinity_group_id}), but it has changed to ${var.project_id},${var.region},${var.affinity_group_id}


- `checksum` (Attributes) Representation of an image checksum. (see [below for nested schema](#nestedatt--checksum))
- `id` (String) Terraform's internal resource ID. It is structured as "`project_id`,`image_id`".
- `id` (String) Terraform's internal resource ID. It is structured as "`project_id`,`region`,`image_id`".
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Import example must be adjusted here as well

- `routing_table_id` (String) The ID of the routing table associated with the network.

### Read-Only

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In the network resource the documentation of the id structure must be updated and the import example. Probably this relates to most of the modified resources / datasources

# Only use the import statement, if you want to import an existing network area region
import {
to = stackit_network_area_region.import-example
id = "${var.organization_id},${var.network_area_id},eu01"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nitpick: we usually structure the id only with vars, so I suggest to change eu01 to var.region, to keep it consistent with our other examples

Suggested change
id = "${var.organization_id},${var.network_area_id},eu01"
id = "${var.organization_id},${var.network_area_id},${var.region}"

github.com/stackitcloud/stackit-sdk-go/services/dns v0.17.1
github.com/stackitcloud/stackit-sdk-go/services/git v0.8.0
github.com/stackitcloud/stackit-sdk-go/services/iaas v0.31.0
github.com/stackitcloud/stackit-sdk-go/services/iaas v1.0.0
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Version can be bumped to v1.2.4

if err != nil {
var oapiErr *oapierror.GenericOpenAPIError
ok := errors.As(err, &oapiErr)
if !(ok && (oapiErr.StatusCode == http.StatusNotFound || oapiErr.StatusCode == http.StatusBadRequest)) { // TODO: iaas api returns http 400 in case network area region is not found
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remember: open TODO

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

well, it's an API issue. What should I do then? 😂

}

// Deprecated: Will be removed in May 2026. Only introduced to make the IaaS v1 -> v2 API migration non-breaking in the Terraform provider.
networkAreaRegionResp, err := d.client.GetNetworkAreaRegion(ctx, organizationId, networkAreaId, "eu01").Execute()
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it's intended that eu01 is hardcoded, right? If so, I would suggest that the deprecated fields has a note, that they only load the data from eu01 during the deprecation period

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes. I left that out because the behavior of the resource stays unchanged from a user perspective. It was eu01 before, it is eu01 now. But I can still add it if you want 😄


// Create new network area
area, err := r.client.CreateNetworkArea(ctx, organizationId).CreateNetworkAreaPayload(*payload).Execute()
networkArea, err := r.client.CreateNetworkArea(ctx, organizationId).CreateNetworkAreaPayload(*payload).Execute()
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If I remember correctly, we decided to store the partial state of the network area, because in case the second request fails (in legacy mode) the network area will still exists, but from terraform perspective the network area is not created.
I wanted to test something right now and misconfigured the second request accidentally. The result was a few network areas, which I had to delete manually in the portal

Comment on lines +262 to +264
ctx = tflog.SetField(ctx, "region", region)

// Generate API request body from model
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

InitProviderContext can be added

Suggested change
ctx = tflog.SetField(ctx, "region", region)
// Generate API request body from model
ctx = tflog.SetField(ctx, "region", region)
ctx = core.InitProviderContext(ctx)
// Generate API request body from model

core.LogAndAddError(ctx, &resp.Diagnostics, "Error creating network area region", fmt.Sprintf("Calling API: %v", err))
return
}

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Log response / trace id

Suggested change
ctx = core.LogResponse(ctx)

ctx = tflog.SetField(ctx, "organization_id", organizationId)
ctx = tflog.SetField(ctx, "network_area_id", networkAreaId)
ctx = tflog.SetField(ctx, "region", region)

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

add initProviderContext and trace id logging

ctx = tflog.SetField(ctx, "organization_id", organizationId)
ctx = tflog.SetField(ctx, "network_area_id", networkAreaId)
ctx = tflog.SetField(ctx, "region", region)

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

add initProviderContext and trace id logging

ctx = tflog.SetField(ctx, "organization_id", organizationId)
ctx = tflog.SetField(ctx, "network_area_id", networkAreaId)
ctx = tflog.SetField(ctx, "region", region)

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

add initProviderContext and trace id logging

Nexthop: conversion.StringValueToPointer(model.NextHop),
Labels: &labels,
Destination: &iaas.RouteDestination{
DestinationCIDRv4: &iaas.DestinationCIDRv4{
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The v1 iaas api supported only a CIDRv4 as destination, but the v2 api supports v4 and v6. When we already need to deprecate some fields in the iaas resources and change things, I would suggest, that we do this for the network area route and the prefix/destination field as well.

DestinationCIDRv6: nil,
},
Labels: &labels,
Nexthop: &iaas.RouteNexthop{
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same like for the destination. Nexthop supports beside ipv4 also ipv6, internet and blackhole in the iaas v2 api

"network_interfaces": schema.ListAttribute{
Description: "The IDs of network interfaces which should be attached to the server. Updating it will recreate the server.",
Optional: true,
Required: true,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This can lead to migration issues. If some hasn't defined the network_interfaces in the server resource and uses instead the server_network_interface_attach resource (or hasn't attached any network_interface, but then the server is probably useless), an migration would result in a replace at the moment.

Use for example this tf-file with the latest released version of our provider:

resource "stackit_server" "server-01" {
  project_id = var.project_id
  name       = "test"
  boot_volume = {
    source_type           = "image"
    size                  = 32
    source_id             = "a2c127b2-b1b5-4aee-986f-41cd11b41279" // Ubuntu 24.04 image
    delete_on_termination = true
  }
  machine_type       = "t1.1"
  availability_zone  = "eu01-1"
  # network_interfaces = [ stackit_network_interface.nic.network_interface_id ]
}


resource "stackit_network" "network" {
  project_id         = var.project_id
  name               = "test"
  ipv4_nameservers   = ["8.8.8.8", "8.8.4.4"]
  ipv4_prefix_length = 24
  routed             = true
}

resource "stackit_network_interface" "nic" {
  project_id         = var.project_id
  network_id         = stackit_network.network.network_id
}

resource "stackit_server_network_interface_attach" "name" {
  project_id = var.project_id
  server_id = stackit_server.server-01.server_id
  network_interface_id = stackit_network_interface.nic.network_interface_id
}
  • Run $ terraform apply
  • Build locally the provider from this PR
  • Run again $ terraform apply
    -> Error because network_interfaces isn't set
    -> Adding a network_interface will result in an Replace

network_interfaces currently stores only the network_interfaces which are provided in the plan, because otherwise it results in state drifts. See STACKITTPR-101 and #679. To provide a smooth migration, we probably need to extend the filter logic, which was introduced in #679


model.Id = utils.BuildInternalTerraformId(projectId, serverId, networkInterfaceId)
model.Id = utils.BuildInternalTerraformId(projectId, region, serverId, networkInterfaceId)

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Region must be set in the model

Suggested change
model.Region = types.StringValue(region)

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In the Read() function it's also missing

@rubenhoenle rubenhoenle marked this pull request as ready for review December 10, 2025 15:05
@rubenhoenle rubenhoenle requested a review from a team as a code owner December 10, 2025 15:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants