1apiVersion: apiextensions.k8s.io/v1
2kind: CustomResourceDefinition
3metadata:
4 name: nodedisplayconfigs.display.edge.ncr.com
5 annotations:
6 controller-gen.kubebuilder.io/version: (unknown)
7spec:
8 group: display.edge.ncr.com
9 names:
10 kind: NodeDisplayConfig
11 listKind: NodeDisplayConfigList
12 plural: nodedisplayconfigs
13 shortNames:
14 - ndcs
15 - ndc
16 - display
17 - displays
18 singular: nodedisplayconfig
19 scope: Cluster
20 versions:
21 - name: v1
22 additionalPrinterColumns:
23 - name: Enabled
24 type: boolean
25 jsonPath: .status.enabled
26 - name: Config
27 type: boolean
28 jsonPath: .status.config
29 - name: Default
30 type: boolean
31 jsonPath: .status.default
32 - name: Displays
33 type: string
34 priority: 1
35 jsonPath: .status.applied.displays
36 - name: Status
37 type: string
38 jsonPath: .status.conditions[?(@.type=="DisplayManagerConfigured")].reason
39 - name: Message
40 type: string
41 priority: 1
42 jsonPath: .status.conditions[?(@.type=="DisplayManagerConfigured")].message
43 - name: Last-Configured
44 type: date
45 priority: 1
46 jsonPath: .status.applied.lastAppliedTimestamp
47 - name: Age
48 type: date
49 jsonPath: .metadata.creationTimestamp
50 deprecated: true
51 schema:
52 openAPIV3Schema:
53 type: object
54 description: |-
55 A NodeDisplayConfig defines custom display configuration for a node,
56 defined as a DisplayConfig. It's status details the DisplayConfig
57 that was applied to the node by displayctl.
58 properties:
59 apiVersion:
60 type: string
61 description: |-
62 APIVersion defines the versioned schema of this representation of an object.
63 Servers should convert recognized schemas to the latest internal value, and
64 may reject unrecognized values.
65 More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
66 kind:
67 type: string
68 description: |-
69 Kind is a string value representing the REST resource this object represents.
70 Servers may infer this from the endpoint the client submits requests to.
71 Cannot be updated.
72 In CamelCase.
73 More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
74 metadata:
75 type: object
76 spec:
77 type: object
78 description: DisplayConfig defines the configuration for displays.
79 properties:
80 displays:
81 type: object
82 additionalProperties:
83 type: object
84 description: Display configures a display's monitor and input devices.
85 properties:
86 inputDeviceMappings:
87 type: array
88 description: InputDeviceMappings are the devices the display maps to.
89 items:
90 type: string
91 description: InputDeviceName is the name of an input device
92 orientation:
93 type: string
94 description: Orientation of the display, e.g "left" or "inverted".
95 enum:
96 - normal
97 - left
98 - right
99 - inverted
100 primary:
101 type: boolean
102 description: Primary indicates whether this is the primary display.
103 resolution:
104 type: object
105 description: Resolution is the current resolution of the display.
106 properties:
107 height:
108 type: integer
109 description: Height of the display in pixels.
110 minimum: 0
111 width:
112 type: integer
113 description: Width of the display in pixels.
114 minimum: 0
115 required:
116 - height
117 - width
118 supportedResolutions:
119 type: array
120 description: |-
121 SupportedResolutions are the valid resolutions the
122 display can be configured to use.
123
124
125 It is NOT valid to configure this field in the NodeDisplayConfig
126 spec. The resolution of the display can be configured
127 via the Resolution field.
128 items:
129 type: object
130 description: Resolution defines the resolution of a display.
131 properties:
132 height:
133 type: integer
134 description: Height of the display in pixels.
135 minimum: 0
136 width:
137 type: integer
138 description: Width of the display in pixels.
139 minimum: 0
140 required:
141 - height
142 - width
143 description: Maps monitor MPIDs to Display configurations.
144 dpms:
145 type: object
146 description: DPMS configuration
147 properties:
148 blankTime:
149 type: integer
150 description: |-
151 BlankTime configures the number of seconds of inactivity
152 before reaching the blank phase of the screen saver.
153 minimum: 0
154 enabled:
155 type: boolean
156 description: Enabled indicates whether DPMS is enabled for the node.
157 offTime:
158 type: integer
159 description: |-
160 OffTime configures the number of seconds of inactivity
161 before reaching the off phase of the DPMS mode.
162 minimum: 0
163 standByTime:
164 type: integer
165 description: |-
166 StandbyTime configures the number of seconds of inactivity
167 before reaching the standby phase of the DPMS mode.
168 minimum: 0
169 suspendTime:
170 type: integer
171 description: |-
172 SuspendTime configures the number of seconds of inactivity
173 before reaching the suspend phase of the DPMS mode.
174 minimum: 0
175 layout:
176 type: array
177 description: Layout of the displays as slice, ordered left to right.
178 items:
179 type: string
180 description: |-
181 Manufacturer and Product-Code ID, a unique identifier for
182 the display, i.e. "<manufacturer-ID>-<product-code>".
183 pattern: ^[A-Z]{3}-\d{1,5}$
184 status:
185 type: object
186 properties:
187 applied:
188 type: object
189 description: The configuration that was applied to the node.
190 properties:
191 appliedDisplayConfig:
192 type: object
193 description: The DisplayConfig configuration that was applied to the node.
194 properties:
195 displays:
196 type: object
197 additionalProperties:
198 type: object
199 description: Display configures a display's monitor and input devices.
200 properties:
201 inputDeviceMappings:
202 type: array
203 description: InputDeviceMappings are the devices the display maps to.
204 items:
205 type: string
206 description: InputDeviceName is the name of an input device
207 orientation:
208 type: string
209 description: Orientation of the display, e.g "left" or "inverted".
210 enum:
211 - normal
212 - left
213 - right
214 - inverted
215 primary:
216 type: boolean
217 description: Primary indicates whether this is the primary display.
218 resolution:
219 type: object
220 description: Resolution is the current resolution of the display.
221 properties:
222 height:
223 type: integer
224 description: Height of the display in pixels.
225 minimum: 0
226 width:
227 type: integer
228 description: Width of the display in pixels.
229 minimum: 0
230 required:
231 - height
232 - width
233 supportedResolutions:
234 type: array
235 description: |-
236 SupportedResolutions are the valid resolutions the
237 display can be configured to use.
238
239
240 It is NOT valid to configure this field in the NodeDisplayConfig
241 spec. The resolution of the display can be configured
242 via the Resolution field.
243 items:
244 type: object
245 description: Resolution defines the resolution of a display.
246 properties:
247 height:
248 type: integer
249 description: Height of the display in pixels.
250 minimum: 0
251 width:
252 type: integer
253 description: Width of the display in pixels.
254 minimum: 0
255 required:
256 - height
257 - width
258 description: Maps monitor MPIDs to Display configurations.
259 dpms:
260 type: object
261 description: DPMS configuration
262 properties:
263 blankTime:
264 type: integer
265 description: |-
266 BlankTime configures the number of seconds of inactivity
267 before reaching the blank phase of the screen saver.
268 minimum: 0
269 enabled:
270 type: boolean
271 description: Enabled indicates whether DPMS is enabled for the node.
272 offTime:
273 type: integer
274 description: |-
275 OffTime configures the number of seconds of inactivity
276 before reaching the off phase of the DPMS mode.
277 minimum: 0
278 standByTime:
279 type: integer
280 description: |-
281 StandbyTime configures the number of seconds of inactivity
282 before reaching the standby phase of the DPMS mode.
283 minimum: 0
284 suspendTime:
285 type: integer
286 description: |-
287 SuspendTime configures the number of seconds of inactivity
288 before reaching the suspend phase of the DPMS mode.
289 minimum: 0
290 layout:
291 type: array
292 description: Layout of the displays as slice, ordered left to right.
293 items:
294 type: string
295 description: |-
296 Manufacturer and Product-Code ID, a unique identifier for
297 the display, i.e. "<manufacturer-ID>-<product-code>".
298 pattern: ^[A-Z]{3}-\d{1,5}$
299 displays:
300 type: array
301 description: The output identifiers of the displays configured on the node.
302 items:
303 type: string
304 description: |-
305 Manufacturer and Product-Code ID, a unique identifier for
306 the display, i.e. "<manufacturer-ID>-<product-code>".
307 pattern: ^[A-Z]{3}-\d{1,5}$
308 lastAppliedGeneration:
309 type: integer
310 description: The generation of the object that was last applied to the node.
311 format: int64
312 lastAppliedTimestamp:
313 type: string
314 description: Timestamp when configuration was last applied to the node.
315 format: date-time
316 conditions:
317 type: array
318 items:
319 type: object
320 description: "Condition contains details for one aspect of the current state of this API Resource.\n---\nThis struct is intended for direct use as an array at the field path .status.conditions. For example,\n\n\n\ttype FooStatus struct{\n\t // Represents the observations of a foo's current state.\n\t // Known .status.conditions.type are: \"Available\", \"Progressing\", and \"Degraded\"\n\t // +patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t // other fields\n\t}"
321 properties:
322 type:
323 type: string
324 description: |-
325 type of condition in CamelCase or in foo.example.com/CamelCase.
326 ---
327 Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be
328 useful (see .node.status.conditions), the ability to deconflict is important.
329 The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
330 maxLength: 316
331 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])$
332 status:
333 type: string
334 description: status of the condition, one of True, False, Unknown.
335 enum:
336 - "True"
337 - "False"
338 - Unknown
339 lastTransitionTime:
340 type: string
341 description: |-
342 lastTransitionTime is the last time the condition transitioned from one status to another.
343 This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
344 format: date-time
345 message:
346 type: string
347 description: |-
348 message is a human readable message indicating details about the transition.
349 This may be an empty string.
350 maxLength: 32768
351 observedGeneration:
352 type: integer
353 description: |-
354 observedGeneration represents the .metadata.generation that the condition was set based upon.
355 For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
356 with respect to the current state of the instance.
357 format: int64
358 minimum: 0
359 reason:
360 type: string
361 description: |-
362 reason contains a programmatic identifier indicating the reason for the condition's last transition.
363 Producers of specific condition types may define expected values and meanings for this field,
364 and whether the values are considered a guaranteed API.
365 The value should be a CamelCase string.
366 This field may not be empty.
367 maxLength: 1024
368 minLength: 1
369 pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
370 required:
371 - lastTransitionTime
372 - message
373 - reason
374 - status
375 - type
376 config:
377 type: boolean
378 description: |-
379 Whether there exists additional display manager config for the
380 node, e.g. in xserver-config ConfigMap.
381 default:
382 type: boolean
383 description: Whether the NodeDisplayConfig has default or custom configuration.
384 enabled:
385 type: boolean
386 description: |-
387 Whether displayctl is enabled for the node. When disabled no
388 configuration will be done by displayctl, leaving the display
389 manager to be configured by the xserver-config ConfigMap.
390 served: true
391 storage: false
392 subresources:
393 status: {}
394 - name: v2
395 additionalPrinterColumns:
396 - name: Displays
397 type: string
398 priority: 1
399 jsonPath: .status.applied.displays
400 - name: Default
401 type: string
402 jsonPath: .status.conditions[?(@.type=="Default")].status
403 - name: Enabled
404 type: string
405 jsonPath: .status.conditions[?(@.type=="DisplayctlEnabled")].status
406 - name: Config
407 type: string
408 jsonPath: .status.conditions[?(@.type=="DisplayManagerConfig")].status
409 - name: Status
410 type: string
411 jsonPath: .status.conditions[?(@.type=="DisplayManagerConfigured")].reason
412 - name: Message
413 type: string
414 priority: 1
415 jsonPath: .status.conditions[?(@.type=="DisplayManagerConfigured")].message
416 - name: Last-Configured
417 type: date
418 priority: 1
419 jsonPath: .status.applied.lastAppliedTimestamp
420 - name: Age
421 type: date
422 jsonPath: .metadata.creationTimestamp
423 schema:
424 openAPIV3Schema:
425 type: object
426 description: |-
427 A NodeDisplayConfig defines custom display configuration for a node,
428 defined as a DisplayConfig. It's status details the DisplayConfig
429 that was applied to the node by displayctl.
430 properties:
431 apiVersion:
432 type: string
433 description: |-
434 APIVersion defines the versioned schema of this representation of an object.
435 Servers should convert recognized schemas to the latest internal value, and
436 may reject unrecognized values.
437 More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
438 kind:
439 type: string
440 description: |-
441 Kind is a string value representing the REST resource this object represents.
442 Servers may infer this from the endpoint the client submits requests to.
443 Cannot be updated.
444 In CamelCase.
445 More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
446 metadata:
447 type: object
448 spec:
449 type: object
450 description: DisplayConfig defines the configuration for displays.
451 properties:
452 displays:
453 type: array
454 description: Maps monitor display-ports to display configurations.
455 items:
456 type: object
457 description: Display configures a display's monitor and input devices.
458 properties:
459 displayPort:
460 type: string
461 description: |-
462 DisplayPort is the display card and physical port the
463 display is connected to, e.g. card0-DP1, card1-HDMI2 etc.
464
465
466 This field is NOT optional.
467 pattern: ^(unknown|card\d)(-[A-Za-z0-9]+)+$
468 inputDeviceMappings:
469 type: array
470 description: InputDeviceMappings are the devices the display maps to.
471 items:
472 type: string
473 description: InputDeviceName is the name of an input device
474 mpid:
475 type: string
476 description: |-
477 Manufacturer and Product-Code ID, a unique identifier
478 for the display, i.e. "<manufacturer-ID>-<product-code>".
479
480
481 It is NOT valid to configure this field in the
482 NodeDisplayConfig spec.
483 pattern: ^[A-Z]{3}-\d{1,5}$
484 orientation:
485 type: string
486 description: Orientation of the display, e.g "left" or "inverted".
487 enum:
488 - normal
489 - left
490 - right
491 - inverted
492 primary:
493 type: boolean
494 description: Primary indicates whether this is the primary display.
495 resolution:
496 type: object
497 description: Resolution is the current resolution of the display.
498 properties:
499 height:
500 type: integer
501 description: Height of the display in pixels.
502 minimum: 0
503 width:
504 type: integer
505 description: Width of the display in pixels.
506 minimum: 0
507 required:
508 - height
509 - width
510 supportedResolutions:
511 type: array
512 description: |-
513 SupportedResolutions are the valid resolutions the
514 display can be configured to use.
515
516
517 It is NOT valid to configure this field in the
518 NodeDisplayConfig spec. The resolution of the display
519 can be configured via the Resolution field.
520 items:
521 type: object
522 description: Resolution defines the resolution of a display.
523 properties:
524 height:
525 type: integer
526 description: Height of the display in pixels.
527 minimum: 0
528 width:
529 type: integer
530 description: Width of the display in pixels.
531 minimum: 0
532 required:
533 - height
534 - width
535 required:
536 - displayPort
537 dpms:
538 type: object
539 description: DPMS configuration
540 properties:
541 blankTime:
542 type: integer
543 description: |-
544 BlankTime configures the number of seconds of inactivity
545 before reaching the blank phase of the screen saver.
546 minimum: 0
547 enabled:
548 type: boolean
549 description: Enabled indicates whether DPMS is enabled for the node.
550 offTime:
551 type: integer
552 description: |-
553 OffTime configures the number of seconds of inactivity
554 before reaching the off phase of the DPMS mode.
555 minimum: 0
556 standybyTime:
557 type: integer
558 description: |-
559 StandbyTime configures the number of seconds of inactivity
560 before reaching the standby phase of the DPMS mode.
561 minimum: 0
562 suspendTime:
563 type: integer
564 description: |-
565 SuspendTime configures the number of seconds of inactivity
566 before reaching the suspend phase of the DPMS mode.
567 minimum: 0
568 layout:
569 type: array
570 description: Layout of the displays as slice, ordered left to right.
571 items:
572 type: string
573 description: |-
574 DisplayPort is the display card and physical port the
575 display is connected to, e.g. card0-DP1, card1-HDMI-A-2 etc.
576
577
578 If a card cannot be found for a display it will be marked
579 unknown, e.g. unknown-DP2.
580
581
582 Displays that were disconnected during upgrade from V1 to V2
583 will be marked disconnected, e.g. unknown-disconnected-1.
584 pattern: ^(unknown|card\d)(-[A-Za-z0-9]+)+$
585 v1-displayConfig:
586 type: object
587 description: |-
588 The V1 spec following conversion from V1 to V2 by the
589 conversion webhook. This will be used by displayctl to
590 upgrade the spec to V2.
591
592
593 This must only be set during conversion from V1 to V2
594 and cannot be set after the upgrade is complete.
595 properties:
596 displays:
597 type: object
598 additionalProperties:
599 type: object
600 description: Display configures a display's monitor and input devices.
601 properties:
602 inputDeviceMappings:
603 type: array
604 description: InputDeviceMappings are the devices the display maps to.
605 items:
606 type: string
607 description: InputDeviceName is the name of an input device
608 orientation:
609 type: string
610 description: Orientation of the display, e.g "left" or "inverted".
611 enum:
612 - normal
613 - left
614 - right
615 - inverted
616 primary:
617 type: boolean
618 description: Primary indicates whether this is the primary display.
619 resolution:
620 type: object
621 description: Resolution is the current resolution of the display.
622 properties:
623 height:
624 type: integer
625 description: Height of the display in pixels.
626 minimum: 0
627 width:
628 type: integer
629 description: Width of the display in pixels.
630 minimum: 0
631 required:
632 - height
633 - width
634 supportedResolutions:
635 type: array
636 description: |-
637 SupportedResolutions are the valid resolutions the
638 display can be configured to use.
639
640
641 It is NOT valid to configure this field in the NodeDisplayConfig
642 spec. The resolution of the display can be configured
643 via the Resolution field.
644 items:
645 type: object
646 description: Resolution defines the resolution of a display.
647 properties:
648 height:
649 type: integer
650 description: Height of the display in pixels.
651 minimum: 0
652 width:
653 type: integer
654 description: Width of the display in pixels.
655 minimum: 0
656 required:
657 - height
658 - width
659 description: Maps monitor MPIDs to Display configurations.
660 dpms:
661 type: object
662 description: DPMS configuration
663 properties:
664 blankTime:
665 type: integer
666 description: |-
667 BlankTime configures the number of seconds of inactivity
668 before reaching the blank phase of the screen saver.
669 minimum: 0
670 enabled:
671 type: boolean
672 description: Enabled indicates whether DPMS is enabled for the node.
673 offTime:
674 type: integer
675 description: |-
676 OffTime configures the number of seconds of inactivity
677 before reaching the off phase of the DPMS mode.
678 minimum: 0
679 standByTime:
680 type: integer
681 description: |-
682 StandbyTime configures the number of seconds of inactivity
683 before reaching the standby phase of the DPMS mode.
684 minimum: 0
685 suspendTime:
686 type: integer
687 description: |-
688 SuspendTime configures the number of seconds of inactivity
689 before reaching the suspend phase of the DPMS mode.
690 minimum: 0
691 layout:
692 type: array
693 description: Layout of the displays as slice, ordered left to right.
694 items:
695 type: string
696 description: |-
697 Manufacturer and Product-Code ID, a unique identifier for
698 the display, i.e. "<manufacturer-ID>-<product-code>".
699 pattern: ^[A-Z]{3}-\d{1,5}$
700 status:
701 type: object
702 properties:
703 applied:
704 type: object
705 description: The configuration that was applied to the node.
706 properties:
707 displayConfig:
708 type: object
709 description: The DisplayConfig configuration that was applied to the node.
710 properties:
711 displays:
712 type: array
713 description: Maps monitor display-ports to display configurations.
714 items:
715 type: object
716 description: Display configures a display's monitor and input devices.
717 properties:
718 displayPort:
719 type: string
720 description: |-
721 DisplayPort is the display card and physical port the
722 display is connected to, e.g. card0-DP1, card1-HDMI2 etc.
723
724
725 This field is NOT optional.
726 pattern: ^(unknown|card\d)(-[A-Za-z0-9]+)+$
727 inputDeviceMappings:
728 type: array
729 description: InputDeviceMappings are the devices the display maps to.
730 items:
731 type: string
732 description: InputDeviceName is the name of an input device
733 mpid:
734 type: string
735 description: |-
736 Manufacturer and Product-Code ID, a unique identifier
737 for the display, i.e. "<manufacturer-ID>-<product-code>".
738
739
740 It is NOT valid to configure this field in the
741 NodeDisplayConfig spec.
742 pattern: ^[A-Z]{3}-\d{1,5}$
743 orientation:
744 type: string
745 description: Orientation of the display, e.g "left" or "inverted".
746 enum:
747 - normal
748 - left
749 - right
750 - inverted
751 primary:
752 type: boolean
753 description: Primary indicates whether this is the primary display.
754 resolution:
755 type: object
756 description: Resolution is the current resolution of the display.
757 properties:
758 height:
759 type: integer
760 description: Height of the display in pixels.
761 minimum: 0
762 width:
763 type: integer
764 description: Width of the display in pixels.
765 minimum: 0
766 required:
767 - height
768 - width
769 supportedResolutions:
770 type: array
771 description: |-
772 SupportedResolutions are the valid resolutions the
773 display can be configured to use.
774
775
776 It is NOT valid to configure this field in the
777 NodeDisplayConfig spec. The resolution of the display
778 can be configured via the Resolution field.
779 items:
780 type: object
781 description: Resolution defines the resolution of a display.
782 properties:
783 height:
784 type: integer
785 description: Height of the display in pixels.
786 minimum: 0
787 width:
788 type: integer
789 description: Width of the display in pixels.
790 minimum: 0
791 required:
792 - height
793 - width
794 required:
795 - displayPort
796 dpms:
797 type: object
798 description: DPMS configuration
799 properties:
800 blankTime:
801 type: integer
802 description: |-
803 BlankTime configures the number of seconds of inactivity
804 before reaching the blank phase of the screen saver.
805 minimum: 0
806 enabled:
807 type: boolean
808 description: Enabled indicates whether DPMS is enabled for the node.
809 offTime:
810 type: integer
811 description: |-
812 OffTime configures the number of seconds of inactivity
813 before reaching the off phase of the DPMS mode.
814 minimum: 0
815 standybyTime:
816 type: integer
817 description: |-
818 StandbyTime configures the number of seconds of inactivity
819 before reaching the standby phase of the DPMS mode.
820 minimum: 0
821 suspendTime:
822 type: integer
823 description: |-
824 SuspendTime configures the number of seconds of inactivity
825 before reaching the suspend phase of the DPMS mode.
826 minimum: 0
827 layout:
828 type: array
829 description: Layout of the displays as slice, ordered left to right.
830 items:
831 type: string
832 description: |-
833 DisplayPort is the display card and physical port the
834 display is connected to, e.g. card0-DP1, card1-HDMI-A-2 etc.
835
836
837 If a card cannot be found for a display it will be marked
838 unknown, e.g. unknown-DP2.
839
840
841 Displays that were disconnected during upgrade from V1 to V2
842 will be marked disconnected, e.g. unknown-disconnected-1.
843 pattern: ^(unknown|card\d)(-[A-Za-z0-9]+)+$
844 v1-displayConfig:
845 type: object
846 description: |-
847 The V1 spec following conversion from V1 to V2 by the
848 conversion webhook. This will be used by displayctl to
849 upgrade the spec to V2.
850
851
852 This must only be set during conversion from V1 to V2
853 and cannot be set after the upgrade is complete.
854 properties:
855 displays:
856 type: object
857 additionalProperties:
858 type: object
859 description: Display configures a display's monitor and input devices.
860 properties:
861 inputDeviceMappings:
862 type: array
863 description: InputDeviceMappings are the devices the display maps to.
864 items:
865 type: string
866 description: InputDeviceName is the name of an input device
867 orientation:
868 type: string
869 description: Orientation of the display, e.g "left" or "inverted".
870 enum:
871 - normal
872 - left
873 - right
874 - inverted
875 primary:
876 type: boolean
877 description: Primary indicates whether this is the primary display.
878 resolution:
879 type: object
880 description: Resolution is the current resolution of the display.
881 properties:
882 height:
883 type: integer
884 description: Height of the display in pixels.
885 minimum: 0
886 width:
887 type: integer
888 description: Width of the display in pixels.
889 minimum: 0
890 required:
891 - height
892 - width
893 supportedResolutions:
894 type: array
895 description: |-
896 SupportedResolutions are the valid resolutions the
897 display can be configured to use.
898
899
900 It is NOT valid to configure this field in the NodeDisplayConfig
901 spec. The resolution of the display can be configured
902 via the Resolution field.
903 items:
904 type: object
905 description: Resolution defines the resolution of a display.
906 properties:
907 height:
908 type: integer
909 description: Height of the display in pixels.
910 minimum: 0
911 width:
912 type: integer
913 description: Width of the display in pixels.
914 minimum: 0
915 required:
916 - height
917 - width
918 description: Maps monitor MPIDs to Display configurations.
919 dpms:
920 type: object
921 description: DPMS configuration
922 properties:
923 blankTime:
924 type: integer
925 description: |-
926 BlankTime configures the number of seconds of inactivity
927 before reaching the blank phase of the screen saver.
928 minimum: 0
929 enabled:
930 type: boolean
931 description: Enabled indicates whether DPMS is enabled for the node.
932 offTime:
933 type: integer
934 description: |-
935 OffTime configures the number of seconds of inactivity
936 before reaching the off phase of the DPMS mode.
937 minimum: 0
938 standByTime:
939 type: integer
940 description: |-
941 StandbyTime configures the number of seconds of inactivity
942 before reaching the standby phase of the DPMS mode.
943 minimum: 0
944 suspendTime:
945 type: integer
946 description: |-
947 SuspendTime configures the number of seconds of inactivity
948 before reaching the suspend phase of the DPMS mode.
949 minimum: 0
950 layout:
951 type: array
952 description: Layout of the displays as slice, ordered left to right.
953 items:
954 type: string
955 description: |-
956 Manufacturer and Product-Code ID, a unique identifier for
957 the display, i.e. "<manufacturer-ID>-<product-code>".
958 pattern: ^[A-Z]{3}-\d{1,5}$
959 displays:
960 type: array
961 description: The output identifiers of the displays configured on the node.
962 items:
963 type: string
964 description: |-
965 DisplayPort is the display card and physical port the
966 display is connected to, e.g. card0-DP1, card1-HDMI-A-2 etc.
967
968
969 If a card cannot be found for a display it will be marked
970 unknown, e.g. unknown-DP2.
971
972
973 Displays that were disconnected during upgrade from V1 to V2
974 will be marked disconnected, e.g. unknown-disconnected-1.
975 pattern: ^(unknown|card\d)(-[A-Za-z0-9]+)+$
976 lastAppliedGeneration:
977 type: integer
978 description: The generation of the object that was last applied to the node.
979 format: int64
980 lastAppliedTimestamp:
981 type: string
982 description: Timestamp when configuration was last applied to the node.
983 format: date-time
984 conditions:
985 type: array
986 items:
987 type: object
988 description: "Condition contains details for one aspect of the current state of this API Resource.\n---\nThis struct is intended for direct use as an array at the field path .status.conditions. For example,\n\n\n\ttype FooStatus struct{\n\t // Represents the observations of a foo's current state.\n\t // Known .status.conditions.type are: \"Available\", \"Progressing\", and \"Degraded\"\n\t // +patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t // other fields\n\t}"
989 properties:
990 type:
991 type: string
992 description: |-
993 type of condition in CamelCase or in foo.example.com/CamelCase.
994 ---
995 Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be
996 useful (see .node.status.conditions), the ability to deconflict is important.
997 The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
998 maxLength: 316
999 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])$
1000 status:
1001 type: string
1002 description: status of the condition, one of True, False, Unknown.
1003 enum:
1004 - "True"
1005 - "False"
1006 - Unknown
1007 lastTransitionTime:
1008 type: string
1009 description: |-
1010 lastTransitionTime is the last time the condition transitioned from one status to another.
1011 This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
1012 format: date-time
1013 message:
1014 type: string
1015 description: |-
1016 message is a human readable message indicating details about the transition.
1017 This may be an empty string.
1018 maxLength: 32768
1019 observedGeneration:
1020 type: integer
1021 description: |-
1022 observedGeneration represents the .metadata.generation that the condition was set based upon.
1023 For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
1024 with respect to the current state of the instance.
1025 format: int64
1026 minimum: 0
1027 reason:
1028 type: string
1029 description: |-
1030 reason contains a programmatic identifier indicating the reason for the condition's last transition.
1031 Producers of specific condition types may define expected values and meanings for this field,
1032 and whether the values are considered a guaranteed API.
1033 The value should be a CamelCase string.
1034 This field may not be empty.
1035 maxLength: 1024
1036 minLength: 1
1037 pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
1038 required:
1039 - lastTransitionTime
1040 - message
1041 - reason
1042 - status
1043 - type
1044 upgrade:
1045 type: object
1046 description: Stores upgrade status for partially-upgraded objects.
1047 properties:
1048 disconnectedDisplays:
1049 type: object
1050 additionalProperties:
1051 type: string
1052 description: |-
1053 Manufacturer and Product-Code ID, a unique identifier for
1054 the display, i.e. "<manufacturer-ID>-<product-code>".
1055 pattern: ^[A-Z]{3}-\d{1,5}$
1056 description: |-
1057 MPIDs for displays disconnected during the upgrade.
1058 Used by displayctl to upgrade the displays if they
1059 are reconnected at later point.
1060 served: true
1061 storage: true
1062 subresources:
1063 status: {}
View as plain text