refactor(rollback): validate description length before cluster reachability check

Move description length validation to the beginning of Run(), before
IsReachable(), so programmatic callers get an immediate validation
error instead of a potentially misleading cluster reachability failure.

Signed-off-by: MrJack <36191829+biagiopietro@users.noreply.github.com>
pull/31580/head
MrJack 5 months ago
parent 3bf13c2cb3
commit 60e725f041

@ -77,6 +77,10 @@ func NewRollback(cfg *Configuration) *Rollback {
// Run executes 'helm rollback' against the given release.
func (r *Rollback) Run(name string) error {
if descLen := utf8.RuneCountInString(r.Description); descLen > MaxDescriptionLength {
return fmt.Errorf("description must be %d characters or less, got %d", MaxDescriptionLength, descLen)
}
if err := r.cfg.KubeClient.IsReachable(); err != nil {
return err
}
@ -121,10 +125,6 @@ func (r *Rollback) prepareRollback(name string) (*release.Release, *release.Rele
return nil, nil, false, errInvalidRevision
}
if descLen := utf8.RuneCountInString(r.Description); descLen > MaxDescriptionLength {
return nil, nil, false, fmt.Errorf("description must be %d characters or less, got %d", MaxDescriptionLength, descLen)
}
currentReleasei, err := r.cfg.Releases.Last(name)
if err != nil {
return nil, nil, false, err

Loading…
Cancel
Save