in cmd/release/utils/release/releaseinput.go [39:76]
func generateReleaseInput(releaseBranchInput string, overrideNumInput string, hasOverrideNum bool) (string, string, error) {
overrideNum := strings.TrimSpace(overrideNumInput)
if hasOverrideNum && len(overrideNum) == 0 {
return "", "", fmt.Errorf("expected non-empty override number")
}
releaseBranch := strings.TrimSpace(releaseBranchInput)
if len(releaseBranch) == 0 {
return "", "", fmt.Errorf("release branch cannot be an empty string")
}
// Release Branch must be a supported release branch
if isSupported, err := values.IsSupportedReleaseBranch(releaseBranch); !isSupported || err != nil {
if err != nil {
return "", "", fmt.Errorf("checking if supported release branch: %w", err)
}
return "", "", fmt.Errorf("branch %s is not a supported release branch", releaseBranch)
}
// If provided, override number much be greater than or equal to minOverrideNumber. If override number is not
// provided,
var number string
localNum, _, err := values.GetLocalNumber(releaseBranch, defaultReleaseEnv)
if err != nil {
return "", "", fmt.Errorf("determining number: %w", err)
}
if hasOverrideNum {
if strings.Compare(strconv.Itoa(MinNumber), overrideNum) == 1 || strings.Compare(overrideNum, localNum) == 1 {
return "", "", fmt.Errorf("override number %s must between min number %d and local number %s (inclusive)",
overrideNum, MinNumber, localNum)
}
number = overrideNum
} else {
number = localNum
}
return releaseBranch, number, nil
}