Resolve returns the value of the parameter. It does not do any validation, and is meant for use with the new dynamic parameters code path.
(p TemplateVersionParameter, v *WorkspaceBuildParameter)
| 223 | // Resolve returns the value of the parameter. It does not do any validation, |
| 224 | // and is meant for use with the new dynamic parameters code path. |
| 225 | func (r *ParameterResolver) Resolve(p TemplateVersionParameter, v *WorkspaceBuildParameter) string { |
| 226 | prevV := r.findLastValue(p) |
| 227 | // First, the provided value |
| 228 | resolvedValue := v |
| 229 | // Second, previous value if not ephemeral |
| 230 | if resolvedValue == nil && !p.Ephemeral { |
| 231 | resolvedValue = prevV |
| 232 | } |
| 233 | // Last, default value |
| 234 | if resolvedValue == nil { |
| 235 | resolvedValue = &WorkspaceBuildParameter{ |
| 236 | Name: p.Name, |
| 237 | Value: p.DefaultValue, |
| 238 | } |
| 239 | } |
| 240 | return resolvedValue.Value |
| 241 | } |
| 242 | |
| 243 | // findLastValue finds the value from the previous build and returns it, or nil if the parameter had no value in the |
| 244 | // last build. |
nothing calls this directly
no test coverage detected