From b1f8c8a4d99f22affb481094acf684525853f4b1 Mon Sep 17 00:00:00 2001 From: "Marcel S. Henselin" Date: Fri, 13 Feb 2026 14:55:36 +0000 Subject: [PATCH] fix: fix wrong order of params (#59) ## Description relates to #1234 ## Checklist - [ ] Issue was linked above - [ ] Code format was applied: `make fmt` - [ ] Examples were added / adjusted (see `examples/` directory) - [x] 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](https://github.com/stackitcloud/terraform-provider-stackit/blob/f5f99d170996b208672ae684b6da53420e369563/stackit/internal/services/dns/dns_acc_test.go)) - [x] Unit tests are passing: `make test` (will be checked by CI) - [x] No linter issues: `make lint` (will be checked by CI) Reviewed-on: https://tf-provider.git.onstackit.cloud/stackit-dev-tools/terraform-provider-stackitprivatepreview/pulls/59 Co-authored-by: Marcel S. Henselin Co-committed-by: Marcel S. Henselin --- cmd/cmd/build/templates/resource_scaffold.gotmpl | 13 +++++++++---- .../services/postgresflexalpha/database/resource.go | 6 +++--- .../services/sqlserverflexbeta/user/resource.go | 2 +- 3 files changed, 13 insertions(+), 8 deletions(-) diff --git a/cmd/cmd/build/templates/resource_scaffold.gotmpl b/cmd/cmd/build/templates/resource_scaffold.gotmpl index 8b612f9c..3fafc10c 100644 --- a/cmd/cmd/build/templates/resource_scaffold.gotmpl +++ b/cmd/cmd/build/templates/resource_scaffold.gotmpl @@ -39,11 +39,14 @@ type {{.NameCamel}}Resource struct{ providerData core.ProviderData } +// resourceModel represents the Terraform resource state +type resourceModel = {{.PackageName}}.{{.NamePascal}}Model + type {{.NamePascal}}ResourceIdentityModel struct { ProjectID types.String `tfsdk:"project_id"` Region types.String `tfsdk:"region"` // TODO: implement further needed parts - {{.NamePascal}}ID types.String `tfsdk:"instance_id"` + {{.NamePascal}}ID types.String `tfsdk:"{{.NameSnake}}_id"` } // Metadata defines terraform resource name @@ -51,6 +54,9 @@ func (r *{{.NameCamel}}Resource) Metadata(ctx context.Context, req resource.Meta resp.TypeName = req.ProviderTypeName + "_{{.PackageName}}_{{.NameSnake}}" } +//go:embed planModifiers.yaml +var modifiersFileByte []byte + // Schema loads the schema from generated files and adds plan modifiers func (r *{{.NameCamel}}Resource) Schema(ctx context.Context, req resource.SchemaRequest, resp *resource.SchemaResponse) { schema = {{.PackageName}}ResGen.{{.NamePascal}}ResourceSchema(ctx) @@ -82,6 +88,7 @@ func (r *instanceResource) IdentitySchema(_ context.Context, _ resource.Identity "instance_id": identityschema.StringAttribute{ RequiredForImport: true, // can be defaulted by the provider configuration }, + // TODO: implement remaining schema parts }, } } @@ -160,9 +167,6 @@ func (r *{{.NameCamel}}Resource) ModifyPlan( } } -//go:embed planModifiers.yaml -var modifiersFileByte []byte - // Create creates a new resource func (r *{{.NameCamel}}Resource) Create(ctx context.Context, req resource.CreateRequest, resp *resource.CreateResponse) { var data {{.PackageName}}ResGen.{{.NamePascal}}Model @@ -180,6 +184,7 @@ func (r *{{.NameCamel}}Resource) Create(ctx context.Context, req resource.Create region := data.Region.ValueString() ctx = tflog.SetField(ctx, "project_id", projectId) ctx = tflog.SetField(ctx, "region", region) + // TODO: add remaining fields // TODO: Create API call logic /* diff --git a/stackit/internal/services/postgresflexalpha/database/resource.go b/stackit/internal/services/postgresflexalpha/database/resource.go index c42744cd..fbc4f6b1 100644 --- a/stackit/internal/services/postgresflexalpha/database/resource.go +++ b/stackit/internal/services/postgresflexalpha/database/resource.go @@ -290,7 +290,7 @@ func (r *databaseResource) Read( ctx = core.InitProviderContext(ctx) - projectId, instanceId, region, databaseId, errExt := r.extractIdentityData(model, identityData) + projectId, region, instanceId, databaseId, errExt := r.extractIdentityData(model, identityData) if errExt != nil { core.LogAndAddError( ctx, @@ -376,7 +376,7 @@ func (r *databaseResource) Update( ctx = core.InitProviderContext(ctx) - projectId, instanceId, region, databaseId64, errExt := r.extractIdentityData(model, identityData) + projectId, region, instanceId, databaseId64, errExt := r.extractIdentityData(model, identityData) if errExt != nil { core.LogAndAddError( ctx, @@ -502,7 +502,7 @@ func (r *databaseResource) Delete( ctx = core.InitProviderContext(ctx) - projectId, instanceId, region, databaseId64, errExt := r.extractIdentityData(model, identityData) + projectId, region, instanceId, databaseId64, errExt := r.extractIdentityData(model, identityData) if errExt != nil { core.LogAndAddError( ctx, diff --git a/stackit/internal/services/sqlserverflexbeta/user/resource.go b/stackit/internal/services/sqlserverflexbeta/user/resource.go index 27b198e6..a5de43ea 100644 --- a/stackit/internal/services/sqlserverflexbeta/user/resource.go +++ b/stackit/internal/services/sqlserverflexbeta/user/resource.go @@ -488,7 +488,7 @@ func (r *userResource) ImportState( resp.Diagnostics.Append(resp.State.SetAttribute(ctx, path.Root("instance_id"), idParts[2])...) resp.Diagnostics.Append(resp.State.SetAttribute(ctx, path.Root("user_id"), userId)...) - tflog.Info(ctx, "Postgres Flex user state imported") + tflog.Info(ctx, "SQLServer Flex user state imported") return }