()
| 873 | } |
| 874 | |
| 875 | func (b *Builder) getDynamicParameters() (names, values []string, err error) { |
| 876 | lastBuildParameters, err := b.getLastBuildParameters() |
| 877 | if err != nil { |
| 878 | return nil, nil, BuildError{http.StatusInternalServerError, "failed to fetch last build parameters", err} |
| 879 | } |
| 880 | |
| 881 | presetParameterValues, err := b.getPresetParameterValues() |
| 882 | if err != nil { |
| 883 | return nil, nil, BuildError{http.StatusInternalServerError, "failed to fetch preset parameter values", err} |
| 884 | } |
| 885 | |
| 886 | render, err := b.getDynamicParameterRenderer() |
| 887 | if err != nil { |
| 888 | return nil, nil, BuildError{http.StatusInternalServerError, "failed to get dynamic parameter renderer", err} |
| 889 | } |
| 890 | |
| 891 | firstBuild, err := b.firstBuild() |
| 892 | if err != nil { |
| 893 | return nil, nil, BuildError{http.StatusInternalServerError, "failed to check if first build", err} |
| 894 | } |
| 895 | |
| 896 | buildValues, err := dynamicparameters.ResolveParameters(b.ctx, b.workspace.OwnerID, render, firstBuild, |
| 897 | lastBuildParameters, |
| 898 | b.richParameterValues, |
| 899 | presetParameterValues) |
| 900 | if err != nil { |
| 901 | return nil, nil, BuildError{http.StatusBadRequest, "resolve parameters", err} |
| 902 | } |
| 903 | |
| 904 | names = make([]string, 0, len(buildValues)) |
| 905 | values = make([]string, 0, len(buildValues)) |
| 906 | for k, v := range buildValues { |
| 907 | names = append(names, k) |
| 908 | values = append(values, v) |
| 909 | } |
| 910 | |
| 911 | return names, values, nil |
| 912 | } |
| 913 | |
| 914 | func (b *Builder) getClassicParameters() (names, values []string, err error) { |
| 915 | templateVersionParameters, err := b.getTemplateVersionParameters() |
no test coverage detected