From b099fde558846a82a16b805f4bc28d8062507102 Mon Sep 17 00:00:00 2001 From: Steven Masley Date: Fri, 17 Jun 2022 13:29:01 -0500 Subject: [PATCH 1/3] chore: Reuse ComputedParmeter instead of custom type --- cli/templatecreate.go | 2 +- codersdk/parameters.go | 6 ++++++ codersdk/templateversions.go | 19 ++----------------- 3 files changed, 9 insertions(+), 18 deletions(-) diff --git a/cli/templatecreate.go b/cli/templatecreate.go index 6ec0f86b4021e..e7aad2d51305b 100644 --- a/cli/templatecreate.go +++ b/cli/templatecreate.go @@ -221,7 +221,7 @@ func createValidTemplateVersion(cmd *cobra.Command, args createValidTemplateVers } if provisionerd.IsMissingParameterError(version.Job.Error) { - valuesBySchemaID := map[string]codersdk.TemplateVersionParameter{} + valuesBySchemaID := map[string]codersdk.ComputedParameter{} for _, parameterValue := range parameterValues { valuesBySchemaID[parameterValue.SchemaID.String()] = parameterValue } diff --git a/codersdk/parameters.go b/codersdk/parameters.go index a4943817144be..829a9183f5fde 100644 --- a/codersdk/parameters.go +++ b/codersdk/parameters.go @@ -41,6 +41,12 @@ const ( ParameterTypeSystemHCL ParameterTypeSystem = "hcl" ) +type ComputedParameter struct { + Parameter + SchemaID uuid.UUID `json:"schema_id"` + DefaultSourceValue bool `json:"default_source_value"` +} + // Parameter represents a set value for the scope. type Parameter struct { ID uuid.UUID `json:"id"` diff --git a/codersdk/templateversions.go b/codersdk/templateversions.go index afe8c32552eef..c41b93a17781f 100644 --- a/codersdk/templateversions.go +++ b/codersdk/templateversions.go @@ -22,21 +22,6 @@ type TemplateVersion struct { Readme string `json:"readme"` } -// TemplateVersionParameter represents a computed parameter value. -type TemplateVersionParameter struct { - ID uuid.UUID `json:"id"` - CreatedAt time.Time `json:"created_at"` - UpdatedAt time.Time `json:"updated_at"` - Scope ParameterScope `json:"scope"` - ScopeID uuid.UUID `json:"scope_id"` - Name string `json:"name"` - SourceScheme ParameterSourceScheme `json:"source_scheme"` - SourceValue string `json:"source_value"` - DestinationScheme ParameterDestinationScheme `json:"destination_scheme"` - SchemaID uuid.UUID `json:"schema_id"` - DefaultSourceValue bool `json:"default_source_value"` -} - // TemplateVersion returns a template version by ID. func (c *Client) TemplateVersion(ctx context.Context, id uuid.UUID) (TemplateVersion, error) { res, err := c.Request(ctx, http.MethodGet, fmt.Sprintf("/api/v2/templateversions/%s", id), nil) @@ -79,7 +64,7 @@ func (c *Client) TemplateVersionSchema(ctx context.Context, version uuid.UUID) ( } // TemplateVersionParameters returns computed parameters for a template version. -func (c *Client) TemplateVersionParameters(ctx context.Context, version uuid.UUID) ([]TemplateVersionParameter, error) { +func (c *Client) TemplateVersionParameters(ctx context.Context, version uuid.UUID) ([]ComputedParameter, error) { res, err := c.Request(ctx, http.MethodGet, fmt.Sprintf("/api/v2/templateversions/%s/parameters", version), nil) if err != nil { return nil, err @@ -88,7 +73,7 @@ func (c *Client) TemplateVersionParameters(ctx context.Context, version uuid.UUI if res.StatusCode != http.StatusOK { return nil, readBodyAsError(res) } - var params []TemplateVersionParameter + var params []ComputedParameter return params, json.NewDecoder(res.Body).Decode(¶ms) } From cd87f0c80f3f2748922717c5ca3affff7438d214 Mon Sep 17 00:00:00 2001 From: Steven Masley Date: Fri, 17 Jun 2022 13:31:03 -0500 Subject: [PATCH 2/3] fixup! chore: Reuse ComputedParmeter instead of custom type --- codersdk/parameters.go | 1 + 1 file changed, 1 insertion(+) diff --git a/codersdk/parameters.go b/codersdk/parameters.go index 829a9183f5fde..c6cd217c5f204 100644 --- a/codersdk/parameters.go +++ b/codersdk/parameters.go @@ -43,6 +43,7 @@ const ( type ComputedParameter struct { Parameter + SourceValue string `json:"source_value"` SchemaID uuid.UUID `json:"schema_id"` DefaultSourceValue bool `json:"default_source_value"` } From 17e544533d0d2556367001caa2221eadfa5ef20a Mon Sep 17 00:00:00 2001 From: Steven Masley Date: Fri, 17 Jun 2022 13:39:47 -0500 Subject: [PATCH 3/3] Make gen --- site/src/api/typesGenerated.ts | 30 +++++++++++------------------- 1 file changed, 11 insertions(+), 19 deletions(-) diff --git a/site/src/api/typesGenerated.ts b/site/src/api/typesGenerated.ts index d6b9ba0577105..cb47aaef74665 100644 --- a/site/src/api/typesGenerated.ts +++ b/site/src/api/typesGenerated.ts @@ -30,6 +30,13 @@ export interface BuildInfoResponse { readonly version: string } +// From codersdk/parameters.go:44:6 +export interface ComputedParameter extends Parameter { + readonly source_value: string + readonly schema_id: string + readonly default_source_value: boolean +} + // From codersdk/users.go:42:6 export interface CreateFirstUserRequest { readonly email: string @@ -49,7 +56,7 @@ export interface CreateOrganizationRequest { readonly name: string } -// From codersdk/parameters.go:80:6 +// From codersdk/parameters.go:87:6 export interface CreateParameterRequest { readonly copy_from_parameter?: string readonly name: string @@ -68,7 +75,7 @@ export interface CreateTemplateRequest { readonly min_autostart_interval_ms?: number } -// From codersdk/templateversions.go:121:6 +// From codersdk/templateversions.go:106:6 export interface CreateTemplateVersionDryRunRequest { readonly WorkspaceName: string readonly ParameterValues: CreateParameterRequest[] @@ -161,7 +168,7 @@ export interface Pagination { readonly offset?: number } -// From codersdk/parameters.go:45:6 +// From codersdk/parameters.go:52:6 export interface Parameter { readonly id: string readonly created_at: string @@ -173,7 +180,7 @@ export interface Parameter { readonly destination_scheme: ParameterDestinationScheme } -// From codersdk/parameters.go:56:6 +// From codersdk/parameters.go:63:6 export interface ParameterSchema { readonly id: string readonly created_at: string @@ -265,21 +272,6 @@ export interface TemplateVersion { readonly readme: string } -// From codersdk/templateversions.go:26:6 -export interface TemplateVersionParameter { - readonly id: string - readonly created_at: string - readonly updated_at: string - readonly scope: ParameterScope - readonly scope_id: string - readonly name: string - readonly source_scheme: ParameterSourceScheme - readonly source_value: string - readonly destination_scheme: ParameterDestinationScheme - readonly schema_id: string - readonly default_source_value: boolean -} - // From codersdk/templates.go:100:6 export interface TemplateVersionsByTemplateRequest extends Pagination { readonly template_id: string