Skip to content

Commit 8a46f74

Browse files
Merge pull request #2493 from everettraven/bugfix/crdify-exit
(bugfix): crdify generator returns aggregated error when validations fail
2 parents 04f99ea + 7076620 commit 8a46f74

File tree

1 file changed

+10
-2
lines changed

1 file changed

+10
-2
lines changed

tools/codegen/pkg/crdify/generator.go

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -210,7 +210,9 @@ func (g *generator) genGroupVersion(name string, version generation.APIVersionCo
210210

211211
for _, crdResults := range runResults.CRDValidation {
212212
for _, err := range crdResults.Errors {
213-
result.Errors = append(result.Errors, fmt.Errorf("%s: %w", crdResults.Name, errors.New(err)))
213+
resErr := fmt.Errorf("%s: %w", crdResults.Name, errors.New(err))
214+
result.Errors = append(result.Errors, resErr)
215+
errs = append(errs, resErr)
214216
}
215217

216218
for _, warn := range crdResults.Warnings {
@@ -220,7 +222,9 @@ func (g *generator) genGroupVersion(name string, version generation.APIVersionCo
220222

221223
versionedResultFunc := func(version, property string, compResult validations.ComparisonResult) {
222224
for _, err := range compResult.Errors {
223-
result.Errors = append(result.Errors, fmt.Errorf("(%s) %s - %s: %w", version, property, compResult.Name, errors.New(err)))
225+
resErr := fmt.Errorf("(%s) %s - %s: %w", version, property, compResult.Name, errors.New(err))
226+
result.Errors = append(result.Errors, resErr)
227+
errs = append(errs, resErr)
224228
}
225229

226230
for _, warn := range compResult.Warnings {
@@ -234,6 +238,10 @@ func (g *generator) genGroupVersion(name string, version generation.APIVersionCo
234238
results = append(results, result)
235239
}
236240

241+
if len(errs) > 0 {
242+
return results, kerrors.NewAggregate(errs)
243+
}
244+
237245
return results, nil
238246
}
239247

0 commit comments

Comments
 (0)