Skip to content

Commit 6818042

Browse files
committed
Replace all usages of v1alpha1/APIBindings with v1alpha2
Signed-off-by: Marko Mudrinić <[email protected]> On-behalf-of: @SAP [email protected]
1 parent 87c0bee commit 6818042

File tree

72 files changed

+871
-881
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

72 files changed

+871
-881
lines changed

cli/pkg/bind/plugin/bind.go

+14-14
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ import (
3535

3636
"github.com/kcp-dev/kcp/cli/pkg/base"
3737
pluginhelpers "github.com/kcp-dev/kcp/cli/pkg/helpers"
38-
apisv1alpha1 "github.com/kcp-dev/kcp/sdk/apis/apis/v1alpha1"
38+
apisv1alpha2 "github.com/kcp-dev/kcp/sdk/apis/apis/v1alpha2"
3939
kcpclientset "github.com/kcp-dev/kcp/sdk/client/clientset/versioned/cluster"
4040
)
4141

@@ -55,9 +55,9 @@ type BindOptions struct {
5555
RejectedPermissionClaims []string
5656

5757
// acceptedPermissionClaims is the parsed list of accepted permission claims for the APIBinding parsed from AcceptedPermissionClaims.
58-
acceptedPermissionClaims []apisv1alpha1.AcceptablePermissionClaim
58+
acceptedPermissionClaims []apisv1alpha2.AcceptablePermissionClaim
5959
// rejectedPermissionClaims is the parsed list of rejected permission claims for the APIBinding parsed from RejectedPermissionClaims.
60-
rejectedPermissionClaims []apisv1alpha1.AcceptablePermissionClaim
60+
rejectedPermissionClaims []apisv1alpha2.AcceptablePermissionClaim
6161
}
6262

6363
// NewBindOptions returns new BindOptions.
@@ -156,13 +156,13 @@ func (b *BindOptions) Run(ctx context.Context) error {
156156
return fmt.Errorf("current URL %q does not point to workspace", config.Host)
157157
}
158158

159-
binding := &apisv1alpha1.APIBinding{
159+
binding := &apisv1alpha2.APIBinding{
160160
ObjectMeta: metav1.ObjectMeta{
161161
Name: apiBindingName,
162162
},
163-
Spec: apisv1alpha1.APIBindingSpec{
164-
Reference: apisv1alpha1.BindingReference{
165-
Export: &apisv1alpha1.ExportBindingReference{
163+
Spec: apisv1alpha2.APIBindingSpec{
164+
Reference: apisv1alpha2.BindingReference{
165+
Export: &apisv1alpha2.ExportBindingReference{
166166
Path: path.String(),
167167
Name: apiExportName,
168168
},
@@ -182,7 +182,7 @@ func (b *BindOptions) Run(ctx context.Context) error {
182182
return err
183183
}
184184

185-
createdBinding, err := kcpclient.Cluster(currentClusterName).ApisV1alpha1().APIBindings().Create(ctx, binding, metav1.CreateOptions{})
185+
createdBinding, err := kcpclient.Cluster(currentClusterName).ApisV1alpha2().APIBindings().Create(ctx, binding, metav1.CreateOptions{})
186186
if err != nil {
187187
return err
188188
}
@@ -192,13 +192,13 @@ func (b *BindOptions) Run(ctx context.Context) error {
192192
}
193193

194194
// wait for phase to be bound
195-
if createdBinding.Status.Phase != apisv1alpha1.APIBindingPhaseBound {
195+
if createdBinding.Status.Phase != apisv1alpha2.APIBindingPhaseBound {
196196
if err := wait.PollUntilContextTimeout(ctx, time.Millisecond*500, b.BindWaitTimeout, true, func(ctx context.Context) (done bool, err error) {
197-
createdBinding, err := kcpclient.Cluster(currentClusterName).ApisV1alpha1().APIBindings().Get(ctx, binding.Name, metav1.GetOptions{})
197+
createdBinding, err := kcpclient.Cluster(currentClusterName).ApisV1alpha2().APIBindings().Get(ctx, binding.Name, metav1.GetOptions{})
198198
if err != nil {
199199
return false, err
200200
}
201-
if createdBinding.Status.Phase == apisv1alpha1.APIBindingPhaseBound {
201+
if createdBinding.Status.Phase == apisv1alpha2.APIBindingPhaseBound {
202202
return true, nil
203203
}
204204
return false, nil
@@ -220,7 +220,7 @@ func (b *BindOptions) parsePermissionClaim(claim string, accepted bool) error {
220220
return fmt.Errorf("invalid permission claim %q", claim)
221221
}
222222

223-
parsedClaim := apisv1alpha1.AcceptablePermissionClaim{}
223+
parsedClaim := apisv1alpha2.AcceptablePermissionClaim{}
224224
resource := claimParts[0]
225225
group := claimParts[1]
226226
if group == "core" {
@@ -230,9 +230,9 @@ func (b *BindOptions) parsePermissionClaim(claim string, accepted bool) error {
230230
parsedClaim.Group = group
231231
parsedClaim.Resource = resource
232232
if accepted {
233-
parsedClaim.State = apisv1alpha1.ClaimAccepted
233+
parsedClaim.State = apisv1alpha2.ClaimAccepted
234234
} else {
235-
parsedClaim.State = apisv1alpha1.ClaimRejected
235+
parsedClaim.State = apisv1alpha2.ClaimRejected
236236
}
237237
// TODO(mjudeikis): Once we add support for selectors/
238238
parsedClaim.All = true

cli/pkg/claims/plugin/claims.go

+4-4
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ import (
3434

3535
"github.com/kcp-dev/kcp/cli/pkg/base"
3636
pluginhelpers "github.com/kcp-dev/kcp/cli/pkg/helpers"
37-
apiv1alpha1 "github.com/kcp-dev/kcp/sdk/apis/apis/v1alpha1"
37+
apiv1alpha2 "github.com/kcp-dev/kcp/sdk/apis/apis/v1alpha2"
3838
kcpclientset "github.com/kcp-dev/kcp/sdk/client/clientset/versioned/cluster"
3939
)
4040

@@ -104,16 +104,16 @@ func (g *GetAPIBindingOptions) Run(ctx context.Context) error {
104104
}
105105

106106
allErrors := []error{}
107-
apibindings := []apiv1alpha1.APIBinding{}
107+
apibindings := []apiv1alpha2.APIBinding{}
108108
// List permission claims for all bindings in current workspace.
109109
if g.allBindings {
110-
bindings, err := kcpClusterClient.Cluster(currentClusterName).ApisV1alpha1().APIBindings().List(ctx, metav1.ListOptions{})
110+
bindings, err := kcpClusterClient.Cluster(currentClusterName).ApisV1alpha2().APIBindings().List(ctx, metav1.ListOptions{})
111111
if err != nil {
112112
return fmt.Errorf("error listing apibindings in %q workspace: %w", currentClusterName, err)
113113
}
114114
apibindings = append(apibindings, bindings.Items...)
115115
} else {
116-
binding, err := kcpClusterClient.Cluster(currentClusterName).ApisV1alpha1().APIBindings().Get(ctx, g.APIBindingName, metav1.GetOptions{})
116+
binding, err := kcpClusterClient.Cluster(currentClusterName).ApisV1alpha2().APIBindings().Get(ctx, g.APIBindingName, metav1.GetOptions{})
117117
if err != nil {
118118
return fmt.Errorf("error finding apibinding: %w", err)
119119
}

cli/pkg/workspace/plugin/use.go

+6-6
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ import (
3838

3939
"github.com/kcp-dev/kcp/cli/pkg/base"
4040
pluginhelpers "github.com/kcp-dev/kcp/cli/pkg/helpers"
41-
apisv1alpha1 "github.com/kcp-dev/kcp/sdk/apis/apis/v1alpha1"
41+
apisv1alpha2 "github.com/kcp-dev/kcp/sdk/apis/apis/v1alpha2"
4242
"github.com/kcp-dev/kcp/sdk/apis/core"
4343
tenancyv1alpha1 "github.com/kcp-dev/kcp/sdk/apis/tenancy/v1alpha1"
4444
kcpclientset "github.com/kcp-dev/kcp/sdk/client/clientset/versioned/cluster"
@@ -63,7 +63,7 @@ type UseWorkspaceOptions struct {
6363

6464
// for testing
6565
modifyConfig func(configAccess clientcmd.ConfigAccess, newConfig *clientcmdapi.Config) error
66-
getAPIBindings func(ctx context.Context, kcpClusterClient kcpclientset.ClusterInterface, host string) ([]apisv1alpha1.APIBinding, error)
66+
getAPIBindings func(ctx context.Context, kcpClusterClient kcpclientset.ClusterInterface, host string) ([]apisv1alpha2.APIBinding, error)
6767
userHomeDir func() (string, error)
6868
}
6969

@@ -420,13 +420,13 @@ func (o *UseWorkspaceOptions) parseCurrentLogicalCluster() (*url.URL, *logicalcl
420420
}
421421

422422
// getAPIBindings retrieves APIBindings within the workspace.
423-
func getAPIBindings(ctx context.Context, kcpClusterClient kcpclientset.ClusterInterface, host string) ([]apisv1alpha1.APIBinding, error) {
423+
func getAPIBindings(ctx context.Context, kcpClusterClient kcpclientset.ClusterInterface, host string) ([]apisv1alpha2.APIBinding, error) {
424424
_, clusterName, err := pluginhelpers.ParseClusterURL(host)
425425
if err != nil {
426426
return nil, err
427427
}
428428

429-
apiBindings, err := kcpClusterClient.Cluster(clusterName).ApisV1alpha1().APIBindings().List(ctx, metav1.ListOptions{})
429+
apiBindings, err := kcpClusterClient.Cluster(clusterName).ApisV1alpha2().APIBindings().List(ctx, metav1.ListOptions{})
430430
// If the user is not allowed to view APIBindings in the workspace, there's nothing to show.
431431
if apierrors.IsForbidden(err) {
432432
return nil, nil
@@ -439,7 +439,7 @@ func getAPIBindings(ctx context.Context, kcpClusterClient kcpclientset.ClusterIn
439439
}
440440

441441
// findUnresolvedPermissionClaims finds and reports any APIBindings that do not specify permission claims matching those on the target APIExport.
442-
func findUnresolvedPermissionClaims(out io.Writer, apiBindings []apisv1alpha1.APIBinding) error {
442+
func findUnresolvedPermissionClaims(out io.Writer, apiBindings []apisv1alpha2.APIBinding) error {
443443
for _, binding := range apiBindings {
444444
for _, exportedClaim := range binding.Status.ExportPermissionClaims {
445445
var found, ack bool
@@ -448,7 +448,7 @@ func findUnresolvedPermissionClaims(out io.Writer, apiBindings []apisv1alpha1.AP
448448
continue
449449
}
450450
found = true
451-
ack = (specClaim.State == apisv1alpha1.ClaimAccepted) || specClaim.State == apisv1alpha1.ClaimRejected
451+
ack = (specClaim.State == apisv1alpha2.ClaimAccepted) || specClaim.State == apisv1alpha2.ClaimRejected
452452
}
453453
if !found {
454454
fmt.Fprintf(out, "Warning: claim for %s exported but not specified on APIBinding %s\nAdd this claim to the APIBinding's Spec.\n", exportedClaim.String(), binding.Name)

cli/pkg/workspace/plugin/use_test.go

+31-31
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ import (
3737
kcptesting "github.com/kcp-dev/client-go/third_party/k8s.io/client-go/testing"
3838
"github.com/kcp-dev/logicalcluster/v3"
3939

40-
apisv1alpha1 "github.com/kcp-dev/kcp/sdk/apis/apis/v1alpha1"
40+
apisv1alpha2 "github.com/kcp-dev/kcp/sdk/apis/apis/v1alpha2"
4141
"github.com/kcp-dev/kcp/sdk/apis/core"
4242
corev1alpha1 "github.com/kcp-dev/kcp/sdk/apis/core/v1alpha1"
4343
tenancyv1alpha1 "github.com/kcp-dev/kcp/sdk/apis/tenancy/v1alpha1"
@@ -68,7 +68,7 @@ func TestUse(t *testing.T) {
6868
discovery map[logicalcluster.Path][]*metav1.APIResourceList
6969
discoveryErrors map[logicalcluster.Path]error
7070
unready map[logicalcluster.Path]map[string]bool // unready workspaces
71-
apiBindings []apisv1alpha1.APIBinding // APIBindings that exist in the destination workspace, if any
71+
apiBindings []apisv1alpha2.APIBinding // APIBindings that exist in the destination workspace, if any
7272
destination string // workspace set to 'current' at the end of execution
7373
short bool
7474

@@ -468,9 +468,9 @@ func TestUse(t *testing.T) {
468468
param: "bar",
469469
expected: NewKubeconfig().WithKcpCurrent("root:foo:bar").WithKcpPrevious("root:foo").Build(),
470470
destination: "root:foo:bar",
471-
apiBindings: []apisv1alpha1.APIBinding{
471+
apiBindings: []apisv1alpha2.APIBinding{
472472
newBindingBuilder("a").
473-
WithPermissionClaim("test.kcp.io", "test", "abcdef", apisv1alpha1.ClaimAccepted).
473+
WithPermissionClaim("test.kcp.io", "test", "abcdef", apisv1alpha2.ClaimAccepted).
474474
WithExportClaim("test.kcp.io", "test", "abcdef").
475475
Build(),
476476
},
@@ -486,7 +486,7 @@ func TestUse(t *testing.T) {
486486
param: "bar",
487487
expected: NewKubeconfig().WithKcpCurrent("root:foo:bar").WithKcpPrevious("root:foo").Build(),
488488
destination: "root:foo:bar",
489-
apiBindings: []apisv1alpha1.APIBinding{
489+
apiBindings: []apisv1alpha2.APIBinding{
490490
newBindingBuilder("a").
491491
WithPermissionClaim("test.kcp.io", "test", "abcdef", "").
492492
WithExportClaim("test.kcp.io", "test", "abcdef").
@@ -508,9 +508,9 @@ func TestUse(t *testing.T) {
508508
param: "~",
509509
expected: NewKubeconfig().WithKcpCurrent(homeWorkspace.String()).WithKcpPrevious("root:foo").Build(),
510510
destination: homeWorkspace.String(),
511-
apiBindings: []apisv1alpha1.APIBinding{
511+
apiBindings: []apisv1alpha2.APIBinding{
512512
newBindingBuilder("a").
513-
WithPermissionClaim("test.kcp.io", "test", "abcdef", apisv1alpha1.ClaimAccepted).
513+
WithPermissionClaim("test.kcp.io", "test", "abcdef", apisv1alpha2.ClaimAccepted).
514514
WithExportClaim("test.kcp.io", "test", "abcdef").
515515
WithExportClaim("", "configmaps", "").
516516
Build(),
@@ -530,9 +530,9 @@ func TestUse(t *testing.T) {
530530
param: "-",
531531
expected: NewKubeconfig().WithKcpCurrent("root:foo:bar").WithKcpPrevious("root:foo").Build(),
532532
destination: "root:foo:bar",
533-
apiBindings: []apisv1alpha1.APIBinding{
533+
apiBindings: []apisv1alpha2.APIBinding{
534534
newBindingBuilder("a").
535-
WithPermissionClaim("test.kcp.io", "test", "abcdef", apisv1alpha1.ClaimAccepted).
535+
WithPermissionClaim("test.kcp.io", "test", "abcdef", apisv1alpha2.ClaimAccepted).
536536
WithExportClaim("test.kcp.io", "test", "abcdef").
537537
WithExportClaim("", "configmaps", "").
538538
Build(),
@@ -553,9 +553,9 @@ func TestUse(t *testing.T) {
553553
param: "bar",
554554
expected: NewKubeconfig().WithKcpCurrent("root:foo:bar").WithKcpPrevious("root:foo").Build(),
555555
destination: "root:foo:bar",
556-
apiBindings: []apisv1alpha1.APIBinding{
556+
apiBindings: []apisv1alpha2.APIBinding{
557557
newBindingBuilder("a").
558-
WithPermissionClaim("test.kcp.io", "test", "abcdef", apisv1alpha1.ClaimRejected).
558+
WithPermissionClaim("test.kcp.io", "test", "abcdef", apisv1alpha2.ClaimRejected).
559559
WithExportClaim("test.kcp.io", "test", "abcdef").
560560
Build(),
561561
},
@@ -573,9 +573,9 @@ func TestUse(t *testing.T) {
573573
param: "bar",
574574
expected: NewKubeconfig().WithKcpCurrent("root:foo:bar").WithKcpPrevious("root:foo").Build(),
575575
destination: "root:foo:bar",
576-
apiBindings: []apisv1alpha1.APIBinding{
576+
apiBindings: []apisv1alpha2.APIBinding{
577577
newBindingBuilder("a").
578-
WithPermissionClaim("test.kcp.io", "test", "abcdef", apisv1alpha1.ClaimAccepted).
578+
WithPermissionClaim("test.kcp.io", "test", "abcdef", apisv1alpha2.ClaimAccepted).
579579
WithExportClaim("test.kcp.io", "test", "abcdef").
580580
Build(),
581581
},
@@ -593,9 +593,9 @@ func TestUse(t *testing.T) {
593593
param: "bar",
594594
expected: NewKubeconfig().WithKcpCurrent("root:foo:bar").WithKcpPrevious("root:foo").Build(),
595595
destination: "root:foo:bar",
596-
apiBindings: []apisv1alpha1.APIBinding{
596+
apiBindings: []apisv1alpha2.APIBinding{
597597
newBindingBuilder("a").
598-
WithPermissionClaim("test.kcp.io", "test", "abcdef", apisv1alpha1.ClaimAccepted).
598+
WithPermissionClaim("test.kcp.io", "test", "abcdef", apisv1alpha2.ClaimAccepted).
599599
WithExportClaim("test.kcp.io", "test", "abcdef").
600600
WithExportClaim("", "configmaps", "").
601601
Build(),
@@ -616,7 +616,7 @@ func TestUse(t *testing.T) {
616616
param: "bar",
617617
expected: NewKubeconfig().WithKcpCurrent("root:foo:bar").WithKcpPrevious("root:foo").Build(),
618618
destination: "root:foo:bar",
619-
apiBindings: []apisv1alpha1.APIBinding{
619+
apiBindings: []apisv1alpha2.APIBinding{
620620
newBindingBuilder("a").
621621
WithPermissionClaim("test.kcp.io", "test", "abcdef", "").
622622
WithExportClaim("test.kcp.io", "test", "abcdef").
@@ -638,7 +638,7 @@ func TestUse(t *testing.T) {
638638
param: "bar",
639639
expected: NewKubeconfig().WithKcpCurrent("root:foo:bar").WithKcpPrevious("root:foo").Build(),
640640
destination: "root:foo:bar",
641-
apiBindings: []apisv1alpha1.APIBinding{
641+
apiBindings: []apisv1alpha2.APIBinding{
642642
newBindingBuilder("a").
643643
WithPermissionClaim("test.kcp.io", "test", "abcdef", "").
644644
WithExportClaim("test.kcp.io", "test", "abcdef").
@@ -662,7 +662,7 @@ func TestUse(t *testing.T) {
662662
param: "bar",
663663
expected: NewKubeconfig().WithKcpCurrent("root:foo:bar").WithKcpPrevious("root:foo").Build(),
664664
destination: "root:foo:bar",
665-
apiBindings: []apisv1alpha1.APIBinding{
665+
apiBindings: []apisv1alpha2.APIBinding{
666666
newBindingBuilder("a").
667667
WithPermissionClaim("test.kcp.io", "test", "abcdef", "").
668668
WithExportClaim("test.kcp.io", "test", "abcdef").
@@ -686,7 +686,7 @@ func TestUse(t *testing.T) {
686686
param: "bar",
687687
expected: NewKubeconfig().WithKcpCurrent("root:foo:bar").WithKcpPrevious("root:foo").Build(),
688688
destination: "root:foo:bar",
689-
apiBindings: []apisv1alpha1.APIBinding{
689+
apiBindings: []apisv1alpha2.APIBinding{
690690
newBindingBuilder("a").
691691
WithExportClaim("test.kcp.io", "test", "abcdef").
692692
WithExportClaim("", "configmaps", "").
@@ -791,14 +791,14 @@ func TestUse(t *testing.T) {
791791
})
792792

793793
// return nothing in the default case.
794-
getAPIBindings := func(ctx context.Context, kcpClusterClient kcpclientset.ClusterInterface, host string) ([]apisv1alpha1.APIBinding, error) {
794+
getAPIBindings := func(ctx context.Context, kcpClusterClient kcpclientset.ClusterInterface, host string) ([]apisv1alpha2.APIBinding, error) {
795795
return nil, nil
796796
}
797797

798798
if tt.destination != "" {
799799
// Add APIBindings to our Clientset if we have them
800800
if len(tt.apiBindings) > 0 {
801-
getAPIBindings = func(ctx context.Context, kcpClusterClient kcpclientset.ClusterInterface, host string) ([]apisv1alpha1.APIBinding, error) {
801+
getAPIBindings = func(ctx context.Context, kcpClusterClient kcpclientset.ClusterInterface, host string) ([]apisv1alpha2.APIBinding, error) {
802802
return tt.apiBindings, nil
803803
}
804804
}
@@ -946,7 +946,7 @@ func (c errorDiscoveryClient) ServerGroups() (*metav1.APIGroupList, error) {
946946
}
947947

948948
type bindingBuilder struct {
949-
apisv1alpha1.APIBinding
949+
apisv1alpha2.APIBinding
950950
}
951951

952952
func newBindingBuilder(name string) *bindingBuilder {
@@ -957,14 +957,14 @@ func newBindingBuilder(name string) *bindingBuilder {
957957
return b
958958
}
959959

960-
func (b *bindingBuilder) WithPermissionClaim(group, resource, identityHash string, state apisv1alpha1.AcceptablePermissionClaimState) *bindingBuilder {
960+
func (b *bindingBuilder) WithPermissionClaim(group, resource, identityHash string, state apisv1alpha2.AcceptablePermissionClaimState) *bindingBuilder {
961961
if len(b.Spec.PermissionClaims) == 0 {
962-
b.Spec.PermissionClaims = make([]apisv1alpha1.AcceptablePermissionClaim, 0)
962+
b.Spec.PermissionClaims = make([]apisv1alpha2.AcceptablePermissionClaim, 0)
963963
}
964964

965-
pc := apisv1alpha1.AcceptablePermissionClaim{
966-
PermissionClaim: apisv1alpha1.PermissionClaim{
967-
GroupResource: apisv1alpha1.GroupResource{
965+
pc := apisv1alpha2.AcceptablePermissionClaim{
966+
PermissionClaim: apisv1alpha2.PermissionClaim{
967+
GroupResource: apisv1alpha2.GroupResource{
968968
Group: group,
969969
Resource: resource,
970970
},
@@ -982,11 +982,11 @@ func (b *bindingBuilder) WithPermissionClaim(group, resource, identityHash strin
982982

983983
func (b *bindingBuilder) WithExportClaim(group, resource, identityHash string) *bindingBuilder {
984984
if len(b.Status.ExportPermissionClaims) == 0 {
985-
b.Status.ExportPermissionClaims = make([]apisv1alpha1.PermissionClaim, 0)
985+
b.Status.ExportPermissionClaims = make([]apisv1alpha2.PermissionClaim, 0)
986986
}
987987

988-
pc := apisv1alpha1.PermissionClaim{
989-
GroupResource: apisv1alpha1.GroupResource{
988+
pc := apisv1alpha2.PermissionClaim{
989+
GroupResource: apisv1alpha2.GroupResource{
990990
Group: group,
991991
Resource: resource,
992992
},
@@ -997,6 +997,6 @@ func (b *bindingBuilder) WithExportClaim(group, resource, identityHash string) *
997997
return b
998998
}
999999

1000-
func (b *bindingBuilder) Build() apisv1alpha1.APIBinding {
1000+
func (b *bindingBuilder) Build() apisv1alpha2.APIBinding {
10011001
return b.APIBinding
10021002
}

config/crds/apis.kcp.io_apibindings.yaml

+2
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@ metadata:
55
controller-gen.kubebuilder.io/version: v0.16.5
66
name: apibindings.apis.kcp.io
77
spec:
8+
conversion:
9+
strategy: None
810
group: apis.kcp.io
911
names:
1012
categories:

config/crds/apis.kcp.io_apibindings.yaml-patch

+7
Original file line numberDiff line numberDiff line change
@@ -2,3 +2,10 @@
22
path: /spec/versions/name=v1alpha1/schema/openAPIV3Schema/properties/spec/properties/reference/oneOf
33
value:
44
- required: ["export"]
5+
6+
# conversion for core resources does not happen via webhooks, but is short-circuited to the
7+
# schema's Convert functions directly, but the CRD still needs to define a conversion.
8+
- op: add
9+
path: /spec/conversion
10+
value:
11+
strategy: None

0 commit comments

Comments
 (0)