Skip to content

Commit 39507d9

Browse files
committed
Add resource v1beta2 API
1 parent 16abcd7 commit 39507d9

File tree

50 files changed

+3858
-521
lines changed

Some content is hidden

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

50 files changed

+3858
-521
lines changed

Diff for: api/api-rules/violation_exceptions.list

+5
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,11 @@ API rule violation: names_match,k8s.io/api/resource/v1beta1,DeviceAttribute,IntV
6363
API rule violation: names_match,k8s.io/api/resource/v1beta1,DeviceAttribute,StringValue
6464
API rule violation: names_match,k8s.io/api/resource/v1beta1,DeviceAttribute,VersionValue
6565
API rule violation: names_match,k8s.io/api/resource/v1beta1,NetworkDeviceData,IPs
66+
API rule violation: names_match,k8s.io/api/resource/v1beta2,DeviceAttribute,BoolValue
67+
API rule violation: names_match,k8s.io/api/resource/v1beta2,DeviceAttribute,IntValue
68+
API rule violation: names_match,k8s.io/api/resource/v1beta2,DeviceAttribute,StringValue
69+
API rule violation: names_match,k8s.io/api/resource/v1beta2,DeviceAttribute,VersionValue
70+
API rule violation: names_match,k8s.io/api/resource/v1beta2,NetworkDeviceData,IPs
6671
API rule violation: names_match,k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1,JSONSchemaProps,Ref
6772
API rule violation: names_match,k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1,JSONSchemaProps,Schema
6873
API rule violation: names_match,k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1,JSONSchemaProps,XEmbeddedResource

Diff for: cmd/kube-apiserver/app/aggregator.go

+1
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ var apiVersionPriorities = merge(controlplaneapiserver.DefaultGenericAPIServiceP
5151
{Group: "node.k8s.io", Version: "v1"}: {Group: 16300, Version: 15},
5252
{Group: "node.k8s.io", Version: "v1alpha1"}: {Group: 16300, Version: 1},
5353
{Group: "node.k8s.io", Version: "v1beta1"}: {Group: 16300, Version: 9},
54+
{Group: "resource.k8s.io", Version: "v1beta2"}: {Group: 16200, Version: 15},
5455
{Group: "resource.k8s.io", Version: "v1beta1"}: {Group: 16200, Version: 9},
5556
{Group: "resource.k8s.io", Version: "v1alpha3"}: {Group: 16200, Version: 1},
5657
// Append a new group to the end of the list if unsure.

Diff for: hack/lib/init.sh

+1
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,7 @@ coordination.k8s.io/v1beta1 \
9494
coordination.k8s.io/v1 \
9595
discovery.k8s.io/v1 \
9696
discovery.k8s.io/v1beta1 \
97+
resource.k8s.io/v1beta2 \
9798
resource.k8s.io/v1beta1 \
9899
resource.k8s.io/v1alpha3 \
99100
extensions/v1beta1 \

Diff for: pkg/api/testing/defaulting_test.go

+6
Original file line numberDiff line numberDiff line change
@@ -149,6 +149,12 @@ func TestDefaulting(t *testing.T) {
149149
{Group: "resource.k8s.io", Version: "v1beta1", Kind: "ResourceClaimTemplateList"}: {},
150150
{Group: "resource.k8s.io", Version: "v1beta1", Kind: "ResourceSlice"}: {},
151151
{Group: "resource.k8s.io", Version: "v1beta1", Kind: "ResourceSliceList"}: {},
152+
{Group: "resource.k8s.io", Version: "v1beta2", Kind: "ResourceClaim"}: {},
153+
{Group: "resource.k8s.io", Version: "v1beta2", Kind: "ResourceClaimList"}: {},
154+
{Group: "resource.k8s.io", Version: "v1beta2", Kind: "ResourceClaimTemplate"}: {},
155+
{Group: "resource.k8s.io", Version: "v1beta2", Kind: "ResourceClaimTemplateList"}: {},
156+
{Group: "resource.k8s.io", Version: "v1beta2", Kind: "ResourceSlice"}: {},
157+
{Group: "resource.k8s.io", Version: "v1beta2", Kind: "ResourceSliceList"}: {},
152158
{Group: "admissionregistration.k8s.io", Version: "v1alpha1", Kind: "ValidatingAdmissionPolicy"}: {},
153159
{Group: "admissionregistration.k8s.io", Version: "v1alpha1", Kind: "ValidatingAdmissionPolicyList"}: {},
154160
{Group: "admissionregistration.k8s.io", Version: "v1alpha1", Kind: "ValidatingAdmissionPolicyBinding"}: {},

Diff for: pkg/apis/resource/fuzzer/fuzzer.go

+13-1
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ import (
3232
// leads to errors during roundtrip tests.
3333
var Funcs = func(codecs runtimeserializer.CodecFactory) []interface{} {
3434
return []interface{}{
35-
func(r *resource.DeviceRequest, c randfill.Continue) {
35+
func(r *resource.ExactDeviceRequest, c randfill.Continue) {
3636
c.FillNoCustom(r) // fuzz self without calling this function again
3737

3838
if r.AllocationMode == "" {
@@ -44,6 +44,7 @@ var Funcs = func(codecs runtimeserializer.CodecFactory) []interface{} {
4444
},
4545
func(r *resource.DeviceSubRequest, c randfill.Continue) {
4646
c.FillNoCustom(r) // fuzz self without calling this function again
47+
4748
if r.AllocationMode == "" {
4849
r.AllocationMode = []resource.DeviceAllocationMode{
4950
resource.DeviceAllocationModeAll,
@@ -94,5 +95,16 @@ var Funcs = func(codecs runtimeserializer.CodecFactory) []interface{} {
9495
// might be valid JSON which changes during re-encoding.
9596
r.Data = &runtime.RawExtension{Raw: []byte(`{"apiVersion":"unknown.group/unknown","kind":"Something","someKey":"someValue"}`)}
9697
},
98+
func(r *resource.ResourceSliceSpec, c randfill.Continue) {
99+
c.FillNoCustom(r)
100+
// Setting AllNodes to false is not allowed. It must be
101+
// either true or nil.
102+
if r.AllNodes != nil && !*r.AllNodes {
103+
r.AllNodes = nil
104+
}
105+
if r.NodeName != nil && *r.NodeName == "" {
106+
r.NodeName = nil
107+
}
108+
},
97109
}
98110
}

Diff for: pkg/apis/resource/install/install.go

+5-1
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ import (
2525
"k8s.io/kubernetes/pkg/apis/resource"
2626
"k8s.io/kubernetes/pkg/apis/resource/v1alpha3"
2727
"k8s.io/kubernetes/pkg/apis/resource/v1beta1"
28+
"k8s.io/kubernetes/pkg/apis/resource/v1beta2"
2829
)
2930

3031
func init() {
@@ -36,5 +37,8 @@ func Install(scheme *runtime.Scheme) {
3637
utilruntime.Must(resource.AddToScheme(scheme))
3738
utilruntime.Must(v1alpha3.AddToScheme(scheme))
3839
utilruntime.Must(v1beta1.AddToScheme(scheme))
39-
utilruntime.Must(scheme.SetVersionPriority(v1beta1.SchemeGroupVersion, v1alpha3.SchemeGroupVersion))
40+
utilruntime.Must(v1beta2.AddToScheme(scheme))
41+
// TODO(https://github.com/kubernetes/kubernetes/issues/129889) We should
42+
// change the serialization version to v1beta2 for 1.34.
43+
utilruntime.Must(scheme.SetVersionPriority(v1beta1.SchemeGroupVersion, v1beta2.SchemeGroupVersion, v1alpha3.SchemeGroupVersion))
4044
}

0 commit comments

Comments
 (0)