Skip to content

Commit c0fe21b

Browse files
committed
lib/resourcebuilder/apiext: Error on unrecognized CRD version
Error for unrecognized CRD version, because that will be easier to debug than trying to figure out why a CRD manifest is being silently ignored by the CVO (which is what we've done since the version switch landed in 4ee7b07, Add apiextensions.k8s.io/v1 support for CRDs, 2019-10-22, #259).
1 parent 8b9931b commit c0fe21b

File tree

1 file changed

+10
-7
lines changed

1 file changed

+10
-7
lines changed

lib/resourcebuilder/apiext.go

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package resourcebuilder
22

33
import (
44
"context"
5+
"fmt"
56

67
"k8s.io/klog"
78

@@ -49,25 +50,27 @@ func (b *crdBuilder) Do(ctx context.Context) error {
4950
var err error
5051
var name string
5152

52-
switch crd := crd.(type) {
53+
switch typedCRD := crd.(type) {
5354
case *apiextv1beta1.CustomResourceDefinition:
5455
if b.modifier != nil {
55-
b.modifier(crd)
56+
b.modifier(typedCRD)
5657
}
57-
_, updated, err = resourceapply.ApplyCustomResourceDefinitionV1beta1(b.clientV1beta1, crd)
58+
_, updated, err = resourceapply.ApplyCustomResourceDefinitionV1beta1(b.clientV1beta1, typedCRD)
5859
if err != nil {
5960
return err
6061
}
61-
name = crd.Name
62+
name = typedCRD.Name
6263
case *apiextv1.CustomResourceDefinition:
6364
if b.modifier != nil {
64-
b.modifier(crd)
65+
b.modifier(typedCRD)
6566
}
66-
_, updated, err = resourceapply.ApplyCustomResourceDefinitionV1(b.clientV1, crd)
67+
_, updated, err = resourceapply.ApplyCustomResourceDefinitionV1(b.clientV1, typedCRD)
6768
if err != nil {
6869
return err
6970
}
70-
name = crd.Name
71+
name = typedCRD.Name
72+
default:
73+
return fmt.Errorf("unrecognized CustomResourceDefinition version: %T", crd)
7174
}
7275

7376
if updated {

0 commit comments

Comments
 (0)