fix: use dynamic parameter resolution in the cli (#21734)

Uses dynamic parameters EvaluateTemplateVersion vs TemplateVersionRichParameters to determine initial parameter state.

Closes https://github.com/coder/coder/issues/19879
This commit is contained in:
Steven Masley
2026-02-03 14:10:49 -06:00
committed by GitHub
parent 6759b51cd6
commit b1e18f2398
9 changed files with 498 additions and 20 deletions
+5 -1
View File
@@ -69,7 +69,7 @@ func RichParameter(inv *serpent.Invocation, templateVersionParameter codersdk.Te
}
default:
text := "Enter a value"
if !templateVersionParameter.Required {
if defaultValue != "" {
text += fmt.Sprintf(" (default: %q)", defaultValue)
}
text += ":"
@@ -77,6 +77,10 @@ func RichParameter(inv *serpent.Invocation, templateVersionParameter codersdk.Te
value, err = Prompt(inv, PromptOptions{
Text: Bold(text),
Validate: func(value string) error {
// If empty, the default value will be used (if available).
if value == "" && defaultValue != "" {
value = defaultValue
}
return validateRichPrompt(value, templateVersionParameter)
},
})