Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,6 @@ require (
github.com/stackitcloud/stackit-sdk-go/services/edge v0.3.0
github.com/stackitcloud/stackit-sdk-go/services/git v0.10.1
github.com/stackitcloud/stackit-sdk-go/services/iaas v1.3.0
github.com/stackitcloud/stackit-sdk-go/services/iaasalpha v0.1.23-alpha
github.com/stackitcloud/stackit-sdk-go/services/kms v1.2.0
github.com/stackitcloud/stackit-sdk-go/services/loadbalancer v1.6.2
github.com/stackitcloud/stackit-sdk-go/services/logme v0.25.3
Expand Down
2 changes: 0 additions & 2 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -163,8 +163,6 @@ github.com/stackitcloud/stackit-sdk-go/services/git v0.10.1 h1:3JKXfI5hdcXcRVBjU
github.com/stackitcloud/stackit-sdk-go/services/git v0.10.1/go.mod h1:3nTaj8IGjNNGYUD2CpuXkXwc5c4giTUmoPggFhjVFxo=
github.com/stackitcloud/stackit-sdk-go/services/iaas v1.3.0 h1:U/x0tc487X9msMS5yZYjrBAAKrCx87Trmt0kh8JiARA=
github.com/stackitcloud/stackit-sdk-go/services/iaas v1.3.0/go.mod h1:6+5+RCDfU7eQN3+/SGdOtx7Bq9dEa2FrHz/jflgY1M4=
github.com/stackitcloud/stackit-sdk-go/services/iaasalpha v0.1.23-alpha h1:ugpMOMUZGB0yXsWcfe97F7GCdjlexbjFuGD8ZeyMSts=
github.com/stackitcloud/stackit-sdk-go/services/iaasalpha v0.1.23-alpha/go.mod h1:v5VGvTxLcCdJJmblbhqYalt/MFHcElDfYoy15CMhaWs=
github.com/stackitcloud/stackit-sdk-go/services/kms v1.2.0 h1:Ar2n9GKmrTN80G/Ta1R+fL5aX5nEoxL6ODVJl3emzho=
github.com/stackitcloud/stackit-sdk-go/services/kms v1.2.0/go.mod h1:sHMFoYvVrkRZcH13DkLvp48nW+ssRVVVuwqJHDGpa5M=
github.com/stackitcloud/stackit-sdk-go/services/loadbalancer v1.6.2 h1:DwwRMzvnKWTbfmLvq2xe+mYhv5fA1AwWdQGznI05sGc=
Expand Down
1,148 changes: 1,026 additions & 122 deletions stackit/internal/services/iaas/iaas_acc_test.go

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -5,16 +5,15 @@ import (
"fmt"
"net/http"

shared "github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaasalpha/routingtable/shared"

"github.com/hashicorp/terraform-plugin-framework/datasource"
"github.com/hashicorp/terraform-plugin-framework/datasource/schema"
"github.com/hashicorp/terraform-plugin-log/tflog"
"github.com/stackitcloud/stackit-sdk-go/services/iaasalpha"
"github.com/stackitcloud/stackit-sdk-go/services/iaas"
"github.com/stackitcloud/terraform-provider-stackit/stackit/internal/conversion"
"github.com/stackitcloud/terraform-provider-stackit/stackit/internal/core"
"github.com/stackitcloud/terraform-provider-stackit/stackit/internal/features"
iaasalphaUtils "github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaasalpha/utils"
shared "github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/routingtable/shared"
iaasUtils "github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/utils"
"github.com/stackitcloud/terraform-provider-stackit/stackit/internal/utils"
)

Expand All @@ -30,7 +29,7 @@ func NewRoutingTableRouteDataSource() datasource.DataSource {

// routingTableRouteDataSource is the data source implementation.
type routingTableRouteDataSource struct {
client *iaasalpha.APIClient
client *iaas.APIClient
providerData core.ProviderData
}

Expand All @@ -51,7 +50,7 @@ func (d *routingTableRouteDataSource) Configure(ctx context.Context, req datasou
return
}

apiClient := iaasalphaUtils.ConfigureClient(ctx, &d.providerData, &resp.Diagnostics)
apiClient := iaasUtils.ConfigureClient(ctx, &d.providerData, &resp.Diagnostics)
if resp.Diagnostics.HasError() {
return
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,9 @@ import (
"fmt"
"strings"

"github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaasalpha/routingtable/shared"
"github.com/stackitcloud/stackit-sdk-go/services/iaas"
"github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/routingtable/shared"
iaasUtils "github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaas/utils"

"github.com/hashicorp/terraform-plugin-framework/path"
"github.com/hashicorp/terraform-plugin-framework/resource"
Expand All @@ -17,11 +19,9 @@ import (
"github.com/hashicorp/terraform-plugin-framework/types/basetypes"
"github.com/hashicorp/terraform-plugin-log/tflog"
sdkUtils "github.com/stackitcloud/stackit-sdk-go/core/utils"
"github.com/stackitcloud/stackit-sdk-go/services/iaasalpha"
"github.com/stackitcloud/terraform-provider-stackit/stackit/internal/conversion"
"github.com/stackitcloud/terraform-provider-stackit/stackit/internal/core"
"github.com/stackitcloud/terraform-provider-stackit/stackit/internal/features"
iaasalphaUtils "github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/iaasalpha/utils"
"github.com/stackitcloud/terraform-provider-stackit/stackit/internal/utils"
"github.com/stackitcloud/terraform-provider-stackit/stackit/internal/validate"
)
Expand All @@ -41,7 +41,7 @@ func NewRoutingTableRouteResource() resource.Resource {

// routeResource is the resource implementation.
type routeResource struct {
client *iaasalpha.APIClient
client *iaas.APIClient
providerData core.ProviderData
}

Expand All @@ -63,7 +63,7 @@ func (r *routeResource) Configure(ctx context.Context, req resource.ConfigureReq
return
Copy link
Contributor

Choose a reason for hiding this comment

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

I think we can remove now the experimental flag for routing tables because it doesn't use alpha anymore

}

apiClient := iaasalphaUtils.ConfigureClient(ctx, &r.providerData, &resp.Diagnostics)
apiClient := iaasUtils.ConfigureClient(ctx, &r.providerData, &resp.Diagnostics)
if resp.Diagnostics.HasError() {
return
}
Expand Down Expand Up @@ -461,7 +461,7 @@ func (r *routeResource) ImportState(ctx context.Context, req resource.ImportStat
tflog.Info(ctx, "Routing table route state imported")
}

func mapFieldsFromList(ctx context.Context, routeResp *iaasalpha.RouteListResponse, model *shared.RouteModel, region string) error {
func mapFieldsFromList(ctx context.Context, routeResp *iaas.RouteListResponse, model *shared.RouteModel, region string) error {
if routeResp == nil || routeResp.Items == nil {
return fmt.Errorf("response input is nil")
} else if len(*routeResp.Items) < 1 {
Expand All @@ -474,7 +474,7 @@ func mapFieldsFromList(ctx context.Context, routeResp *iaasalpha.RouteListRespon
return shared.MapRouteModel(ctx, &route, model, region)
}

func toCreatePayload(ctx context.Context, model *shared.RouteReadModel) (*iaasalpha.AddRoutesToRoutingTablePayload, error) {
func toCreatePayload(ctx context.Context, model *shared.RouteReadModel) (*iaas.AddRoutesToRoutingTablePayload, error) {
if model == nil {
return nil, fmt.Errorf("nil model")
}
Expand All @@ -493,8 +493,8 @@ func toCreatePayload(ctx context.Context, model *shared.RouteReadModel) (*iaasal
return nil, err
}

return &iaasalpha.AddRoutesToRoutingTablePayload{
Items: &[]iaasalpha.Route{
return &iaas.AddRoutesToRoutingTablePayload{
Items: &[]iaas.Route{
{
Labels: &labels,
Nexthop: nextHopPayload,
Expand All @@ -504,7 +504,7 @@ func toCreatePayload(ctx context.Context, model *shared.RouteReadModel) (*iaasal
}, nil
}

func toUpdatePayload(ctx context.Context, model *shared.RouteModel, currentLabels types.Map) (*iaasalpha.UpdateRouteOfRoutingTablePayload, error) {
func toUpdatePayload(ctx context.Context, model *shared.RouteModel, currentLabels types.Map) (*iaas.UpdateRouteOfRoutingTablePayload, error) {
if model == nil {
return nil, fmt.Errorf("nil model")
}
Expand All @@ -514,12 +514,12 @@ func toUpdatePayload(ctx context.Context, model *shared.RouteModel, currentLabel
return nil, fmt.Errorf("converting to Go map: %w", err)
}

return &iaasalpha.UpdateRouteOfRoutingTablePayload{
return &iaas.UpdateRouteOfRoutingTablePayload{
Labels: &labels,
}, nil
}

func toNextHopPayload(ctx context.Context, model *shared.RouteReadModel) (*iaasalpha.RouteNexthop, error) {
func toNextHopPayload(ctx context.Context, model *shared.RouteReadModel) (*iaas.RouteNexthop, error) {
if model == nil {
return nil, fmt.Errorf("nil model")
}
Expand All @@ -535,18 +535,18 @@ func toNextHopPayload(ctx context.Context, model *shared.RouteReadModel) (*iaasa

switch nexthopModel.Type.ValueString() {
case "blackhole":
return sdkUtils.Ptr(iaasalpha.NexthopBlackholeAsRouteNexthop(iaasalpha.NewNexthopBlackhole("blackhole"))), nil
return sdkUtils.Ptr(iaas.NexthopBlackholeAsRouteNexthop(iaas.NewNexthopBlackhole("blackhole"))), nil
case "internet":
return sdkUtils.Ptr(iaasalpha.NexthopInternetAsRouteNexthop(iaasalpha.NewNexthopInternet("internet"))), nil
return sdkUtils.Ptr(iaas.NexthopInternetAsRouteNexthop(iaas.NewNexthopInternet("internet"))), nil
case "ipv4":
return sdkUtils.Ptr(iaasalpha.NexthopIPv4AsRouteNexthop(iaasalpha.NewNexthopIPv4("ipv4", nexthopModel.Value.ValueString()))), nil
return sdkUtils.Ptr(iaas.NexthopIPv4AsRouteNexthop(iaas.NewNexthopIPv4("ipv4", nexthopModel.Value.ValueString()))), nil
case "ipv6":
return sdkUtils.Ptr(iaasalpha.NexthopIPv6AsRouteNexthop(iaasalpha.NewNexthopIPv6("ipv6", nexthopModel.Value.ValueString()))), nil
return sdkUtils.Ptr(iaas.NexthopIPv6AsRouteNexthop(iaas.NewNexthopIPv6("ipv6", nexthopModel.Value.ValueString()))), nil
}
return nil, fmt.Errorf("unknown nexthop type: %s", nexthopModel.Type.ValueString())
}

func toDestinationPayload(ctx context.Context, model *shared.RouteReadModel) (*iaasalpha.RouteDestination, error) {
func toDestinationPayload(ctx context.Context, model *shared.RouteReadModel) (*iaas.RouteDestination, error) {
if model == nil {
return nil, fmt.Errorf("nil model")
}
Expand All @@ -562,9 +562,9 @@ func toDestinationPayload(ctx context.Context, model *shared.RouteReadModel) (*i

switch destinationModel.Type.ValueString() {
case "cidrv4":
return sdkUtils.Ptr(iaasalpha.DestinationCIDRv4AsRouteDestination(iaasalpha.NewDestinationCIDRv4("cidrv4", destinationModel.Value.ValueString()))), nil
return sdkUtils.Ptr(iaas.DestinationCIDRv4AsRouteDestination(iaas.NewDestinationCIDRv4("cidrv4", destinationModel.Value.ValueString()))), nil
case "cidrv6":
return sdkUtils.Ptr(iaasalpha.DestinationCIDRv6AsRouteDestination(iaasalpha.NewDestinationCIDRv6("cidrv6", destinationModel.Value.ValueString()))), nil
return sdkUtils.Ptr(iaas.DestinationCIDRv6AsRouteDestination(iaas.NewDestinationCIDRv6("cidrv6", destinationModel.Value.ValueString()))), nil
}
return nil, fmt.Errorf("unknown destination type: %s", destinationModel.Type.ValueString())
}
Loading
Loading