@@ -18,7 +18,6 @@ import (
18
18
19
19
func (r * RootCmd )create ()* clibase.Cmd {
20
20
var (
21
- parameterFile string
22
21
richParameterFile string
23
22
templateName string
24
23
startAt string
@@ -122,8 +121,6 @@ func (r *RootCmd) create() *clibase.Cmd {
122
121
123
122
buildParams ,err := prepWorkspaceBuild (inv ,client ,prepWorkspaceBuildArgs {
124
123
Template :template ,
125
- ExistingParams : []codersdk.Parameter {},
126
- ParameterFile :parameterFile ,
127
124
RichParameterFile :richParameterFile ,
128
125
NewWorkspaceName :workspaceName ,
129
126
})
@@ -151,7 +148,6 @@ func (r *RootCmd) create() *clibase.Cmd {
151
148
Name :workspaceName ,
152
149
AutostartSchedule :schedSpec ,
153
150
TTLMillis :ttlMillis ,
154
- ParameterValues :buildParams .parameters ,
155
151
RichParameterValues :buildParams .richParameters ,
156
152
})
157
153
if err != nil {
@@ -175,12 +171,6 @@ func (r *RootCmd) create() *clibase.Cmd {
175
171
Description :"Specify a template name." ,
176
172
Value :clibase .StringOf (& templateName ),
177
173
},
178
- clibase.Option {
179
- Flag :"parameter-file" ,
180
- Env :"CODER_PARAMETER_FILE" ,
181
- Description :"Specify a file path with parameter values." ,
182
- Value :clibase .StringOf (& parameterFile ),
183
- },
184
174
clibase.Option {
185
175
Flag :"rich-parameter-file" ,
186
176
Env :"CODER_RICH_PARAMETER_FILE" ,
@@ -207,8 +197,6 @@ func (r *RootCmd) create() *clibase.Cmd {
207
197
208
198
type prepWorkspaceBuildArgs struct {
209
199
Template codersdk.Template
210
- ExistingParams []codersdk.Parameter
211
- ParameterFile string
212
200
ExistingRichParams []codersdk.WorkspaceBuildParameter
213
201
RichParameterFile string
214
202
NewWorkspaceName string
@@ -218,8 +206,6 @@ type prepWorkspaceBuildArgs struct {
218
206
}
219
207
220
208
type buildParameters struct {
221
- // Parameters contains legacy parameters stored in /parameters.
222
- parameters []codersdk.CreateParameterRequest
223
209
// Rich parameters stores values for build parameters annotated with description, icon, type, etc.
224
210
richParameters []codersdk.WorkspaceBuildParameter
225
211
}
@@ -229,90 +215,19 @@ type buildParameters struct {
229
215
func prepWorkspaceBuild (inv * clibase.Invocation ,client * codersdk.Client ,args prepWorkspaceBuildArgs ) (* buildParameters ,error ) {
230
216
ctx := inv .Context ()
231
217
232
- var useRichParameters bool
233
- if len (args .ExistingRichParams )> 0 && len (args .RichParameterFile )> 0 {
234
- useRichParameters = true
235
- }
236
-
237
- var useLegacyParameters bool
238
- if len (args .ExistingParams )> 0 || len (args .ParameterFile )> 0 {
239
- useLegacyParameters = true
240
- }
241
-
242
- if useRichParameters && useLegacyParameters {
243
- return nil ,xerrors .Errorf ("Rich parameters can't be used together with legacy parameters." )
244
- }
245
-
246
218
templateVersion ,err := client .TemplateVersion (ctx ,args .Template .ActiveVersionID )
247
219
if err != nil {
248
220
return nil ,err
249
221
}
250
222
251
- // Legacy parameters
252
- parameterSchemas ,err := client .TemplateVersionSchema (ctx ,templateVersion .ID )
253
- if err != nil {
254
- return nil ,err
255
- }
256
-
257
- // parameterMapFromFile can be nil if parameter file is not specified
258
- var parameterMapFromFile map [string ]string
259
- useParamFile := false
260
- if args .ParameterFile != "" {
261
- useParamFile = true
262
- _ ,_ = fmt .Fprintln (inv .Stdout ,cliui .Styles .Paragraph .Render ("Attempting to read the variables from the parameter file." )+ "\r \n " )
263
- parameterMapFromFile ,err = createParameterMapFromFile (args .ParameterFile )
264
- if err != nil {
265
- return nil ,err
266
- }
267
- }
268
- disclaimerPrinted := false
269
- legacyParameters := make ([]codersdk.CreateParameterRequest ,0 )
270
- PromptParamLoop:
271
- for _ ,parameterSchema := range parameterSchemas {
272
- if ! parameterSchema .AllowOverrideSource {
273
- continue
274
- }
275
- if ! disclaimerPrinted {
276
- _ ,_ = fmt .Fprintln (inv .Stdout ,cliui .Styles .Paragraph .Render ("This template has customizable parameters. Values can be changed after create, but may have unintended side effects (like data loss)." )+ "\r \n " )
277
- disclaimerPrinted = true
278
- }
279
-
280
- // Param file is all or nothing
281
- if ! useParamFile {
282
- for _ ,e := range args .ExistingParams {
283
- if e .Name == parameterSchema .Name {
284
- // If the param already exists, we do not need to prompt it again.
285
- // The workspace scope will reuse params for each build.
286
- continue PromptParamLoop
287
- }
288
- }
289
- }
290
-
291
- parameterValue ,err := getParameterValueFromMapOrInput (inv ,parameterMapFromFile ,parameterSchema )
292
- if err != nil {
293
- return nil ,err
294
- }
295
-
296
- legacyParameters = append (legacyParameters , codersdk.CreateParameterRequest {
297
- Name :parameterSchema .Name ,
298
- SourceValue :parameterValue ,
299
- SourceScheme :codersdk .ParameterSourceSchemeData ,
300
- DestinationScheme :parameterSchema .DefaultDestinationScheme ,
301
- })
302
- }
303
-
304
- if disclaimerPrinted {
305
- _ ,_ = fmt .Fprintln (inv .Stdout )
306
- }
307
-
308
223
// Rich parameters
309
224
templateVersionParameters ,err := client .TemplateVersionRichParameters (inv .Context (),templateVersion .ID )
310
225
if err != nil {
311
226
return nil ,xerrors .Errorf ("get template version rich parameters: %w" ,err )
312
227
}
313
228
314
- parameterMapFromFile = map [string ]string {}
315
- useParamFile = false
229
+ parameterMapFromFile : =map [string ]string {}
230
+ useParamFile : =false
316
231
if args .RichParameterFile != "" {
317
232
useParamFile = true
318
233
_ ,_ = fmt .Fprintln (inv .Stdout ,cliui .Styles .Paragraph .Render ("Attempting to read the variables from the rich parameter file." )+ "\r \n " )
@@ -321,7 +236,7 @@ PromptParamLoop:
321
236
return nil ,err
322
237
}
323
238
}
324
- disclaimerPrinted = false
239
+ disclaimerPrinted : =false
325
240
richParameters := make ([]codersdk.WorkspaceBuildParameter ,0 )
326
241
PromptRichParamLoop:
327
242
for _ ,templateVersionParameter := range templateVersionParameters {
@@ -379,7 +294,6 @@ PromptRichParamLoop:
379
294
// Run a dry-run with the given parameters to check correctness
380
295
dryRun ,err := client .CreateTemplateVersionDryRun (inv .Context (),templateVersion .ID , codersdk.CreateTemplateVersionDryRunRequest {
381
296
WorkspaceName :args .NewWorkspaceName ,
382
- ParameterValues :legacyParameters ,
383
297
RichParameterValues :richParameters ,
384
298
})
385
299
if err != nil {
@@ -421,7 +335,6 @@ PromptRichParamLoop:
421
335
}
422
336
423
337
return & buildParameters {
424
- parameters :legacyParameters ,
425
338
richParameters :richParameters ,
426
339
},nil
427
340
}