Skip to content

chore: parse *.tfvars files from templates #68

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Aug 12, 2024
Merged
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
26 changes: 12 additions & 14 deletions internal/provider/template_resource.go
Original file line number Diff line number Diff line change
Expand Up @@ -965,20 +965,18 @@ func newVersion(ctx context.Context, client *codersdk.Client, req newVersionRequ
return nil, fmt.Errorf("failed to upload directory: %s", err)
}
tflog.Trace(ctx, "successfully uploaded directory")
// TODO(ethanndickson): Uncomment when a released `codersdk` exports template variable parsing
// tflog.Trace(ctx,"discovering and parsing vars files")
// varFiles, err := codersdk.DiscoverVarsFiles(directory)
// if err != nil {
// return nil, fmt.Errorf("failed to discover vars files: %s", err)
// }
// vars, err := codersdk.ParseUserVariableValues(varFiles, "", []string{})
// if err != nil {
// return nil, fmt.Errorf("failed to parse user variable values: %s", err)
// }
// tflog.Trace(ctx,"discovered and parsed vars files", map[string]any{
// "vars": vars,
// })
vars := make([]codersdk.VariableValue, 0, len(req.Version.TerraformVariables))
tflog.Trace(ctx, "discovering and parsing vars files")
varFiles, err := codersdk.DiscoverVarsFiles(directory)
if err != nil {
return nil, fmt.Errorf("failed to discover vars files: %s", err)
}
vars, err := codersdk.ParseUserVariableValues(varFiles, "", []string{})
if err != nil {
return nil, fmt.Errorf("failed to parse user variable values: %s", err)
}
tflog.Trace(ctx, "discovered and parsed vars files", map[string]any{
"vars": vars,
})
for _, variable := range req.Version.TerraformVariables {
vars = append(vars, codersdk.VariableValue{
Name: variable.Name.ValueString(),
Expand Down
7 changes: 0 additions & 7 deletions internal/provider/template_resource_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -48,13 +48,6 @@ func TestAccTemplateResource(t *testing.T) {
// Auto-generated version name
Directory: &exTemplateOne,
Active: PtrTo(true),
// TODO(ethanndickson): Remove this when we add in `*.tfvars` parsing
TerraformVariables: []testAccTemplateKeyValueConfig{
{
Key: PtrTo("name"),
Value: PtrTo("world"),
},
},
},
},
ACL: testAccTemplateACLConfig{
Expand Down
Loading