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