MCPcopy Index your code
hub / github.com/coder/coder / ValidateWorkspaceBuildParameters

Function ValidateWorkspaceBuildParameters

codersdk/richparameters.go:41–60  ·  view source on GitHub ↗
(richParameters []TemplateVersionParameter, buildParameters, lastBuildParameters []WorkspaceBuildParameter)

Source from the content-addressed store, hash-verified

39}
40
41func ValidateWorkspaceBuildParameters(richParameters []TemplateVersionParameter, buildParameters, lastBuildParameters []WorkspaceBuildParameter) error {
42 for _, richParameter := range richParameters {
43 buildParameter, foundBuildParameter := findBuildParameter(buildParameters, richParameter.Name)
44 lastBuildParameter, foundLastBuildParameter := findBuildParameter(lastBuildParameters, richParameter.Name)
45
46 if richParameter.Required && !foundBuildParameter && !foundLastBuildParameter {
47 return xerrors.Errorf("workspace build parameter %q is required", richParameter.Name)
48 }
49
50 if !foundBuildParameter && foundLastBuildParameter {
51 continue // previous build parameters have been validated before the last build
52 }
53
54 err := ValidateWorkspaceBuildParameter(richParameter, buildParameter, lastBuildParameter)
55 if err != nil {
56 return err
57 }
58 }
59 return nil
60}
61
62func ValidateWorkspaceBuildParameter(richParameter TemplateVersionParameter, buildParameter *WorkspaceBuildParameter, lastBuildParameter *WorkspaceBuildParameter) error {
63 err := validateBuildParameter(richParameter, buildParameter, lastBuildParameter)

Callers 1

Calls 3

findBuildParameterFunction · 0.85
ErrorfMethod · 0.45

Tested by

no test coverage detected