mirror of
https://github.com/coder/coder.git
synced 2025-07-06 15:41:45 +00:00
chore: disable parameter validatation for dynamic params for all transitions (#17926)
Dynamic params skip parameter validation in coder/coder. This is because conditional parameters cannot be validated with the static parameters in the database.
This commit is contained in:
@ -338,6 +338,7 @@ func (api *API) postWorkspaceBuilds(rw http.ResponseWriter, r *http.Request) {
|
||||
RichParameterValues(createBuild.RichParameterValues).
|
||||
LogLevel(string(createBuild.LogLevel)).
|
||||
DeploymentValues(api.Options.DeploymentValues).
|
||||
Experiments(api.Experiments).
|
||||
TemplateVersionPresetID(createBuild.TemplateVersionPresetID)
|
||||
|
||||
var (
|
||||
@ -383,6 +384,22 @@ func (api *API) postWorkspaceBuilds(rw http.ResponseWriter, r *http.Request) {
|
||||
builder = builder.State(createBuild.ProvisionerState)
|
||||
}
|
||||
|
||||
// Only defer to dynamic parameters if the experiment is enabled.
|
||||
if api.Experiments.Enabled(codersdk.ExperimentDynamicParameters) {
|
||||
if createBuild.EnableDynamicParameters != nil {
|
||||
// Explicit opt-in
|
||||
builder = builder.DynamicParameters(*createBuild.EnableDynamicParameters)
|
||||
}
|
||||
} else {
|
||||
if createBuild.EnableDynamicParameters != nil {
|
||||
api.Logger.Warn(ctx, "ignoring dynamic parameter field sent by request, the experiment is not enabled",
|
||||
slog.F("field", *createBuild.EnableDynamicParameters),
|
||||
slog.F("user", apiKey.UserID.String()),
|
||||
slog.F("transition", string(createBuild.Transition)),
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
workspaceBuild, provisionerJob, provisionerDaemons, err = builder.Build(
|
||||
ctx,
|
||||
tx,
|
||||
|
Reference in New Issue
Block a user