Skip to content

Commit

Permalink
[WAYP-2172] waypoint: Update add-on def res/ds to use helper for read…
Browse files Browse the repository at this point in the history
…ing vars.
  • Loading branch information
paladin-devops committed Apr 29, 2024
1 parent 6390bd3 commit 8d9de3a
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 44 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ import (
"github.com/hashicorp/terraform-plugin-framework/datasource/schema"
"github.com/hashicorp/terraform-plugin-framework/path"
"github.com/hashicorp/terraform-plugin-framework/types"
"github.com/hashicorp/terraform-plugin-log/tflog"
"github.com/hashicorp/terraform-provider-hcp/internal/clients"
)

Expand Down Expand Up @@ -247,27 +248,10 @@ func (d *DataSourceAddOnDefinition) Read(ctx context.Context, req datasource.Rea
state.ReadmeMarkdownTemplate = types.StringNull()
}

if definition.VariableOptions != nil && len(definition.VariableOptions) > 0 {
varOpts := []*tfcVariableOption{}
for _, v := range definition.VariableOptions {
varOptsState := &tfcVariableOption{
Name: types.StringValue(v.Name),
VariableType: types.StringValue(v.VariableType),
UserEditable: types.BoolValue(v.UserEditable),
}

vOpts, diags := types.ListValueFrom(ctx, types.StringType, v.Options)
varOptsState.Options = vOpts

resp.Diagnostics.Append(diags...)
if resp.Diagnostics.HasError() {
return
}

varOpts = append(varOpts, varOptsState)
}

state.TerraformVariableOptions = varOpts
state.TerraformVariableOptions, err = readVarOpts(ctx, definition.VariableOptions, &resp.Diagnostics)
if err != nil {
tflog.Error(ctx, err.Error())
return
}

resp.Diagnostics.Append(resp.State.Set(ctx, &state)...)
Expand Down
38 changes: 15 additions & 23 deletions internal/provider/waypoint/resource_waypoint_add_on_definition.go
Original file line number Diff line number Diff line change
Expand Up @@ -344,7 +344,12 @@ func (r *AddOnDefinitionResource) Create(ctx context.Context, req resource.Creat

actualVars = append(actualVars, varOptsState)

Check failure on line 345 in internal/provider/waypoint/resource_waypoint_add_on_definition.go

View workflow job for this annotation

GitHub Actions / Unit Test and Lint

SA4010: this result of append is never used, except maybe in other appends (staticcheck)
}
plan.TerraformVariableOptions = actualVars

plan.TerraformVariableOptions, err = readVarOpts(ctx, addOnDefinition.VariableOptions, &resp.Diagnostics)
if err != nil {
tflog.Error(ctx, err.Error())
return
}

// Write logs using the tflog package
// Documentation: https://terraform.io/plugin/log
Expand Down Expand Up @@ -428,27 +433,10 @@ func (r *AddOnDefinitionResource) Read(ctx context.Context, req resource.ReadReq
state.TerraformNoCodeModule = tfcNoCode
}

if definition.VariableOptions != nil && len(definition.VariableOptions) > 0 {
varOpts := []*tfcVariableOption{}
for _, v := range definition.VariableOptions {
varOptsState := &tfcVariableOption{
Name: types.StringValue(v.Name),
VariableType: types.StringValue(v.VariableType),
UserEditable: types.BoolValue(v.UserEditable),
}

vOpts, diags := types.ListValueFrom(ctx, types.StringType, v.Options)
varOptsState.Options = vOpts

resp.Diagnostics.Append(diags...)
if resp.Diagnostics.HasError() {
return
}

varOpts = append(varOpts, varOptsState)
}

state.TerraformVariableOptions = varOpts
state.TerraformVariableOptions, err = readVarOpts(ctx, definition.VariableOptions, &resp.Diagnostics)
if err != nil {
tflog.Error(ctx, err.Error())
return
}

resp.Diagnostics.Append(resp.State.Set(ctx, &state)...)
Expand Down Expand Up @@ -616,7 +604,11 @@ func (r *AddOnDefinitionResource) Update(ctx context.Context, req resource.Updat

actualVars = append(actualVars, varOptsState)

Check failure on line 605 in internal/provider/waypoint/resource_waypoint_add_on_definition.go

View workflow job for this annotation

GitHub Actions / Unit Test and Lint

SA4010: this result of append is never used, except maybe in other appends (staticcheck)
}
plan.TerraformVariableOptions = actualVars
plan.TerraformVariableOptions, err = readVarOpts(ctx, addOnDefinition.VariableOptions, &resp.Diagnostics)
if err != nil {
tflog.Error(ctx, err.Error())
return
}

// Write logs using the tflog package
// Documentation: https://terraform.io/plugin/log
Expand Down

0 comments on commit 8d9de3a

Please sign in to comment.