mirror of
https://github.com/coder/coder.git
synced 2026-09-24 15:04:27 +08:00
chore(cli): rename build options to ephemeral parameters in cli (#15030)
This PR aims to rename `build-option` to `ephemeral-parameters` based on #10488 conversation. `build-option` has been renamed `ephemeral-parameter` and can be used to define a value for an ephemeral parameter in the template. `build-options` has been renamed `prompt-ephemeral-parameters` and can be used to prompt the user to put values for the ephemeral parameters in the template. --------- Co-authored-by: Mathias Fredriksson <mafredri@gmail.com> Co-authored-by: EdwardAngert <17991901+EdwardAngert@users.noreply.github.com> Co-authored-by: defelmnq <yvincent@coder.com>
This commit is contained in:
co-authored by
Mathias Fredriksson
EdwardAngert
defelmnq
parent
512cbf1682
commit
02f6203dc7
+16
-16
@@ -29,10 +29,10 @@ type ParameterResolver struct {
|
||||
richParameters []codersdk.WorkspaceBuildParameter
|
||||
richParametersDefaults map[string]string
|
||||
richParametersFile map[string]string
|
||||
buildOptions []codersdk.WorkspaceBuildParameter
|
||||
ephemeralParameters []codersdk.WorkspaceBuildParameter
|
||||
|
||||
promptRichParameters bool
|
||||
promptBuildOptions bool
|
||||
promptRichParameters bool
|
||||
promptEphemeralParameters bool
|
||||
}
|
||||
|
||||
func (pr *ParameterResolver) WithLastBuildParameters(params []codersdk.WorkspaceBuildParameter) *ParameterResolver {
|
||||
@@ -50,8 +50,8 @@ func (pr *ParameterResolver) WithRichParameters(params []codersdk.WorkspaceBuild
|
||||
return pr
|
||||
}
|
||||
|
||||
func (pr *ParameterResolver) WithBuildOptions(params []codersdk.WorkspaceBuildParameter) *ParameterResolver {
|
||||
pr.buildOptions = params
|
||||
func (pr *ParameterResolver) WithEphemeralParameters(params []codersdk.WorkspaceBuildParameter) *ParameterResolver {
|
||||
pr.ephemeralParameters = params
|
||||
return pr
|
||||
}
|
||||
|
||||
@@ -75,8 +75,8 @@ func (pr *ParameterResolver) WithPromptRichParameters(promptRichParameters bool)
|
||||
return pr
|
||||
}
|
||||
|
||||
func (pr *ParameterResolver) WithPromptBuildOptions(promptBuildOptions bool) *ParameterResolver {
|
||||
pr.promptBuildOptions = promptBuildOptions
|
||||
func (pr *ParameterResolver) WithPromptEphemeralParameters(promptEphemeralParameters bool) *ParameterResolver {
|
||||
pr.promptEphemeralParameters = promptEphemeralParameters
|
||||
return pr
|
||||
}
|
||||
|
||||
@@ -128,16 +128,16 @@ nextRichParameter:
|
||||
resolved = append(resolved, richParameter)
|
||||
}
|
||||
|
||||
nextBuildOption:
|
||||
for _, buildOption := range pr.buildOptions {
|
||||
nextEphemeralParameter:
|
||||
for _, ephemeralParameter := range pr.ephemeralParameters {
|
||||
for i, r := range resolved {
|
||||
if r.Name == buildOption.Name {
|
||||
resolved[i].Value = buildOption.Value
|
||||
continue nextBuildOption
|
||||
if r.Name == ephemeralParameter.Name {
|
||||
resolved[i].Value = ephemeralParameter.Value
|
||||
continue nextEphemeralParameter
|
||||
}
|
||||
}
|
||||
|
||||
resolved = append(resolved, buildOption)
|
||||
resolved = append(resolved, ephemeralParameter)
|
||||
}
|
||||
return resolved
|
||||
}
|
||||
@@ -209,8 +209,8 @@ func (pr *ParameterResolver) verifyConstraints(resolved []codersdk.WorkspaceBuil
|
||||
return templateVersionParametersNotFound(r.Name, templateVersionParameters)
|
||||
}
|
||||
|
||||
if tvp.Ephemeral && !pr.promptBuildOptions && findWorkspaceBuildParameter(tvp.Name, pr.buildOptions) == nil {
|
||||
return xerrors.Errorf("ephemeral parameter %q can be used only with --build-options or --build-option flag", r.Name)
|
||||
if tvp.Ephemeral && !pr.promptEphemeralParameters && findWorkspaceBuildParameter(tvp.Name, pr.ephemeralParameters) == nil {
|
||||
return xerrors.Errorf("ephemeral parameter %q can be used only with --prompt-ephemeral-parameters or --ephemeral-parameter flag", r.Name)
|
||||
}
|
||||
|
||||
if !tvp.Mutable && action != WorkspaceCreate {
|
||||
@@ -231,7 +231,7 @@ func (pr *ParameterResolver) resolveWithInput(resolved []codersdk.WorkspaceBuild
|
||||
firstTimeUse := pr.isFirstTimeUse(tvp.Name)
|
||||
promptParameterOption := pr.isLastBuildParameterInvalidOption(tvp)
|
||||
|
||||
if (tvp.Ephemeral && pr.promptBuildOptions) ||
|
||||
if (tvp.Ephemeral && pr.promptEphemeralParameters) ||
|
||||
(action == WorkspaceCreate && tvp.Required) ||
|
||||
(action == WorkspaceCreate && !tvp.Ephemeral) ||
|
||||
(action == WorkspaceUpdate && promptParameterOption) ||
|
||||
|
||||
Reference in New Issue
Block a user