1+ ---
2+ apiVersion : apiextensions.k8s.io/v1
3+ kind : CustomResourceDefinition
4+ metadata :
5+ annotations :
6+ api-approved.kubernetes.io : unapproved, experimental-only
7+ controller-gen.kubebuilder.io/version : v0.16.1
8+ name : inferencepools.inference.networking.k8s.io
9+ spec :
10+ group : inference.networking.k8s.io
11+ names :
12+ kind : InferencePool
13+ listKind : InferencePoolList
14+ plural : inferencepools
15+ singular : inferencepool
16+ scope : Namespaced
17+ versions :
18+ - name : v1
19+ schema :
20+ openAPIV3Schema :
21+ description : |
22+ InferencePool is the Schema for the InferencePools API.
23+ properties :
24+ apiVersion :
25+ description : |-
26+ APIVersion defines the versioned schema of this representation of an object.
27+ Servers should convert recognized schemas to the latest internal value, and
28+ may reject unrecognized values.
29+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
30+ type : string
31+ kind :
32+ description : |-
33+ Kind is a string value representing the REST resource this object represents.
34+ Servers may infer this from the endpoint the client submits requests to.
35+ Cannot be updated.
36+ In CamelCase.
37+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
38+ type : string
39+ metadata :
40+ type : object
41+ spec :
42+ description : InferencePoolSpec defines the desired state of InferencePool
43+ properties :
44+ extensionRef :
45+ description : Extension configures an endpoint picker as an extension
46+ service.
47+ properties :
48+ failureMode :
49+ default : FailClose
50+ description : |-
51+ Configures how the gateway handles the case when the extension is not responsive.
52+ Defaults to failClose.
53+ enum :
54+ - FailOpen
55+ - FailClose
56+ type : string
57+ group :
58+ default : " "
59+ description : |-
60+ Group is the group of the referent.
61+ The default value is "", representing the Core API group.
62+ maxLength : 253
63+ pattern : ^$|^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
64+ type : string
65+ kind :
66+ default : Service
67+ description : |-
68+ Kind is the Kubernetes resource kind of the referent.
69+
70+ Defaults to "Service" when not specified.
71+
72+ ExternalName services can refer to CNAME DNS records that may live
73+ outside of the cluster and as such are difficult to reason about in
74+ terms of conformance. They also may not be safe to forward to (see
75+ CVE-2021-25740 for more information). Implementations MUST NOT
76+ support ExternalName Services.
77+ maxLength : 63
78+ minLength : 1
79+ pattern : ^[a-zA-Z]([-a-zA-Z0-9]*[a-zA-Z0-9])?$
80+ type : string
81+ name :
82+ description : Name is the name of the referent.
83+ maxLength : 253
84+ minLength : 1
85+ type : string
86+ portNumber :
87+ description : |-
88+ The port number on the service running the extension. When unspecified,
89+ implementations SHOULD infer a default value of 9002 when the Kind is
90+ Service.
91+ format : int32
92+ maximum : 65535
93+ minimum : 1
94+ type : integer
95+ required :
96+ - name
97+ type : object
98+ selector :
99+ additionalProperties :
100+ description : |-
101+ LabelValue is the value of a label. This is used for validation
102+ of maps. This matches the Kubernetes label validation rules:
103+ * must be 63 characters or less (can be empty),
104+ * unless empty, must begin and end with an alphanumeric character ([a-z0-9A-Z]),
105+ * could contain dashes (-), underscores (_), dots (.), and alphanumerics between.
106+
107+ Valid values include:
108+
109+ * MyValue
110+ * my.name
111+ * 123-my-value
112+ maxLength : 63
113+ minLength : 0
114+ pattern : ^(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?$
115+ type : string
116+ description : |-
117+ Selector defines a map of labels to watch model server Pods
118+ that should be included in the InferencePool.
119+ In some cases, implementations may translate this field to a Service selector, so this matches the simple
120+ map used for Service selectors instead of the full Kubernetes LabelSelector type.
121+ If specified, it will be applied to match the model server pods in the same namespace as the InferencePool.
122+ Cross namesoace selector is not supported.
123+ type : object
124+ targetPortNumber :
125+ description : |-
126+ TargetPortNumber defines the port number to access the selected model server Pods.
127+ The number must be in the range 1 to 65535.
128+ format : int32
129+ maximum : 65535
130+ minimum : 1
131+ type : integer
132+ required :
133+ - extensionRef
134+ - selector
135+ - targetPortNumber
136+ type : object
137+ status :
138+ default :
139+ parent :
140+ - conditions :
141+ - lastTransitionTime : " 1970-01-01T00:00:00Z"
142+ message : Waiting for controller
143+ reason : Pending
144+ status : Unknown
145+ type : Accepted
146+ parentRef :
147+ kind : Status
148+ name : default
149+ description : Status defines the observed state of InferencePool.
150+ properties :
151+ parent :
152+ description : |-
153+ Parents is a list of parent resources (usually Gateways) that are
154+ associated with the InferencePool, and the status of the InferencePool with respect to
155+ each parent.
156+
157+ A maximum of 32 Gateways will be represented in this list. When the list contains
158+ `kind: Status, name: default`, it indicates that the InferencePool is not
159+ associated with any Gateway and a controller must perform the following:
160+
161+ - Remove the parent when setting the "Accepted" condition.
162+ - Add the parent when the controller will no longer manage the InferencePool
163+ and no other parents exist.
164+ items :
165+ description : PoolStatus defines the observed state of InferencePool
166+ from a Gateway.
167+ properties :
168+ conditions :
169+ default :
170+ - lastTransitionTime : " 1970-01-01T00:00:00Z"
171+ message : Waiting for controller
172+ reason : Pending
173+ status : Unknown
174+ type : Accepted
175+ description : |-
176+ Conditions track the state of the InferencePool.
177+
178+ Known condition types are:
179+
180+ * "Accepted"
181+ * "ResolvedRefs"
182+ items :
183+ description : Condition contains details for one aspect of
184+ the current state of this API Resource.
185+ properties :
186+ lastTransitionTime :
187+ description : |-
188+ lastTransitionTime is the last time the condition transitioned from one status to another.
189+ This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
190+ format : date-time
191+ type : string
192+ message :
193+ description : |-
194+ message is a human readable message indicating details about the transition.
195+ This may be an empty string.
196+ maxLength : 32768
197+ type : string
198+ observedGeneration :
199+ description : |-
200+ observedGeneration represents the .metadata.generation that the condition was set based upon.
201+ For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
202+ with respect to the current state of the instance.
203+ format : int64
204+ minimum : 0
205+ type : integer
206+ reason :
207+ description : |-
208+ reason contains a programmatic identifier indicating the reason for the condition's last transition.
209+ Producers of specific condition types may define expected values and meanings for this field,
210+ and whether the values are considered a guaranteed API.
211+ The value should be a CamelCase string.
212+ This field may not be empty.
213+ maxLength : 1024
214+ minLength : 1
215+ pattern : ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
216+ type : string
217+ status :
218+ description : status of the condition, one of True, False,
219+ Unknown.
220+ enum :
221+ - " True"
222+ - " False"
223+ - Unknown
224+ type : string
225+ type :
226+ description : type of condition in CamelCase or in foo.example.com/CamelCase.
227+ maxLength : 316
228+ pattern : ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
229+ type : string
230+ required :
231+ - lastTransitionTime
232+ - message
233+ - reason
234+ - status
235+ - type
236+ type : object
237+ maxItems : 8
238+ type : array
239+ x-kubernetes-list-map-keys :
240+ - type
241+ x-kubernetes-list-type : map
242+ parentRef :
243+ description : GatewayRef indicates the gateway that observed
244+ state of InferencePool.
245+ properties :
246+ group :
247+ default : gateway.networking.k8s.io
248+ description : Group is the group of the referent.
249+ maxLength : 253
250+ pattern : ^$|^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
251+ type : string
252+ kind :
253+ default : Gateway
254+ description : Kind is kind of the referent. For example "Gateway".
255+ maxLength : 63
256+ minLength : 1
257+ pattern : ^[a-zA-Z]([-a-zA-Z0-9]*[a-zA-Z0-9])?$
258+ type : string
259+ name :
260+ description : Name is the name of the referent.
261+ maxLength : 253
262+ minLength : 1
263+ type : string
264+ namespace :
265+ description : |-
266+ Namespace is the namespace of the referent. If not present,
267+ the namespace of the referent is assumed to be the same as
268+ the namespace of the referring object.
269+ maxLength : 63
270+ minLength : 1
271+ pattern : ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
272+ type : string
273+ required :
274+ - name
275+ type : object
276+ required :
277+ - parentRef
278+ type : object
279+ maxItems : 32
280+ type : array
281+ type : object
282+ type : object
283+ served : true
284+ storage : true
285+ subresources :
286+ status : {}
0 commit comments