From 64d6fa9bea4b05a25a054962f27203326749702a Mon Sep 17 00:00:00 2001 From: Mauritz Uphoff <39736813+h3adex@users.noreply.github.com> Date: Thu, 6 Nov 2025 18:10:11 +0100 Subject: [PATCH] feat(resourcemanager): graduate folder resource to ga (#1043) --- docs/data-sources/resourcemanager_folder.md | 3 --- docs/resources/resourcemanager_folder.md | 3 --- .../resourcemanager/folder/datasource.go | 8 +----- .../resourcemanager/folder/resource.go | 8 +----- .../resourcemanager_acc_test.go | 12 ++++----- stackit/internal/testutil/testutil.go | 25 ------------------- 6 files changed, 8 insertions(+), 51 deletions(-) diff --git a/docs/data-sources/resourcemanager_folder.md b/docs/data-sources/resourcemanager_folder.md index e13cbd08..e7abfbe9 100644 --- a/docs/data-sources/resourcemanager_folder.md +++ b/docs/data-sources/resourcemanager_folder.md @@ -4,15 +4,12 @@ page_title: "stackit_resourcemanager_folder Data Source - stackit" subcategory: "" description: |- Resource Manager folder data source schema. To identify the folder, you need to provide the container_id. - ~> This datasource is in beta and may be subject to breaking changes in the future. Use with caution. See our guide https://registry.terraform.io/providers/stackitcloud/stackit/latest/docs/guides/opting_into_beta_resources for how to opt-in to use beta resources. --- # stackit_resourcemanager_folder (Data Source) Resource Manager folder data source schema. To identify the folder, you need to provide the container_id. -~> This datasource is in beta and may be subject to breaking changes in the future. Use with caution. See our [guide](https://registry.terraform.io/providers/stackitcloud/stackit/latest/docs/guides/opting_into_beta_resources) for how to opt-in to use beta resources. - ## Example Usage ```terraform diff --git a/docs/resources/resourcemanager_folder.md b/docs/resources/resourcemanager_folder.md index aaa80afc..2a99f8a0 100644 --- a/docs/resources/resourcemanager_folder.md +++ b/docs/resources/resourcemanager_folder.md @@ -4,15 +4,12 @@ page_title: "stackit_resourcemanager_folder Resource - stackit" subcategory: "" description: |- Resource Manager folder resource schema. - ~> This resource is in beta and may be subject to breaking changes in the future. Use with caution. See our guide https://registry.terraform.io/providers/stackitcloud/stackit/latest/docs/guides/opting_into_beta_resources for how to opt-in to use beta resources. --- # stackit_resourcemanager_folder (Resource) Resource Manager folder resource schema. -~> This resource is in beta and may be subject to breaking changes in the future. Use with caution. See our [guide](https://registry.terraform.io/providers/stackitcloud/stackit/latest/docs/guides/opting_into_beta_resources) for how to opt-in to use beta resources. - ## Example Usage ```terraform diff --git a/stackit/internal/services/resourcemanager/folder/datasource.go b/stackit/internal/services/resourcemanager/folder/datasource.go index bbcce924..f01e6df0 100644 --- a/stackit/internal/services/resourcemanager/folder/datasource.go +++ b/stackit/internal/services/resourcemanager/folder/datasource.go @@ -16,7 +16,6 @@ import ( "github.com/stackitcloud/stackit-sdk-go/services/resourcemanager" "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" resourcemanagerUtils "github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/resourcemanager/utils" "github.com/stackitcloud/terraform-provider-stackit/stackit/internal/utils" "github.com/stackitcloud/terraform-provider-stackit/stackit/internal/validate" @@ -49,11 +48,6 @@ func (d *folderDataSource) Configure(ctx context.Context, req datasource.Configu return } - features.CheckBetaResourcesEnabled(ctx, &providerData, &resp.Diagnostics, "stackit_resourcemanager_folder", "datasource") - if resp.Diagnostics.HasError() { - return - } - apiClient := resourcemanagerUtils.ConfigureClient(ctx, &providerData, &resp.Diagnostics) if resp.Diagnostics.HasError() { return @@ -78,7 +72,7 @@ func (d *folderDataSource) Schema(_ context.Context, _ datasource.SchemaRequest, } resp.Schema = schema.Schema{ - Description: features.AddBetaDescription(descriptions["main"], core.Datasource), + Description: descriptions["main"], Attributes: map[string]schema.Attribute{ "id": schema.StringAttribute{ Description: descriptions["id"], diff --git a/stackit/internal/services/resourcemanager/folder/resource.go b/stackit/internal/services/resourcemanager/folder/resource.go index 6154ab47..8e80593a 100644 --- a/stackit/internal/services/resourcemanager/folder/resource.go +++ b/stackit/internal/services/resourcemanager/folder/resource.go @@ -27,7 +27,6 @@ import ( "github.com/stackitcloud/stackit-sdk-go/services/resourcemanager" "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" resourcemanagerUtils "github.com/stackitcloud/terraform-provider-stackit/stackit/internal/services/resourcemanager/utils" "github.com/stackitcloud/terraform-provider-stackit/stackit/internal/validate" ) @@ -81,11 +80,6 @@ func (r *folderResource) Configure(ctx context.Context, req resource.ConfigureRe return } - features.CheckBetaResourcesEnabled(ctx, &providerData, &resp.Diagnostics, "stackit_resourcemanager_folder", "resource") - if resp.Diagnostics.HasError() { - return - } - apiClient := resourcemanagerUtils.ConfigureClient(ctx, &providerData, &resp.Diagnostics) if resp.Diagnostics.HasError() { return @@ -110,7 +104,7 @@ func (r *folderResource) Schema(_ context.Context, _ resource.SchemaRequest, res } resp.Schema = schema.Schema{ - Description: features.AddBetaDescription(descriptions["main"], core.Resource), + Description: descriptions["main"], Attributes: map[string]schema.Attribute{ "id": schema.StringAttribute{ Description: descriptions["id"], diff --git a/stackit/internal/services/resourcemanager/resourcemanager_acc_test.go b/stackit/internal/services/resourcemanager/resourcemanager_acc_test.go index 5490aefb..600445f3 100644 --- a/stackit/internal/services/resourcemanager/resourcemanager_acc_test.go +++ b/stackit/internal/services/resourcemanager/resourcemanager_acc_test.go @@ -273,7 +273,7 @@ func TestAccResourceManagerFolderContainerId(t *testing.T) { // Create { ConfigVariables: testConfigResourceFolderParentContainerId, - Config: testutil.ResourceManagerProviderConfigBetaEnabled() + resourceFolder, + Config: testutil.ResourceManagerProviderConfig() + resourceFolder, Check: resource.ComposeAggregateTestCheckFunc( resource.TestCheckResourceAttr("stackit_resourcemanager_folder.example", "name", testutil.ConvertConfigVariable(testConfigResourceFolderParentContainerId["name"])), resource.TestCheckResourceAttr("stackit_resourcemanager_folder.example", "parent_container_id", testutil.ConvertConfigVariable(testConfigResourceFolderParentContainerId["parent_container_id"])), @@ -297,7 +297,7 @@ func TestAccResourceManagerFolderContainerId(t *testing.T) { data "stackit_resourcemanager_folder" "example" { container_id = stackit_resourcemanager_folder.example.container_id } - `, testutil.ResourceManagerProviderConfigBetaEnabled(), resourceFolder), + `, testutil.ResourceManagerProviderConfig(), resourceFolder), Check: resource.ComposeAggregateTestCheckFunc( resource.TestCheckResourceAttr("data.stackit_resourcemanager_folder.example", "name", testutil.ConvertConfigVariable(testConfigResourceFolderParentContainerId["name"])), resource.TestCheckResourceAttr("data.stackit_resourcemanager_folder.example", "labels.%", "1"), @@ -324,7 +324,7 @@ func TestAccResourceManagerFolderContainerId(t *testing.T) { // Update { ConfigVariables: testConfigFolderNameParentContainerIdUpdated(), - Config: testutil.ResourceManagerProviderConfigBetaEnabled() + resourceFolder, + Config: testutil.ResourceManagerProviderConfig() + resourceFolder, Check: resource.ComposeAggregateTestCheckFunc( resource.TestCheckResourceAttr("stackit_resourcemanager_folder.example", "name", testutil.ConvertConfigVariable(testConfigFolderNameParentContainerIdUpdated()["name"])), resource.TestCheckResourceAttr("stackit_resourcemanager_folder.example", "parent_container_id", testutil.ConvertConfigVariable(testConfigFolderNameParentContainerIdUpdated()["parent_container_id"])), @@ -352,7 +352,7 @@ func TestAccResourceManagerFolderParentUUID(t *testing.T) { // Create { ConfigVariables: testConfigResourceFolderParentUUID, - Config: testutil.ResourceManagerProviderConfigBetaEnabled() + resourceFolder, + Config: testutil.ResourceManagerProviderConfig() + resourceFolder, Check: resource.ComposeAggregateTestCheckFunc( resource.TestCheckResourceAttr("stackit_resourcemanager_folder.example", "name", testutil.ConvertConfigVariable(testConfigResourceFolderParentUUID["name"])), resource.TestCheckResourceAttr("stackit_resourcemanager_folder.example", "parent_container_id", testutil.ConvertConfigVariable(testConfigResourceFolderParentUUID["parent_container_id"])), @@ -376,7 +376,7 @@ func TestAccResourceManagerFolderParentUUID(t *testing.T) { data "stackit_resourcemanager_folder" "example" { container_id = stackit_resourcemanager_folder.example.container_id } - `, testutil.ResourceManagerProviderConfigBetaEnabled(), resourceFolder), + `, testutil.ResourceManagerProviderConfig(), resourceFolder), Check: resource.ComposeAggregateTestCheckFunc( resource.TestCheckResourceAttr("data.stackit_resourcemanager_folder.example", "name", testutil.ConvertConfigVariable(testConfigResourceFolderParentUUID["name"])), resource.TestCheckResourceAttr("data.stackit_resourcemanager_folder.example", "labels.%", "1"), @@ -403,7 +403,7 @@ func TestAccResourceManagerFolderParentUUID(t *testing.T) { // Update { ConfigVariables: testConfigFolderNameParentUUIDUpdated(), - Config: testutil.ResourceManagerProviderConfigBetaEnabled() + resourceFolder, + Config: testutil.ResourceManagerProviderConfig() + resourceFolder, Check: resource.ComposeAggregateTestCheckFunc( resource.TestCheckResourceAttr("stackit_resourcemanager_folder.example", "name", testutil.ConvertConfigVariable(testConfigFolderNameParentUUIDUpdated()["name"])), resource.TestCheckResourceAttr("stackit_resourcemanager_folder.example", "parent_container_id", testutil.ConvertConfigVariable(testConfigFolderNameParentUUIDUpdated()["parent_container_id"])), diff --git a/stackit/internal/testutil/testutil.go b/stackit/internal/testutil/testutil.go index a2651db2..a2b83119 100644 --- a/stackit/internal/testutil/testutil.go +++ b/stackit/internal/testutil/testutil.go @@ -342,31 +342,6 @@ func ResourceManagerProviderConfig() string { ) } -func ResourceManagerProviderConfigBetaEnabled() string { - token := GetTestProjectServiceAccountToken("") - if ResourceManagerCustomEndpoint == "" || AuthorizationCustomEndpoint == "" { - return fmt.Sprintf(` - provider "stackit" { - service_account_token = "%s" - enable_beta_resources = true - }`, - - token, - ) - } - return fmt.Sprintf(` - provider "stackit" { - resourcemanager_custom_endpoint = "%s" - authorization_custom_endpoint = "%s" - service_account_token = "%s" - enable_beta_resources = true - }`, - ResourceManagerCustomEndpoint, - AuthorizationCustomEndpoint, - token, - ) -} - func SecretsManagerProviderConfig() string { if SecretsManagerCustomEndpoint == "" { return `