Regenerate generated files

k3s-v1.15.3
Tim Allclair 2019-04-23 17:26:13 -07:00
parent d2a87d5afc
commit 12bcbd9a74
8 changed files with 614 additions and 70 deletions

View File

@ -13283,7 +13283,7 @@
},
"topology": {
"$ref": "#/definitions/io.k8s.api.node.v1alpha1.Topology",
"description": "Topology specifies the scheduling constrains that are necessary to assign pods to the right node"
"description": "Topology describes the set of nodes in the cluster that support this RuntimeClass. The rules are applied applied to pods running with this RuntimeClass and semantically merged with other scheduling constraints on the pod. If topology is nil, this RuntimeClass is assumed to be supported by all nodes."
}
},
"required": [
@ -13292,14 +13292,14 @@
"type": "object"
},
"io.k8s.api.node.v1alpha1.Topology": {
"description": "Topology specifies the structure of scheduling constrains for the runtime class",
"description": "Topology specifies the scheduling constraints for nodes supporting a RuntimeClass.",
"properties": {
"nodeSelector": {
"$ref": "#/definitions/io.k8s.api.core.v1.NodeSelector",
"description": "nodeSelector selects the set of nodes that support this RuntimeClass. Pods using this RuntimeClass can only be scheduled to a node matched by this selector. The nodeSelector is intersected (AND) with a pod's other node affinity or node selector requirements."
"description": "NodeSelector selects the set of nodes that support this RuntimeClass. Pods using this RuntimeClass can only be scheduled to a node matched by this selector. The NodeSelector is intersected (AND) with a pod's other NodeAffinity or NodeSelector requirements. A nil NodeSelector selects all nodes."
},
"tolerations": {
"description": "tolerations adds tolerations to pods running with this RuntimeClass.",
"description": "Tolerations are appended (excluding duplicates) to pods running with this RuntimeClass during admission, effectively unioning the set of nodes tolerated by the pod and the RuntimeClass.",
"items": {
"$ref": "#/definitions/io.k8s.api.core.v1.Toleration"
},
@ -13329,7 +13329,7 @@
},
"topology": {
"$ref": "#/definitions/io.k8s.api.node.v1beta1.Topology",
"description": "Topology describes the set of nodes in the cluster that support this RuntimeClass. The rules are applied to the pod during scheduling time. If topology is nil, this RuntimeClass is assumed to be supported by all nodes. pods to the right node"
"description": "Topology describes the set of nodes in the cluster that support this RuntimeClass. The rules are applied applied to pods running with this RuntimeClass and semantically merged with other scheduling constraints on the pod. If topology is nil, this RuntimeClass is assumed to be supported by all nodes."
}
},
"required": [
@ -13384,10 +13384,10 @@
"properties": {
"nodeSelector": {
"$ref": "#/definitions/io.k8s.api.core.v1.NodeSelector",
"description": "nodeSelector selects the set of nodes that support this RuntimeClass. Pods using this RuntimeClass can only be scheduled to a node matched by this selector. The nodeSelector is intersected (AND) with a pod's other node affinity or node selector requirements. A nil nodeSelector selects all nodes."
"description": "NodeSelector selects the set of nodes that support this RuntimeClass. Pods using this RuntimeClass can only be scheduled to a node matched by this selector. The NodeSelector is intersected (AND) with a pod's other NodeAffinity or NodeSelector requirements. A nil NodeSelector selects all nodes."
},
"tolerations": {
"description": "tolerations adds tolerations to pods running with this RuntimeClass. the tolerations are appended (excluding duplicates) to the pod's tolerations during admission.",
"description": "Tolerations are appended (excluding duplicates) to pods running with this RuntimeClass during admission, effectively unioning the set of nodes tolerated by the pod and the RuntimeClass.",
"items": {
"$ref": "#/definitions/io.k8s.api.core.v1.Toleration"
},

View File

@ -24,6 +24,8 @@ go_test(
"//staging/src/k8s.io/api/extensions/v1beta1:go_default_library",
"//staging/src/k8s.io/api/imagepolicy/v1alpha1:go_default_library",
"//staging/src/k8s.io/api/networking/v1:go_default_library",
"//staging/src/k8s.io/api/node/v1alpha1:go_default_library",
"//staging/src/k8s.io/api/node/v1beta1:go_default_library",
"//staging/src/k8s.io/api/policy/v1beta1:go_default_library",
"//staging/src/k8s.io/api/rbac/v1:go_default_library",
"//staging/src/k8s.io/api/rbac/v1alpha1:go_default_library",

View File

@ -27,6 +27,7 @@ limitations under the License.
RuntimeClass
RuntimeClassList
RuntimeClassSpec
Topology
*/
package v1alpha1
@ -34,6 +35,8 @@ import proto "github.com/gogo/protobuf/proto"
import fmt "fmt"
import math "math"
import k8s_io_api_core_v1 "k8s.io/api/core/v1"
import strings "strings"
import reflect "reflect"
@ -62,10 +65,15 @@ func (m *RuntimeClassSpec) Reset() { *m = RuntimeClassSpec{}
func (*RuntimeClassSpec) ProtoMessage() {}
func (*RuntimeClassSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{2} }
func (m *Topology) Reset() { *m = Topology{} }
func (*Topology) ProtoMessage() {}
func (*Topology) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{3} }
func init() {
proto.RegisterType((*RuntimeClass)(nil), "k8s.io.api.node.v1alpha1.RuntimeClass")
proto.RegisterType((*RuntimeClassList)(nil), "k8s.io.api.node.v1alpha1.RuntimeClassList")
proto.RegisterType((*RuntimeClassSpec)(nil), "k8s.io.api.node.v1alpha1.RuntimeClassSpec")
proto.RegisterType((*Topology)(nil), "k8s.io.api.node.v1alpha1.Topology")
}
func (m *RuntimeClass) Marshal() (dAtA []byte, err error) {
size := m.Size()
@ -158,6 +166,56 @@ func (m *RuntimeClassSpec) MarshalTo(dAtA []byte) (int, error) {
i++
i = encodeVarintGenerated(dAtA, i, uint64(len(m.RuntimeHandler)))
i += copy(dAtA[i:], m.RuntimeHandler)
if m.Topology != nil {
dAtA[i] = 0x1a
i++
i = encodeVarintGenerated(dAtA, i, uint64(m.Topology.Size()))
n4, err := m.Topology.MarshalTo(dAtA[i:])
if err != nil {
return 0, err
}
i += n4
}
return i, nil
}
func (m *Topology) Marshal() (dAtA []byte, err error) {
size := m.Size()
dAtA = make([]byte, size)
n, err := m.MarshalTo(dAtA)
if err != nil {
return nil, err
}
return dAtA[:n], nil
}
func (m *Topology) MarshalTo(dAtA []byte) (int, error) {
var i int
_ = i
var l int
_ = l
if m.NodeSelector != nil {
dAtA[i] = 0xa
i++
i = encodeVarintGenerated(dAtA, i, uint64(m.NodeSelector.Size()))
n5, err := m.NodeSelector.MarshalTo(dAtA[i:])
if err != nil {
return 0, err
}
i += n5
}
if len(m.Tolerations) > 0 {
for _, msg := range m.Tolerations {
dAtA[i] = 0x12
i++
i = encodeVarintGenerated(dAtA, i, uint64(msg.Size()))
n, err := msg.MarshalTo(dAtA[i:])
if err != nil {
return 0, err
}
i += n
}
}
return i, nil
}
@ -199,6 +257,26 @@ func (m *RuntimeClassSpec) Size() (n int) {
_ = l
l = len(m.RuntimeHandler)
n += 1 + l + sovGenerated(uint64(l))
if m.Topology != nil {
l = m.Topology.Size()
n += 1 + l + sovGenerated(uint64(l))
}
return n
}
func (m *Topology) Size() (n int) {
var l int
_ = l
if m.NodeSelector != nil {
l = m.NodeSelector.Size()
n += 1 + l + sovGenerated(uint64(l))
}
if len(m.Tolerations) > 0 {
for _, e := range m.Tolerations {
l = e.Size()
n += 1 + l + sovGenerated(uint64(l))
}
}
return n
}
@ -243,6 +321,18 @@ func (this *RuntimeClassSpec) String() string {
}
s := strings.Join([]string{`&RuntimeClassSpec{`,
`RuntimeHandler:` + fmt.Sprintf("%v", this.RuntimeHandler) + `,`,
`Topology:` + strings.Replace(fmt.Sprintf("%v", this.Topology), "Topology", "Topology", 1) + `,`,
`}`,
}, "")
return s
}
func (this *Topology) String() string {
if this == nil {
return "nil"
}
s := strings.Join([]string{`&Topology{`,
`NodeSelector:` + strings.Replace(fmt.Sprintf("%v", this.NodeSelector), "NodeSelector", "k8s_io_api_core_v1.NodeSelector", 1) + `,`,
`Tolerations:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.Tolerations), "Toleration", "k8s_io_api_core_v1.Toleration", 1), `&`, ``, 1) + `,`,
`}`,
}, "")
return s
@ -534,6 +624,153 @@ func (m *RuntimeClassSpec) Unmarshal(dAtA []byte) error {
}
m.RuntimeHandler = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
case 3:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field Topology", wireType)
}
var msglen int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowGenerated
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
msglen |= (int(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
if msglen < 0 {
return ErrInvalidLengthGenerated
}
postIndex := iNdEx + msglen
if postIndex > l {
return io.ErrUnexpectedEOF
}
if m.Topology == nil {
m.Topology = &Topology{}
}
if err := m.Topology.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
return err
}
iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := skipGenerated(dAtA[iNdEx:])
if err != nil {
return err
}
if skippy < 0 {
return ErrInvalidLengthGenerated
}
if (iNdEx + skippy) > l {
return io.ErrUnexpectedEOF
}
iNdEx += skippy
}
}
if iNdEx > l {
return io.ErrUnexpectedEOF
}
return nil
}
func (m *Topology) Unmarshal(dAtA []byte) error {
l := len(dAtA)
iNdEx := 0
for iNdEx < l {
preIndex := iNdEx
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowGenerated
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
wire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
fieldNum := int32(wire >> 3)
wireType := int(wire & 0x7)
if wireType == 4 {
return fmt.Errorf("proto: Topology: wiretype end group for non-group")
}
if fieldNum <= 0 {
return fmt.Errorf("proto: Topology: illegal tag %d (wire type %d)", fieldNum, wire)
}
switch fieldNum {
case 1:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field NodeSelector", wireType)
}
var msglen int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowGenerated
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
msglen |= (int(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
if msglen < 0 {
return ErrInvalidLengthGenerated
}
postIndex := iNdEx + msglen
if postIndex > l {
return io.ErrUnexpectedEOF
}
if m.NodeSelector == nil {
m.NodeSelector = &k8s_io_api_core_v1.NodeSelector{}
}
if err := m.NodeSelector.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
return err
}
iNdEx = postIndex
case 2:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field Tolerations", wireType)
}
var msglen int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowGenerated
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
msglen |= (int(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
if msglen < 0 {
return ErrInvalidLengthGenerated
}
postIndex := iNdEx + msglen
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.Tolerations = append(m.Tolerations, k8s_io_api_core_v1.Toleration{})
if err := m.Tolerations[len(m.Tolerations)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
return err
}
iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := skipGenerated(dAtA[iNdEx:])
@ -665,32 +902,38 @@ func init() {
}
var fileDescriptorGenerated = []byte{
// 421 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x91, 0x41, 0x6b, 0xd4, 0x40,
0x14, 0xc7, 0x33, 0xb5, 0x85, 0x75, 0x5a, 0x4b, 0xc9, 0x41, 0xc2, 0x1e, 0xa6, 0x65, 0x0f, 0x52,
0x04, 0x67, 0xdc, 0x22, 0xe2, 0x49, 0x30, 0x5e, 0x14, 0x2b, 0x42, 0xbc, 0x89, 0x07, 0x27, 0xc9,
0x33, 0x19, 0xb3, 0xc9, 0x0c, 0x99, 0x49, 0xc0, 0x9b, 0x1f, 0xc1, 0x2f, 0xa4, 0xe7, 0x3d, 0xf6,
0xd8, 0x53, 0x71, 0xe3, 0x17, 0x91, 0x99, 0x64, 0xbb, 0xdb, 0x2e, 0xc5, 0xbd, 0xe5, 0xbd, 0xf9,
0xff, 0x7f, 0xef, 0xfd, 0x5f, 0xf0, 0xab, 0xe2, 0x85, 0xa6, 0x42, 0xb2, 0xa2, 0x89, 0xa1, 0xae,
0xc0, 0x80, 0x66, 0x2d, 0x54, 0xa9, 0xac, 0xd9, 0xf0, 0xc0, 0x95, 0x60, 0x95, 0x4c, 0x81, 0xb5,
0x53, 0x3e, 0x53, 0x39, 0x9f, 0xb2, 0x0c, 0x2a, 0xa8, 0xb9, 0x81, 0x94, 0xaa, 0x5a, 0x1a, 0xe9,
0x07, 0xbd, 0x92, 0x72, 0x25, 0xa8, 0x55, 0xd2, 0xa5, 0x72, 0xfc, 0x24, 0x13, 0x26, 0x6f, 0x62,
0x9a, 0xc8, 0x92, 0x65, 0x32, 0x93, 0xcc, 0x19, 0xe2, 0xe6, 0xab, 0xab, 0x5c, 0xe1, 0xbe, 0x7a,
0xd0, 0xf8, 0xd9, 0x6a, 0x64, 0xc9, 0x93, 0x5c, 0x54, 0x50, 0x7f, 0x67, 0xaa, 0xc8, 0x6c, 0x43,
0xb3, 0x12, 0x0c, 0x67, 0xed, 0xc6, 0xf8, 0x31, 0xbb, 0xcb, 0x55, 0x37, 0x95, 0x11, 0x25, 0x6c,
0x18, 0x9e, 0xff, 0xcf, 0xa0, 0x93, 0x1c, 0x4a, 0x7e, 0xdb, 0x37, 0xf9, 0x8d, 0xf0, 0x41, 0xd4,
0x4b, 0x5e, 0xcf, 0xb8, 0xd6, 0xfe, 0x17, 0x3c, 0xb2, 0x4b, 0xa5, 0xdc, 0xf0, 0x00, 0x9d, 0xa0,
0xd3, 0xfd, 0xb3, 0xa7, 0x74, 0x75, 0x8b, 0x6b, 0x36, 0x55, 0x45, 0x66, 0x1b, 0x9a, 0x5a, 0x35,
0x6d, 0xa7, 0xf4, 0x43, 0xfc, 0x0d, 0x12, 0xf3, 0x1e, 0x0c, 0x0f, 0xfd, 0xf9, 0xd5, 0xb1, 0xd7,
0x5d, 0x1d, 0xe3, 0x55, 0x2f, 0xba, 0xa6, 0xfa, 0xe7, 0x78, 0x57, 0x2b, 0x48, 0x82, 0x1d, 0x47,
0x7f, 0x4c, 0xef, 0xba, 0x34, 0x5d, 0xdf, 0xeb, 0xa3, 0x82, 0x24, 0x3c, 0x18, 0xb8, 0xbb, 0xb6,
0x8a, 0x1c, 0x65, 0xf2, 0x0b, 0xe1, 0xa3, 0x75, 0xe1, 0xb9, 0xd0, 0xc6, 0xff, 0xbc, 0x11, 0x82,
0x6e, 0x17, 0xc2, 0xba, 0x5d, 0x84, 0xa3, 0x61, 0xd4, 0x68, 0xd9, 0x59, 0x0b, 0xf0, 0x0e, 0xef,
0x09, 0x03, 0xa5, 0x0e, 0x76, 0x4e, 0xee, 0x9d, 0xee, 0x9f, 0x3d, 0xda, 0x2e, 0x41, 0xf8, 0x60,
0x40, 0xee, 0xbd, 0xb5, 0xe6, 0xa8, 0x67, 0x4c, 0xa2, 0x9b, 0xeb, 0xdb, 0x64, 0xfe, 0x4b, 0x7c,
0x38, 0xfc, 0xb6, 0x37, 0xbc, 0x4a, 0x67, 0x50, 0xbb, 0x10, 0xf7, 0xc3, 0x87, 0x03, 0xe1, 0x30,
0xba, 0xf1, 0x1a, 0xdd, 0x52, 0x87, 0x74, 0xbe, 0x20, 0xde, 0xc5, 0x82, 0x78, 0x97, 0x0b, 0xe2,
0xfd, 0xe8, 0x08, 0x9a, 0x77, 0x04, 0x5d, 0x74, 0x04, 0x5d, 0x76, 0x04, 0xfd, 0xe9, 0x08, 0xfa,
0xf9, 0x97, 0x78, 0x9f, 0x46, 0xcb, 0x35, 0xff, 0x05, 0x00, 0x00, 0xff, 0xff, 0x94, 0x34, 0x0e,
0xef, 0x30, 0x03, 0x00, 0x00,
// 527 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x93, 0xbf, 0x8e, 0xd3, 0x4c,
0x14, 0xc5, 0x33, 0xfb, 0x47, 0xca, 0x37, 0xf1, 0xb7, 0x8a, 0x8c, 0x84, 0xac, 0x14, 0x93, 0xc8,
0x05, 0x5a, 0x21, 0x31, 0x43, 0x56, 0x08, 0x51, 0x21, 0x61, 0x1a, 0x10, 0x01, 0x24, 0xef, 0x42,
0x81, 0x28, 0x98, 0xd8, 0x17, 0xc7, 0xc4, 0xf6, 0x58, 0x9e, 0x49, 0xa4, 0xed, 0x78, 0x04, 0x1e,
0x81, 0xd7, 0xa0, 0x80, 0x3a, 0xe5, 0x96, 0x5b, 0x45, 0xc4, 0xbc, 0x08, 0x1a, 0xc7, 0x76, 0xbc,
0xd9, 0x8d, 0xd8, 0x2e, 0xf7, 0xfa, 0x9c, 0xdf, 0xbd, 0xe7, 0x3a, 0xc6, 0xcf, 0xa6, 0x4f, 0x24,
0x0d, 0x05, 0x9b, 0xce, 0xc6, 0x90, 0x25, 0xa0, 0x40, 0xb2, 0x39, 0x24, 0xbe, 0xc8, 0x58, 0xf9,
0x80, 0xa7, 0x21, 0x4b, 0x84, 0x0f, 0x6c, 0x3e, 0xe4, 0x51, 0x3a, 0xe1, 0x43, 0x16, 0x40, 0x02,
0x19, 0x57, 0xe0, 0xd3, 0x34, 0x13, 0x4a, 0x98, 0xd6, 0x5a, 0x49, 0x79, 0x1a, 0x52, 0xad, 0xa4,
0x95, 0xb2, 0xf7, 0x20, 0x08, 0xd5, 0x64, 0x36, 0xa6, 0x9e, 0x88, 0x59, 0x20, 0x02, 0xc1, 0x0a,
0xc3, 0x78, 0xf6, 0xb9, 0xa8, 0x8a, 0xa2, 0xf8, 0xb5, 0x06, 0xf5, 0xec, 0xc6, 0x48, 0x4f, 0x64,
0x7a, 0xe4, 0xf6, 0xb0, 0xde, 0xa3, 0x8d, 0x26, 0xe6, 0xde, 0x24, 0x4c, 0x20, 0x3b, 0x67, 0xe9,
0x34, 0xd0, 0x0d, 0xc9, 0x62, 0x50, 0xfc, 0x26, 0x17, 0xdb, 0xe5, 0xca, 0x66, 0x89, 0x0a, 0x63,
0xb8, 0x66, 0x78, 0xfc, 0x2f, 0x83, 0xf4, 0x26, 0x10, 0xf3, 0x6d, 0x9f, 0xfd, 0x0b, 0x61, 0xc3,
0x5d, 0x4b, 0x9e, 0x47, 0x5c, 0x4a, 0xf3, 0x13, 0x6e, 0xeb, 0xa5, 0x7c, 0xae, 0xb8, 0x85, 0x06,
0xe8, 0xb8, 0x73, 0xf2, 0x90, 0x6e, 0xee, 0x55, 0xb3, 0x69, 0x3a, 0x0d, 0x74, 0x43, 0x52, 0xad,
0xa6, 0xf3, 0x21, 0x7d, 0x3b, 0xfe, 0x02, 0x9e, 0x7a, 0x0d, 0x8a, 0x3b, 0xe6, 0x62, 0xd9, 0x6f,
0xe5, 0xcb, 0x3e, 0xde, 0xf4, 0xdc, 0x9a, 0x6a, 0x8e, 0xf0, 0x81, 0x4c, 0xc1, 0xb3, 0xf6, 0x0a,
0xfa, 0x7d, 0xba, 0xeb, 0x6d, 0xd0, 0xe6, 0x5e, 0xa7, 0x29, 0x78, 0x8e, 0x51, 0x72, 0x0f, 0x74,
0xe5, 0x16, 0x14, 0xfb, 0x27, 0xc2, 0xdd, 0xa6, 0x70, 0x14, 0x4a, 0x65, 0x7e, 0xbc, 0x16, 0x82,
0xde, 0x2e, 0x84, 0x76, 0x17, 0x11, 0xba, 0xe5, 0xa8, 0x76, 0xd5, 0x69, 0x04, 0x78, 0x85, 0x0f,
0x43, 0x05, 0xb1, 0xb4, 0xf6, 0x06, 0xfb, 0xc7, 0x9d, 0x93, 0x7b, 0xb7, 0x4b, 0xe0, 0xfc, 0x5f,
0x22, 0x0f, 0x5f, 0x6a, 0xb3, 0xbb, 0x66, 0xd8, 0xdf, 0xb7, 0xf6, 0xd7, 0xd1, 0xcc, 0xa7, 0xf8,
0xa8, 0x7c, 0x6f, 0x2f, 0x78, 0xe2, 0x47, 0x90, 0x15, 0x29, 0xfe, 0x73, 0xee, 0x96, 0x88, 0x23,
0xf7, 0xca, 0x53, 0x77, 0x4b, 0x6d, 0x8e, 0x70, 0x5b, 0x89, 0x54, 0x44, 0x22, 0x38, 0xb7, 0xf6,
0x8b, 0xfc, 0xf6, 0xee, 0x25, 0xcf, 0x4a, 0xa5, 0x63, 0xe8, 0xbc, 0x55, 0xe5, 0xd6, 0x04, 0xfb,
0x07, 0xc2, 0x75, 0xdb, 0x7c, 0x8f, 0x0d, 0x6d, 0x3f, 0x85, 0x08, 0x3c, 0x25, 0xb2, 0xf2, 0xbc,
0x83, 0x26, 0x5e, 0x7f, 0x0a, 0xfa, 0x98, 0x6f, 0x1a, 0x3a, 0xa7, 0x9b, 0x2f, 0xfb, 0x46, 0xb3,
0xe3, 0x5e, 0xe1, 0x98, 0xef, 0x70, 0x47, 0x89, 0x48, 0xff, 0x37, 0x43, 0x91, 0x54, 0xa7, 0x25,
0x37, 0x61, 0xcf, 0x6a, 0x99, 0x73, 0xa7, 0xbc, 0x47, 0x67, 0xd3, 0x93, 0x6e, 0x93, 0xe3, 0xd0,
0xc5, 0x8a, 0xb4, 0x2e, 0x56, 0xa4, 0x75, 0xb9, 0x22, 0xad, 0xaf, 0x39, 0x41, 0x8b, 0x9c, 0xa0,
0x8b, 0x9c, 0xa0, 0xcb, 0x9c, 0xa0, 0xdf, 0x39, 0x41, 0xdf, 0xfe, 0x90, 0xd6, 0x87, 0x76, 0x75,
0x8c, 0xbf, 0x01, 0x00, 0x00, 0xff, 0xff, 0x61, 0x6b, 0x4c, 0x0f, 0x5f, 0x04, 0x00, 0x00,
}

View File

@ -21,6 +21,7 @@ syntax = 'proto2';
package k8s.io.api.node.v1alpha1;
import "k8s.io/api/core/v1/generated.proto";
import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto";
import "k8s.io/apimachinery/pkg/runtime/generated.proto";
import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto";
@ -72,5 +73,32 @@ message RuntimeClassSpec {
// The RuntimeHandler must conform to the DNS Label (RFC 1123) requirements
// and is immutable.
optional string runtimeHandler = 1;
// Topology describes the set of nodes in the cluster that support this
// RuntimeClass. The rules are applied applied to pods running with this
// RuntimeClass and semantically merged with other scheduling constraints on
// the pod.
// If topology is nil, this RuntimeClass is assumed to be supported by all
// nodes.
// +optional
optional Topology topology = 3;
}
// Topology specifies the scheduling constraints for nodes supporting a
// RuntimeClass.
message Topology {
// NodeSelector selects the set of nodes that support this RuntimeClass.
// Pods using this RuntimeClass can only be scheduled to a node matched by
// this selector. The NodeSelector is intersected (AND) with a pod's other
// NodeAffinity or NodeSelector requirements.
// A nil NodeSelector selects all nodes.
// +optional
optional k8s.io.api.core.v1.NodeSelector nodeSelector = 1;
// Tolerations are appended (excluding duplicates) to pods running with this
// RuntimeClass during admission, effectively unioning the set of nodes
// tolerated by the pod and the RuntimeClass.
// +optional
repeated k8s.io.api.core.v1.Toleration tolerations = 2;
}

View File

@ -50,7 +50,7 @@ func (RuntimeClassList) SwaggerDoc() map[string]string {
var map_RuntimeClassSpec = map[string]string{
"": "RuntimeClassSpec is a specification of a RuntimeClass. It contains parameters that are required to describe the RuntimeClass to the Container Runtime Interface (CRI) implementation, as well as any other components that need to understand how the pod will be run. The RuntimeClassSpec is immutable.",
"runtimeHandler": "RuntimeHandler specifies the underlying runtime and configuration that the CRI implementation will use to handle pods of this class. The possible values are specific to the node & CRI configuration. It is assumed that all handlers are available on every node, and handlers of the same name are equivalent on every node. For example, a handler called \"runc\" might specify that the runc OCI runtime (using native Linux containers) will be used to run the containers in a pod. The RuntimeHandler must conform to the DNS Label (RFC 1123) requirements and is immutable.",
"topology": "Topology specifies the scheduling constrains that are necessary to assign pods to the right node",
"topology": "Topology describes the set of nodes in the cluster that support this RuntimeClass. The rules are applied applied to pods running with this RuntimeClass and semantically merged with other scheduling constraints on the pod. If topology is nil, this RuntimeClass is assumed to be supported by all nodes.",
}
func (RuntimeClassSpec) SwaggerDoc() map[string]string {
@ -58,9 +58,9 @@ func (RuntimeClassSpec) SwaggerDoc() map[string]string {
}
var map_Topology = map[string]string{
"": "Topology specifies the structure of scheduling constrains for the runtime class",
"nodeSelector": "nodeSelector selects the set of nodes that support this RuntimeClass. Pods using this RuntimeClass can only be scheduled to a node matched by this selector. The nodeSelector is intersected (AND) with a pod's other node affinity or node selector requirements.",
"tolerations": "tolerations adds tolerations to pods running with this RuntimeClass.",
"": "Topology specifies the scheduling constraints for nodes supporting a RuntimeClass.",
"nodeSelector": "NodeSelector selects the set of nodes that support this RuntimeClass. Pods using this RuntimeClass can only be scheduled to a node matched by this selector. The NodeSelector is intersected (AND) with a pod's other NodeAffinity or NodeSelector requirements. A nil NodeSelector selects all nodes.",
"tolerations": "Tolerations are appended (excluding duplicates) to pods running with this RuntimeClass during admission, effectively unioning the set of nodes tolerated by the pod and the RuntimeClass.",
}
func (Topology) SwaggerDoc() map[string]string {

View File

@ -26,6 +26,7 @@ limitations under the License.
It has these top-level messages:
RuntimeClass
RuntimeClassList
Topology
*/
package v1beta1
@ -33,6 +34,8 @@ import proto "github.com/gogo/protobuf/proto"
import fmt "fmt"
import math "math"
import k8s_io_api_core_v1 "k8s.io/api/core/v1"
import strings "strings"
import reflect "reflect"
@ -57,9 +60,14 @@ func (m *RuntimeClassList) Reset() { *m = RuntimeClassList{}
func (*RuntimeClassList) ProtoMessage() {}
func (*RuntimeClassList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{1} }
func (m *Topology) Reset() { *m = Topology{} }
func (*Topology) ProtoMessage() {}
func (*Topology) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{2} }
func init() {
proto.RegisterType((*RuntimeClass)(nil), "k8s.io.api.node.v1beta1.RuntimeClass")
proto.RegisterType((*RuntimeClassList)(nil), "k8s.io.api.node.v1beta1.RuntimeClassList")
proto.RegisterType((*Topology)(nil), "k8s.io.api.node.v1beta1.Topology")
}
func (m *RuntimeClass) Marshal() (dAtA []byte, err error) {
size := m.Size()
@ -88,6 +96,16 @@ func (m *RuntimeClass) MarshalTo(dAtA []byte) (int, error) {
i++
i = encodeVarintGenerated(dAtA, i, uint64(len(m.Handler)))
i += copy(dAtA[i:], m.Handler)
if m.Topology != nil {
dAtA[i] = 0x1a
i++
i = encodeVarintGenerated(dAtA, i, uint64(m.Topology.Size()))
n2, err := m.Topology.MarshalTo(dAtA[i:])
if err != nil {
return 0, err
}
i += n2
}
return i, nil
}
@ -109,11 +127,11 @@ func (m *RuntimeClassList) MarshalTo(dAtA []byte) (int, error) {
dAtA[i] = 0xa
i++
i = encodeVarintGenerated(dAtA, i, uint64(m.ListMeta.Size()))
n2, err := m.ListMeta.MarshalTo(dAtA[i:])
n3, err := m.ListMeta.MarshalTo(dAtA[i:])
if err != nil {
return 0, err
}
i += n2
i += n3
if len(m.Items) > 0 {
for _, msg := range m.Items {
dAtA[i] = 0x12
@ -129,6 +147,46 @@ func (m *RuntimeClassList) MarshalTo(dAtA []byte) (int, error) {
return i, nil
}
func (m *Topology) Marshal() (dAtA []byte, err error) {
size := m.Size()
dAtA = make([]byte, size)
n, err := m.MarshalTo(dAtA)
if err != nil {
return nil, err
}
return dAtA[:n], nil
}
func (m *Topology) MarshalTo(dAtA []byte) (int, error) {
var i int
_ = i
var l int
_ = l
if m.NodeSelector != nil {
dAtA[i] = 0xa
i++
i = encodeVarintGenerated(dAtA, i, uint64(m.NodeSelector.Size()))
n4, err := m.NodeSelector.MarshalTo(dAtA[i:])
if err != nil {
return 0, err
}
i += n4
}
if len(m.Tolerations) > 0 {
for _, msg := range m.Tolerations {
dAtA[i] = 0x12
i++
i = encodeVarintGenerated(dAtA, i, uint64(msg.Size()))
n, err := msg.MarshalTo(dAtA[i:])
if err != nil {
return 0, err
}
i += n
}
}
return i, nil
}
func encodeVarintGenerated(dAtA []byte, offset int, v uint64) int {
for v >= 1<<7 {
dAtA[offset] = uint8(v&0x7f | 0x80)
@ -145,6 +203,10 @@ func (m *RuntimeClass) Size() (n int) {
n += 1 + l + sovGenerated(uint64(l))
l = len(m.Handler)
n += 1 + l + sovGenerated(uint64(l))
if m.Topology != nil {
l = m.Topology.Size()
n += 1 + l + sovGenerated(uint64(l))
}
return n
}
@ -162,6 +224,22 @@ func (m *RuntimeClassList) Size() (n int) {
return n
}
func (m *Topology) Size() (n int) {
var l int
_ = l
if m.NodeSelector != nil {
l = m.NodeSelector.Size()
n += 1 + l + sovGenerated(uint64(l))
}
if len(m.Tolerations) > 0 {
for _, e := range m.Tolerations {
l = e.Size()
n += 1 + l + sovGenerated(uint64(l))
}
}
return n
}
func sovGenerated(x uint64) (n int) {
for {
n++
@ -182,6 +260,7 @@ func (this *RuntimeClass) String() string {
s := strings.Join([]string{`&RuntimeClass{`,
`ObjectMeta:` + strings.Replace(strings.Replace(this.ObjectMeta.String(), "ObjectMeta", "k8s_io_apimachinery_pkg_apis_meta_v1.ObjectMeta", 1), `&`, ``, 1) + `,`,
`Handler:` + fmt.Sprintf("%v", this.Handler) + `,`,
`Topology:` + strings.Replace(fmt.Sprintf("%v", this.Topology), "Topology", "Topology", 1) + `,`,
`}`,
}, "")
return s
@ -197,6 +276,17 @@ func (this *RuntimeClassList) String() string {
}, "")
return s
}
func (this *Topology) String() string {
if this == nil {
return "nil"
}
s := strings.Join([]string{`&Topology{`,
`NodeSelector:` + strings.Replace(fmt.Sprintf("%v", this.NodeSelector), "NodeSelector", "k8s_io_api_core_v1.NodeSelector", 1) + `,`,
`Tolerations:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.Tolerations), "Toleration", "k8s_io_api_core_v1.Toleration", 1), `&`, ``, 1) + `,`,
`}`,
}, "")
return s
}
func valueToStringGenerated(v interface{}) string {
rv := reflect.ValueOf(v)
if rv.IsNil() {
@ -293,6 +383,39 @@ func (m *RuntimeClass) Unmarshal(dAtA []byte) error {
}
m.Handler = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
case 3:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field Topology", wireType)
}
var msglen int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowGenerated
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
msglen |= (int(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
if msglen < 0 {
return ErrInvalidLengthGenerated
}
postIndex := iNdEx + msglen
if postIndex > l {
return io.ErrUnexpectedEOF
}
if m.Topology == nil {
m.Topology = &Topology{}
}
if err := m.Topology.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
return err
}
iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := skipGenerated(dAtA[iNdEx:])
@ -425,6 +548,120 @@ func (m *RuntimeClassList) Unmarshal(dAtA []byte) error {
}
return nil
}
func (m *Topology) Unmarshal(dAtA []byte) error {
l := len(dAtA)
iNdEx := 0
for iNdEx < l {
preIndex := iNdEx
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowGenerated
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
wire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
fieldNum := int32(wire >> 3)
wireType := int(wire & 0x7)
if wireType == 4 {
return fmt.Errorf("proto: Topology: wiretype end group for non-group")
}
if fieldNum <= 0 {
return fmt.Errorf("proto: Topology: illegal tag %d (wire type %d)", fieldNum, wire)
}
switch fieldNum {
case 1:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field NodeSelector", wireType)
}
var msglen int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowGenerated
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
msglen |= (int(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
if msglen < 0 {
return ErrInvalidLengthGenerated
}
postIndex := iNdEx + msglen
if postIndex > l {
return io.ErrUnexpectedEOF
}
if m.NodeSelector == nil {
m.NodeSelector = &k8s_io_api_core_v1.NodeSelector{}
}
if err := m.NodeSelector.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
return err
}
iNdEx = postIndex
case 2:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field Tolerations", wireType)
}
var msglen int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowGenerated
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
msglen |= (int(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
if msglen < 0 {
return ErrInvalidLengthGenerated
}
postIndex := iNdEx + msglen
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.Tolerations = append(m.Tolerations, k8s_io_api_core_v1.Toleration{})
if err := m.Tolerations[len(m.Tolerations)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
return err
}
iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := skipGenerated(dAtA[iNdEx:])
if err != nil {
return err
}
if skippy < 0 {
return ErrInvalidLengthGenerated
}
if (iNdEx + skippy) > l {
return io.ErrUnexpectedEOF
}
iNdEx += skippy
}
}
if iNdEx > l {
return io.ErrUnexpectedEOF
}
return nil
}
func skipGenerated(dAtA []byte) (n int, err error) {
l := len(dAtA)
iNdEx := 0
@ -535,30 +772,36 @@ func init() {
}
var fileDescriptorGenerated = []byte{
// 389 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x92, 0xcd, 0x6a, 0xdb, 0x40,
0x14, 0x85, 0x35, 0x2e, 0xc6, 0xae, 0xdc, 0x52, 0xa3, 0x4d, 0x8d, 0x17, 0x63, 0x63, 0x28, 0xb8,
0x0b, 0xcf, 0xd4, 0xa6, 0x94, 0x2e, 0x8b, 0xba, 0x69, 0x4b, 0x4b, 0x41, 0xcb, 0x90, 0x45, 0x46,
0xd2, 0x8d, 0x34, 0x91, 0xa5, 0x11, 0x9a, 0x91, 0x20, 0xbb, 0x3c, 0x42, 0xf6, 0x79, 0x95, 0x3c,
0x80, 0x97, 0x5e, 0x7a, 0x65, 0x62, 0xe5, 0x45, 0x82, 0x7e, 0xfc, 0x43, 0x8c, 0x49, 0x76, 0xba,
0xe7, 0x9e, 0x73, 0xee, 0x87, 0x18, 0xfd, 0x47, 0xf0, 0x5d, 0x12, 0x2e, 0x68, 0x90, 0xda, 0x90,
0x44, 0xa0, 0x40, 0xd2, 0x0c, 0x22, 0x57, 0x24, 0xb4, 0x5e, 0xb0, 0x98, 0xd3, 0x48, 0xb8, 0x40,
0xb3, 0xa9, 0x0d, 0x8a, 0x4d, 0xa9, 0x07, 0x11, 0x24, 0x4c, 0x81, 0x4b, 0xe2, 0x44, 0x28, 0x61,
0x7c, 0xac, 0x8c, 0x84, 0xc5, 0x9c, 0x14, 0x46, 0x52, 0x1b, 0xfb, 0x13, 0x8f, 0x2b, 0x3f, 0xb5,
0x89, 0x23, 0x42, 0xea, 0x09, 0x4f, 0xd0, 0xd2, 0x6f, 0xa7, 0x97, 0xe5, 0x54, 0x0e, 0xe5, 0x57,
0xd5, 0xd3, 0xff, 0xba, 0x3f, 0x18, 0x32, 0xc7, 0xe7, 0x11, 0x24, 0xd7, 0x34, 0x0e, 0xbc, 0x42,
0x90, 0x34, 0x04, 0xc5, 0x68, 0x76, 0x74, 0xbd, 0x4f, 0x4f, 0xa5, 0x92, 0x34, 0x52, 0x3c, 0x84,
0xa3, 0xc0, 0xb7, 0x97, 0x02, 0xd2, 0xf1, 0x21, 0x64, 0xcf, 0x73, 0xa3, 0x3b, 0xa4, 0xbf, 0xb3,
0x2a, 0xcb, 0xcf, 0x39, 0x93, 0xd2, 0xb8, 0xd0, 0xdb, 0x05, 0x94, 0xcb, 0x14, 0xeb, 0xa1, 0x21,
0x1a, 0x77, 0x66, 0x5f, 0xc8, 0xfe, 0x57, 0xec, 0xba, 0x49, 0x1c, 0x78, 0x85, 0x20, 0x49, 0xe1,
0x26, 0xd9, 0x94, 0xfc, 0xb7, 0xaf, 0xc0, 0x51, 0xff, 0x40, 0x31, 0xd3, 0x58, 0xac, 0x07, 0x5a,
0xbe, 0x1e, 0xe8, 0x7b, 0xcd, 0xda, 0xb5, 0x1a, 0x9f, 0xf5, 0x96, 0xcf, 0x22, 0x77, 0x0e, 0x49,
0xaf, 0x31, 0x44, 0xe3, 0xb7, 0xe6, 0x87, 0xda, 0xde, 0xfa, 0x55, 0xc9, 0xd6, 0x76, 0x3f, 0xba,
0x47, 0x7a, 0xf7, 0x90, 0xee, 0x2f, 0x97, 0xca, 0x38, 0x3f, 0x22, 0x24, 0xaf, 0x23, 0x2c, 0xd2,
0x25, 0x5f, 0xb7, 0x3e, 0xd8, 0xde, 0x2a, 0x07, 0x74, 0x7f, 0xf4, 0x26, 0x57, 0x10, 0xca, 0x5e,
0x63, 0xf8, 0x66, 0xdc, 0x99, 0x7d, 0x22, 0x27, 0xde, 0x01, 0x39, 0xe4, 0x32, 0xdf, 0xd7, 0x8d,
0xcd, 0xdf, 0x45, 0xd6, 0xaa, 0x2a, 0xcc, 0xc9, 0x62, 0x83, 0xb5, 0xe5, 0x06, 0x6b, 0xab, 0x0d,
0xd6, 0x6e, 0x72, 0x8c, 0x16, 0x39, 0x46, 0xcb, 0x1c, 0xa3, 0x55, 0x8e, 0xd1, 0x43, 0x8e, 0xd1,
0xed, 0x23, 0xd6, 0xce, 0x5a, 0x75, 0xe3, 0x53, 0x00, 0x00, 0x00, 0xff, 0xff, 0x93, 0x68, 0xe5,
0x0d, 0xb5, 0x02, 0x00, 0x00,
// 493 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x52, 0xcf, 0x8e, 0xd3, 0x3e,
0x18, 0x8c, 0x77, 0xb5, 0x6a, 0x7f, 0x6e, 0x7f, 0xa2, 0x0a, 0x07, 0xaa, 0x1e, 0xdc, 0x52, 0x09,
0xa9, 0x1c, 0xd6, 0xa6, 0x2b, 0x84, 0x38, 0xa2, 0x70, 0xe1, 0x3f, 0x52, 0x58, 0x38, 0x20, 0x0e,
0x38, 0xc9, 0x47, 0x1a, 0x9a, 0xc4, 0x51, 0xec, 0x56, 0xda, 0x1b, 0x8f, 0xc0, 0xeb, 0x20, 0xf1,
0x00, 0x3d, 0xee, 0x71, 0x4f, 0x15, 0x0d, 0x17, 0x1e, 0x03, 0x39, 0x71, 0xd3, 0xb0, 0xbb, 0x15,
0xdc, 0xf2, 0x8d, 0x67, 0xe6, 0x9b, 0x71, 0x8c, 0x1f, 0xcd, 0x1f, 0x4a, 0x1a, 0x09, 0x36, 0x5f,
0x78, 0x90, 0xa7, 0xa0, 0x40, 0xb2, 0x25, 0xa4, 0x81, 0xc8, 0x99, 0x39, 0xe0, 0x59, 0xc4, 0x52,
0x11, 0x00, 0x5b, 0x4e, 0x3d, 0x50, 0x7c, 0xca, 0x42, 0x48, 0x21, 0xe7, 0x0a, 0x02, 0x9a, 0xe5,
0x42, 0x09, 0xfb, 0x56, 0x45, 0xa4, 0x3c, 0x8b, 0xa8, 0x26, 0x52, 0x43, 0x1c, 0x1c, 0x87, 0x91,
0x9a, 0x2d, 0x3c, 0xea, 0x8b, 0x84, 0x85, 0x22, 0x14, 0xac, 0xe4, 0x7b, 0x8b, 0x4f, 0xe5, 0x54,
0x0e, 0xe5, 0x57, 0xe5, 0x33, 0x18, 0x37, 0x16, 0xfa, 0x22, 0xd7, 0x0b, 0x2f, 0xef, 0x1a, 0xdc,
0xdf, 0x71, 0x12, 0xee, 0xcf, 0xa2, 0x14, 0xf2, 0x33, 0x96, 0xcd, 0x43, 0x0d, 0x48, 0x96, 0x80,
0xe2, 0xd7, 0xa9, 0xd8, 0x3e, 0x55, 0xbe, 0x48, 0x55, 0x94, 0xc0, 0x15, 0xc1, 0x83, 0xbf, 0x09,
0xa4, 0x3f, 0x83, 0x84, 0x5f, 0xd6, 0x8d, 0x7f, 0x21, 0xdc, 0x75, 0x2b, 0xca, 0xe3, 0x98, 0x4b,
0x69, 0x7f, 0xc4, 0x6d, 0x1d, 0x2a, 0xe0, 0x8a, 0xf7, 0xd1, 0x08, 0x4d, 0x3a, 0x27, 0xf7, 0xe8,
0xee, 0xba, 0x6a, 0x6f, 0x9a, 0xcd, 0x43, 0x0d, 0x48, 0xaa, 0xd9, 0x74, 0x39, 0xa5, 0xaf, 0xbd,
0xcf, 0xe0, 0xab, 0x97, 0xa0, 0xb8, 0x63, 0xaf, 0xd6, 0x43, 0xab, 0x58, 0x0f, 0xf1, 0x0e, 0x73,
0x6b, 0x57, 0xfb, 0x2e, 0x6e, 0xcd, 0x78, 0x1a, 0xc4, 0x90, 0xf7, 0x0f, 0x46, 0x68, 0xf2, 0x9f,
0x73, 0xc3, 0xd0, 0x5b, 0x4f, 0x2a, 0xd8, 0xdd, 0x9e, 0xdb, 0xcf, 0x71, 0x5b, 0x89, 0x4c, 0xc4,
0x22, 0x3c, 0xeb, 0x1f, 0x96, 0x61, 0x6e, 0xd3, 0x3d, 0xff, 0x8e, 0x9e, 0x1a, 0xa2, 0xd3, 0x2d,
0xd6, 0xc3, 0xf6, 0x76, 0x72, 0x6b, 0x83, 0xf1, 0x77, 0x84, 0x7b, 0xcd, 0xaa, 0x2f, 0x22, 0xa9,
0xec, 0x0f, 0x57, 0xea, 0xd2, 0x7f, 0xab, 0xab, 0xd5, 0x65, 0xd9, 0x9e, 0x49, 0xdf, 0xde, 0x22,
0x8d, 0xaa, 0xcf, 0xf0, 0x51, 0xa4, 0x20, 0x91, 0xfd, 0x83, 0xd1, 0xe1, 0xa4, 0x73, 0x72, 0x67,
0x6f, 0xf8, 0x66, 0x2e, 0xe7, 0x7f, 0xe3, 0x78, 0xf4, 0x54, 0x6b, 0xdd, 0xca, 0x62, 0xfc, 0x0d,
0xe1, 0xba, 0x95, 0xfd, 0x0e, 0x77, 0xb5, 0xfe, 0x0d, 0xc4, 0xe0, 0x2b, 0x91, 0x9b, 0xe8, 0xa3,
0xa6, 0xbf, 0x7e, 0x90, 0x3a, 0xe8, 0xab, 0x06, 0xcf, 0xe9, 0x15, 0xeb, 0x61, 0xb7, 0x89, 0xb8,
0x7f, 0xf8, 0xd8, 0x6f, 0x71, 0x47, 0x89, 0x58, 0xbf, 0x90, 0x48, 0xa4, 0xdb, 0xd8, 0xe4, 0x3a,
0xdb, 0xd3, 0x9a, 0xe6, 0xdc, 0x34, 0x79, 0x3b, 0x3b, 0x4c, 0xba, 0x4d, 0x1f, 0xe7, 0x78, 0xb5,
0x21, 0xd6, 0xf9, 0x86, 0x58, 0x17, 0x1b, 0x62, 0x7d, 0x29, 0x08, 0x5a, 0x15, 0x04, 0x9d, 0x17,
0x04, 0x5d, 0x14, 0x04, 0xfd, 0x28, 0x08, 0xfa, 0xfa, 0x93, 0x58, 0xef, 0x5b, 0xe6, 0x36, 0x7e,
0x07, 0x00, 0x00, 0xff, 0xff, 0xcb, 0xb4, 0x5d, 0x60, 0xe2, 0x03, 0x00, 0x00,
}

View File

@ -21,6 +21,7 @@ syntax = 'proto2';
package k8s.io.api.node.v1beta1;
import "k8s.io/api/core/v1/generated.proto";
import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto";
import "k8s.io/apimachinery/pkg/runtime/generated.proto";
import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto";
@ -51,6 +52,15 @@ message RuntimeClass {
// The Handler must conform to the DNS Label (RFC 1123) requirements, and is
// immutable.
optional string handler = 2;
// Topology describes the set of nodes in the cluster that support this
// RuntimeClass. The rules are applied applied to pods running with this
// RuntimeClass and semantically merged with other scheduling constraints on
// the pod.
// If topology is nil, this RuntimeClass is assumed to be supported by all
// nodes.
// +optional
optional Topology topology = 3;
}
// RuntimeClassList is a list of RuntimeClass objects.
@ -64,3 +74,21 @@ message RuntimeClassList {
repeated RuntimeClass items = 2;
}
// Topology specifies the scheduling constraints for nodes supporting a
// RuntimeClass.
message Topology {
// NodeSelector selects the set of nodes that support this RuntimeClass.
// Pods using this RuntimeClass can only be scheduled to a node matched by
// this selector. The NodeSelector is intersected (AND) with a pod's other
// NodeAffinity or NodeSelector requirements.
// A nil NodeSelector selects all nodes.
// +optional
optional k8s.io.api.core.v1.NodeSelector nodeSelector = 1;
// Tolerations are appended (excluding duplicates) to pods running with this
// RuntimeClass during admission, effectively unioning the set of nodes
// tolerated by the pod and the RuntimeClass.
// +optional
repeated k8s.io.api.core.v1.Toleration tolerations = 2;
}

View File

@ -31,7 +31,7 @@ var map_RuntimeClass = map[string]string{
"": "RuntimeClass defines a class of container runtime supported in the cluster. The RuntimeClass is used to determine which container runtime is used to run all containers in a pod. RuntimeClasses are (currently) manually defined by a user or cluster provisioner, and referenced in the PodSpec. The Kubelet is responsible for resolving the RuntimeClassName reference before running the pod. For more details, see https://git.k8s.io/enhancements/keps/sig-node/runtime-class.md",
"metadata": "More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata",
"handler": "Handler specifies the underlying runtime and configuration that the CRI implementation will use to handle pods of this class. The possible values are specific to the node & CRI configuration. It is assumed that all handlers are available on every node, and handlers of the same name are equivalent on every node. For example, a handler called \"runc\" might specify that the runc OCI runtime (using native Linux containers) will be used to run the containers in a pod. The Handler must conform to the DNS Label (RFC 1123) requirements, and is immutable.",
"topology": "Topology describes the set of nodes in the cluster that support this RuntimeClass. The rules are applied to the pod during scheduling time. If topology is nil, this RuntimeClass is assumed to be supported by all nodes. pods to the right node",
"topology": "Topology describes the set of nodes in the cluster that support this RuntimeClass. The rules are applied applied to pods running with this RuntimeClass and semantically merged with other scheduling constraints on the pod. If topology is nil, this RuntimeClass is assumed to be supported by all nodes.",
}
func (RuntimeClass) SwaggerDoc() map[string]string {
@ -50,8 +50,8 @@ func (RuntimeClassList) SwaggerDoc() map[string]string {
var map_Topology = map[string]string{
"": "Topology specifies the scheduling constraints for nodes supporting a RuntimeClass.",
"nodeSelector": "nodeSelector selects the set of nodes that support this RuntimeClass. Pods using this RuntimeClass can only be scheduled to a node matched by this selector. The nodeSelector is intersected (AND) with a pod's other node affinity or node selector requirements. A nil nodeSelector selects all nodes.",
"tolerations": "tolerations adds tolerations to pods running with this RuntimeClass. the tolerations are appended (excluding duplicates) to the pod's tolerations during admission.",
"nodeSelector": "NodeSelector selects the set of nodes that support this RuntimeClass. Pods using this RuntimeClass can only be scheduled to a node matched by this selector. The NodeSelector is intersected (AND) with a pod's other NodeAffinity or NodeSelector requirements. A nil NodeSelector selects all nodes.",
"tolerations": "Tolerations are appended (excluding duplicates) to pods running with this RuntimeClass during admission, effectively unioning the set of nodes tolerated by the pod and the RuntimeClass.",
}
func (Topology) SwaggerDoc() map[string]string {