Skip to content

Commit 82f0790

Browse files
committed
dra-evolution: migrate pod-multi-net-*.yaml to relevant types
Signed-off-by: Kevin Klues <kklues@nvidia.com>
1 parent ddd1e53 commit 82f0790

9 files changed

+129
-119
lines changed
Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# A Pod with one secondary SR-IOV VF interface.
22
#
3-
apiVersion: v1
3+
apiVersion: resource.k8s.io/v1alpha2
44
kind: Pod
55
metadata:
66
name: my-pod
@@ -13,7 +13,8 @@ spec:
1313
requests:
1414
cpu: 10m
1515
memory: 10Mi
16-
deviceClaims:
17-
devices:
18-
- name: netdev0 # not used, but required
19-
class: example.com-sriov-vf
16+
resourceClaims:
17+
- name: netdev0
18+
source:
19+
forClass:
20+
className: example.com-sriov-vf
Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# A Pod with two secondary SR-IOV VF interfaces, and one
22
# secondary SR-IOV PF interface.
33
#
4-
apiVersion: v1
4+
apiVersion: resource.k8s.io/v1alpha1
55
kind: Pod
66
metadata:
77
name: my-pod
@@ -15,10 +15,15 @@ spec:
1515
cpu: 10m
1616
memory: 10Mi
1717
deviceClaims:
18-
devices:
19-
- name: netdev0 # not used, but required
20-
class: example.com-sriov-vf
21-
- name: netdev1 # not used, but required
22-
class: example.com-sriov-vf
23-
- name: netdev2 # not used, but required
24-
class: example.com-sriov-pf
18+
- name: netdev0 # not used, but required
19+
source:
20+
forClass:
21+
className: example.com-sriov-vf
22+
- name: netdev1 # not used, but required
23+
source:
24+
forClass:
25+
className: example.com-sriov-vf
26+
- name: netdev2 # not used, but required
27+
source:
28+
forClass:
29+
className: example.com-sriov-pf
Lines changed: 12 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,20 @@
11
# A Pod with two secondary SR-IOV VF interfaces, but
22
# both from the same physical card (not necessarily the same PF though).
33
#
4-
apiVersion: devmgmtproto.k8s.io/v1alpha1
5-
kind: DeviceClaim
4+
apiVersion: resource.k8s.io/v1alpha1
5+
kind: ResourceClaimTemplate
66
metadata:
7-
name: template-example.com-sriov-two-vfs-same-card
7+
name: example.com-sriov-two-vfs-same-card
88
namespace: default
99
spec:
1010
devices:
11-
- name: netdevs # required but not used
12-
allOf:
13-
- class: example.com-sriov-vf
14-
matchAttributes:
15-
- hwdevname
16-
requests:
17-
devices: 2
11+
- resourceClassName: example.com-sriov-vf
12+
match:
13+
- attribute: hwdevname.example.com-sriov
14+
count:
15+
minimum: 2
1816
---
19-
apiVersion: v1
17+
apiVersion: resource.k8s.io/v1alpha1
2018
kind: Pod
2119
metadata:
2220
name: multi-net
@@ -29,6 +27,6 @@ spec:
2927
requests:
3028
cpu: 10m
3129
memory: 10Mi
32-
deviceClaims:
33-
template:
34-
claimName: template-example.com-sriov-two-vfs-same-card
30+
resourceClaims:
31+
- source:
32+
resourceClaimTemplateName: example.com-sriov-two-vfs-same-card

dra-evolution/testdata/pod-multi-net-3.yaml

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -2,22 +2,22 @@
22
# both from the same PF on the same card ("pf" is just
33
# an index, so it needs the card name to qualify it).
44
#
5-
apiVersion: devmgmtproto.k8s.io/v1alpha1
6-
kind: DeviceClaim
5+
apiVersion: resource.k8s.io/v1alpha2
6+
kind: ResourceClaimTemplate
77
metadata:
8-
name: template-example.com-sriov-two-vfs-same-pf
8+
name: example.com-sriov-two-vfs-same-pf
99
namespace: default
1010
spec:
11-
devices:
12-
- name: netdevs # required but not used
13-
allOf:
14-
- class: example.com-sriov-vf
15-
matchAttributes:
16-
- hwdevname
17-
- pf
18-
requests:
19-
devices: 2
11+
spec:
12+
requests:
13+
- resourceClassName: example.com-sriov-vf
14+
match:
15+
- attribute: hwdevname.example.com-sriov
16+
- attribute: pf.example.com-sriov
17+
count:
18+
minimum: 2
2019
---
20+
apiVersion: resource.k8s.io/v1alpha2
2121
apiVersion: v1
2222
kind: Pod
2323
metadata:
@@ -31,6 +31,6 @@ spec:
3131
requests:
3232
cpu: 10m
3333
memory: 10Mi
34-
deviceClaims:
35-
template:
36-
claimName: template-example.com-sriov-two-vfs-same-pf
34+
resourceClaims:
35+
- source:
36+
resourceClaimTemplateName: example.com-sriov-two-vfs-same-pf

dra-evolution/testdata/pod-multi-net-4.yaml

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -3,20 +3,22 @@
33
# since example.org does things differently. But if we can agree on the right
44
# conventions, we will be better off.
55
#
6-
apiVersion: devmgmtproto.k8s.io/v1alpha1
7-
kind: DeviceClaim
6+
apiVersion: resource.k8s.io/v1alpha2
7+
kind: ResourceClaimTemplate
88
metadata:
9-
name: template-sriov-two-vfs
9+
name: sriov-two-vfs
1010
namespace: default
1111
spec:
12-
devices:
13-
- name: netdevs # required but not used
14-
allOf:
15-
- class: sriov-nic # this is our cross-driver label selector based class
16-
constraints: "device.sriovType == 'vf'"
17-
devices: 2
12+
spec:
13+
requests:
14+
- resourceClassName: sriov-nic # this is our cross-driver label selector based class
15+
filter:
16+
- device:
17+
selector: "device.stringAttributes['type.nic.k8s.io']== 'vf'"
18+
count:
19+
minimum: 2
1820
---
19-
apiVersion: v1
21+
apiVersion: resource.k8s.io/v1alpha2
2022
kind: Pod
2123
metadata:
2224
name: multi-net
@@ -29,6 +31,6 @@ spec:
2931
requests:
3032
cpu: 10m
3133
memory: 10Mi
32-
deviceClaims:
33-
template:
34-
claimName: template-sriov-two-vfs
34+
resourceClaims:
35+
- source:
36+
resourceClaimTemplateName: sriov-two-vfs

dra-evolution/testdata/pod-multi-net-5.yaml

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -3,18 +3,18 @@
33
# example.com, we need a different style of claim. This uses per-device
44
# requests. Seems worse to me.
55
#
6-
apiVersion: devmgmtproto.k8s.io/v1alpha1
7-
kind: DeviceClaim
6+
apiVersion: resource.k8s.io/v1alpha2
7+
kind: ResourceClaimTemplate
88
metadata:
9-
name: template-example.org-sriov-vf
9+
name: example.org-sriov-vf
1010
namespace: default
1111
spec:
12-
devices:
13-
- name: netdevs # required but not used
14-
allOf:
15-
- class: example.org-sriov-nic
16-
requests:
17-
vf: 1
12+
spec:
13+
requests:
14+
- resourceClassName: example.org-sriov-nic
15+
filter:
16+
- device:
17+
selector: "device.quantityAttributes['vf.example.org-sriov'].compareTo(quantity('1')) >= 0"
1818
---
1919
apiVersion: v1
2020
kind: Pod
@@ -29,6 +29,6 @@ spec:
2929
requests:
3030
cpu: 10m
3131
memory: 10Mi
32-
deviceClaims:
33-
template:
34-
claimName: template-example.org-sriov-vf
32+
resourceClaims:
33+
- source:
34+
resourceClaimTemplateName: example.org-sriov-vf

dra-evolution/testdata/pod-multi-net-6.yaml

Lines changed: 27 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -27,32 +27,37 @@ metadata:
2727
name: greennet
2828
namespace: default
2929
---
30-
apiVersion: devmgmtproto.k8s.io/v1alpha1
31-
kind: DeviceClaim
30+
apiVersion: resource.k8s.io/v1alpha2
31+
kind: ResourceClaimTemplate
3232
metadata:
33-
name: template-sriov-blue-red-green
33+
name: sriov-blue-red-green
3434
namespace: default
3535
spec:
36-
devices:
37-
- name: ip-networks
38-
allOf:
39-
- class: sriov-nic
36+
spec:
37+
requests:
38+
- resourceClassName: sriov-nic
4039
config:
41-
- apiVersion: fabric.example.com/v1alpha1
42-
kind: IPNetwork
43-
name: bluenet
44-
- class: sriov-nic
40+
vendor:
41+
- parameters:
42+
apiVersion: fabric.example.com/v1alpha1
43+
kind: IPNetwork
44+
name: bluenet
45+
- resourceClassName: sriov-nic
4546
config:
46-
- apiVersion: fabric.example.com/v1alpha1
47-
kind: IPNetwork
48-
name: rednet
49-
- class: sriov-nic
47+
vendor:
48+
- parameters:
49+
apiVersion: fabric.example.com/v1alpha1
50+
kind: IPNetwork
51+
name: rednet
52+
- resourceClassName: sriov-nic
5053
config:
51-
- apiVersion: fabric.example.com/v1alpha1
52-
kind: IPNetwork
53-
name: greennet
54+
vendor:
55+
- parameters:
56+
apiVersion: fabric.example.com/v1alpha1
57+
kind: IPNetwork
58+
name: greennet
5459
---
55-
apiVersion: v1
60+
apiVersion: resource.k8s.io/v1alpha2
5661
kind: Pod
5762
metadata:
5863
name: blue-red-green
@@ -65,6 +70,6 @@ spec:
6570
requests:
6671
cpu: 10m
6772
memory: 10Mi
68-
deviceClaims:
69-
template:
70-
claimName: template-sriov-blue-red-green
73+
resourceClaims:
74+
- source:
75+
resourceClaimTemplateName: sriov-blue-red-green

dra-evolution/testdata/pod-multi-net-7.yaml

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -3,21 +3,21 @@
33
# Probably in real life this is almost never needed, because you would
44
# usually only have on vendor's cards in a given node.
55
#
6-
apiVersion: devmgmtproto.k8s.io/v1alpha1
7-
kind: DeviceClaim
6+
apiVersion: resource.k8s.io/v1alpha2
7+
kind: ResourceClaimTemplate
88
metadata:
9-
name: template-sriov-four-same-vendor
9+
name: sriov-four-same-vendor
1010
namespace: default
1111
spec:
12-
devices:
13-
- name: netdevs # required but not used
14-
allOf:
15-
- class: sriov-nic
16-
matchAttributes:
17-
- vendor
18-
devices: 4
12+
spec:
13+
requests:
14+
- resourceClassName: sriov-nic
15+
match:
16+
- attribute: vendor.dra.k8s.io
17+
count:
18+
minimum: 4
1919
---
20-
apiVersion: v1
20+
apiVersion: resource.k8s.io/v1alpha2
2121
kind: Pod
2222
metadata:
2323
name: multi-net
@@ -30,6 +30,6 @@ spec:
3030
requests:
3131
cpu: 10m
3232
memory: 10Mi
33-
deviceClaims:
34-
template:
35-
claimName: template-sriov-four-same-vendor
33+
resourceClaims:
34+
- source:
35+
resourceClaimTemplateName: sriov-four-same-vendor

dra-evolution/testdata/pod-multi-net-8.yaml

Lines changed: 15 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -4,23 +4,22 @@
44
# NOTE: `distinctAttributes` is not actually in the model yet. Is it
55
# useful?
66
#
7-
apiVersion: devmgmtproto.k8s.io/v1alpha1
8-
kind: DeviceClaim
7+
apiVersion: resource.k8s.io/v1alpha2
8+
kind: ResourceClaimTemplate
99
metadata:
10-
name: template-sriov-four-same-vendor-diff-cards
10+
name: sriov-four-same-vendor-diff-cards
1111
namespace: default
1212
spec:
13-
devices:
14-
- name: netdevs # required but not used
15-
allOf:
16-
- class: sriov-nic
17-
matchAttributes:
18-
- vendor
19-
distinctAttributes:
20-
- hwdevname
21-
devices: 4
13+
spec:
14+
requests:
15+
- resourceClassName: sriov-nic
16+
match:
17+
- attribute: vendor.dra.k8s.io
18+
#- expression: "device.distinctAttributes('hwdevname.dra.k8s.io')"
19+
count:
20+
minimum: 4
2221
---
23-
apiVersion: v1
22+
apiVersion: resource.k8s.io/v1alpha2
2423
kind: Pod
2524
metadata:
2625
name: multi-net
@@ -33,6 +32,6 @@ spec:
3332
requests:
3433
cpu: 10m
3534
memory: 10Mi
36-
deviceClaims:
37-
template:
38-
claimName: template-sriov-four-same-vendor-diff-cards
35+
resourceClaims:
36+
- source:
37+
resourceClaimTemplateName: sriov-four-same-vendor-diff-cards

0 commit comments

Comments
 (0)