Skip to content

Commit 9801a5a

Browse files
authored
add device plugins operator, qat and sgx helm charts (#2)
1 parent 6d6e28b commit 9801a5a

23 files changed

+2172
-0
lines changed
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
# Patterns to ignore when building packages.
2+
# This supports shell glob matching, relative path matching, and
3+
# negation (prefixed with !). Only one pattern per line.
4+
.DS_Store
5+
# Common VCS dirs
6+
.git/
7+
.gitignore
8+
.bzr/
9+
.bzrignore
10+
.hg/
11+
.hgignore
12+
.svn/
13+
# Common backup files
14+
*.swp
15+
*.bak
16+
*.tmp
17+
*.orig
18+
*~
19+
# Various IDEs
20+
.project
21+
.idea/
22+
*.tmproj
23+
.vscode/
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
apiVersion: v2
2+
name: intel-device-plugins-operator
3+
description: A Helm chart for Intel Device Plugins Operator for Kubernetes
4+
type: application
5+
version: 0.24.0
6+
appVersion: "0.24.0"
Lines changed: 134 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,134 @@
1+
---
2+
apiVersion: apiextensions.k8s.io/v1
3+
kind: CustomResourceDefinition
4+
metadata:
5+
annotations:
6+
controller-gen.kubebuilder.io/version: v0.9.2
7+
creationTimestamp: null
8+
name: dlbdeviceplugins.deviceplugin.intel.com
9+
spec:
10+
group: deviceplugin.intel.com
11+
names:
12+
kind: DlbDevicePlugin
13+
listKind: DlbDevicePluginList
14+
plural: dlbdeviceplugins
15+
singular: dlbdeviceplugin
16+
scope: Cluster
17+
versions:
18+
- additionalPrinterColumns:
19+
- jsonPath: .status.desiredNumberScheduled
20+
name: Desired
21+
type: integer
22+
- jsonPath: .status.numberReady
23+
name: Ready
24+
type: integer
25+
- jsonPath: .spec.nodeSelector
26+
name: Node Selector
27+
type: string
28+
- jsonPath: .metadata.creationTimestamp
29+
name: Age
30+
type: date
31+
name: v1
32+
schema:
33+
openAPIV3Schema:
34+
description: DlbDevicePlugin is the Schema for the dlbdeviceplugins API. It
35+
represents the DLB device plugin responsible for advertising Intel DLB hardware
36+
resources to the kubelet.
37+
properties:
38+
apiVersion:
39+
description: 'APIVersion defines the versioned schema of this representation
40+
of an object. Servers should convert recognized schemas to the latest
41+
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
42+
type: string
43+
kind:
44+
description: 'Kind is a string value representing the REST resource this
45+
object represents. Servers may infer this from the endpoint the client
46+
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
47+
type: string
48+
metadata:
49+
type: object
50+
spec:
51+
description: DlbDevicePluginSpec defines the desired state of DlbDevicePlugin.
52+
properties:
53+
image:
54+
description: Image is a container image with DLB device plugin executable.
55+
type: string
56+
logLevel:
57+
description: LogLevel sets the plugin's log level.
58+
minimum: 0
59+
type: integer
60+
nodeSelector:
61+
additionalProperties:
62+
type: string
63+
description: NodeSelector provides a simple way to constrain device
64+
plugin pods to nodes with particular labels.
65+
type: object
66+
type: object
67+
status:
68+
description: DlbDevicePluginStatus defines the observed state of DlbDevicePlugin.
69+
properties:
70+
controlledDaemonSet:
71+
description: ControlledDaemoSet references the DaemonSet controlled
72+
by the operator.
73+
properties:
74+
apiVersion:
75+
description: API version of the referent.
76+
type: string
77+
fieldPath:
78+
description: 'If referring to a piece of an object instead of
79+
an entire object, this string should contain a valid JSON/Go
80+
field access statement, such as desiredState.manifest.containers[2].
81+
For example, if the object reference is to a container within
82+
a pod, this would take on a value like: "spec.containers{name}"
83+
(where "name" refers to the name of the container that triggered
84+
the event) or if no container name is specified "spec.containers[2]"
85+
(container with index 2 in this pod). This syntax is chosen
86+
only to have some well-defined way of referencing a part of
87+
an object. TODO: this design is not final and this field is
88+
subject to change in the future.'
89+
type: string
90+
kind:
91+
description: 'Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
92+
type: string
93+
name:
94+
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
95+
type: string
96+
namespace:
97+
description: 'Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/'
98+
type: string
99+
resourceVersion:
100+
description: 'Specific resourceVersion to which this reference
101+
is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency'
102+
type: string
103+
uid:
104+
description: 'UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids'
105+
type: string
106+
type: object
107+
x-kubernetes-map-type: atomic
108+
desiredNumberScheduled:
109+
description: The total number of nodes that should be running the
110+
device plugin pod (including nodes correctly running the device
111+
plugin pod).
112+
format: int32
113+
type: integer
114+
nodeNames:
115+
description: The list of Node names where the device plugin pods are
116+
running.
117+
items:
118+
type: string
119+
type: array
120+
numberReady:
121+
description: The number of nodes that should be running the device
122+
plugin pod and have one or more of the device plugin pod running
123+
and ready.
124+
format: int32
125+
type: integer
126+
required:
127+
- desiredNumberScheduled
128+
- numberReady
129+
type: object
130+
type: object
131+
served: true
132+
storage: true
133+
subresources:
134+
status: {}
Lines changed: 148 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,148 @@
1+
---
2+
apiVersion: apiextensions.k8s.io/v1
3+
kind: CustomResourceDefinition
4+
metadata:
5+
annotations:
6+
controller-gen.kubebuilder.io/version: v0.9.2
7+
creationTimestamp: null
8+
name: dsadeviceplugins.deviceplugin.intel.com
9+
spec:
10+
group: deviceplugin.intel.com
11+
names:
12+
kind: DsaDevicePlugin
13+
listKind: DsaDevicePluginList
14+
plural: dsadeviceplugins
15+
singular: dsadeviceplugin
16+
scope: Cluster
17+
versions:
18+
- additionalPrinterColumns:
19+
- jsonPath: .status.desiredNumberScheduled
20+
name: Desired
21+
type: integer
22+
- jsonPath: .status.numberReady
23+
name: Ready
24+
type: integer
25+
- jsonPath: .spec.nodeSelector
26+
name: Node Selector
27+
type: string
28+
- jsonPath: .metadata.creationTimestamp
29+
name: Age
30+
type: date
31+
name: v1
32+
schema:
33+
openAPIV3Schema:
34+
description: DsaDevicePlugin is the Schema for the dsadeviceplugins API. It
35+
represents the DSA device plugin responsible for advertising Intel DSA hardware
36+
resources to the kubelet.
37+
properties:
38+
apiVersion:
39+
description: 'APIVersion defines the versioned schema of this representation
40+
of an object. Servers should convert recognized schemas to the latest
41+
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
42+
type: string
43+
kind:
44+
description: 'Kind is a string value representing the REST resource this
45+
object represents. Servers may infer this from the endpoint the client
46+
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
47+
type: string
48+
metadata:
49+
type: object
50+
spec:
51+
description: DsaDevicePluginSpec defines the desired state of DsaDevicePlugin.
52+
properties:
53+
image:
54+
description: Image is a container image with DSA device plugin executable.
55+
type: string
56+
initImage:
57+
description: InitImage is an initcontainer image to configure and
58+
enable DSA devices and workqueues with idxd-config (accel-config)
59+
utility
60+
type: string
61+
logLevel:
62+
description: LogLevel sets the plugin's log level.
63+
minimum: 0
64+
type: integer
65+
nodeSelector:
66+
additionalProperties:
67+
type: string
68+
description: NodeSelector provides a simple way to constrain device
69+
plugin pods to nodes with particular labels.
70+
type: object
71+
provisioningConfig:
72+
description: ProvisioningConfig is a ConfigMap used to pass the DSA
73+
devices and workqueues configuration into idxd-config initcontainer.
74+
type: string
75+
sharedDevNum:
76+
description: SharedDevNum is a number of containers that can share
77+
the same DSA device.
78+
minimum: 1
79+
type: integer
80+
type: object
81+
status:
82+
description: DsaDevicePluginStatus defines the observed state of DsaDevicePlugin.
83+
properties:
84+
controlledDaemonSet:
85+
description: ControlledDaemoSet references the DaemonSet controlled
86+
by the operator.
87+
properties:
88+
apiVersion:
89+
description: API version of the referent.
90+
type: string
91+
fieldPath:
92+
description: 'If referring to a piece of an object instead of
93+
an entire object, this string should contain a valid JSON/Go
94+
field access statement, such as desiredState.manifest.containers[2].
95+
For example, if the object reference is to a container within
96+
a pod, this would take on a value like: "spec.containers{name}"
97+
(where "name" refers to the name of the container that triggered
98+
the event) or if no container name is specified "spec.containers[2]"
99+
(container with index 2 in this pod). This syntax is chosen
100+
only to have some well-defined way of referencing a part of
101+
an object. TODO: this design is not final and this field is
102+
subject to change in the future.'
103+
type: string
104+
kind:
105+
description: 'Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
106+
type: string
107+
name:
108+
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
109+
type: string
110+
namespace:
111+
description: 'Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/'
112+
type: string
113+
resourceVersion:
114+
description: 'Specific resourceVersion to which this reference
115+
is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency'
116+
type: string
117+
uid:
118+
description: 'UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids'
119+
type: string
120+
type: object
121+
x-kubernetes-map-type: atomic
122+
desiredNumberScheduled:
123+
description: The total number of nodes that should be running the
124+
device plugin pod (including nodes correctly running the device
125+
plugin pod).
126+
format: int32
127+
type: integer
128+
nodeNames:
129+
description: The list of Node names where the device plugin pods are
130+
running.
131+
items:
132+
type: string
133+
type: array
134+
numberReady:
135+
description: The number of nodes that should be running the device
136+
plugin pod and have one or more of the device plugin pod running
137+
and ready.
138+
format: int32
139+
type: integer
140+
required:
141+
- desiredNumberScheduled
142+
- numberReady
143+
type: object
144+
type: object
145+
served: true
146+
storage: true
147+
subresources:
148+
status: {}

0 commit comments

Comments
 (0)