AsyncAPI specification for NICo Managed Host State change events. This spec defines the message structure for publishing managed host state transitions and related metadata including DPU states, host initialization, validation, assignment, and reprovisioning states.
The MQTT topic path should follow the following format:
1 # Copyright 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 2 # SPDX-License-Identifier: Apache-2.0 3 4 asyncapi: 3.1.0 5 info: 6 title: NICo Managed Host State Event Bus 7 version: 1.0.0 8 description: > 9 AsyncAPI specification for NICo Managed Host State change events. 10 This spec defines the message structure for publishing managed host state 11 transitions and related metadata including DPU states, host initialization, 12 validation, assignment, and reprovisioning states. 13 14 The MQTT topic path should follow the following format: 15 16 - **State Changes**: NICO/v1/machine/{machineId}/state 17 18 servers: 19 production: 20 host: broker.example.com 21 protocol: mqtt 22 description: MQTT broker for NICo managed host state events 23 24 channels: 25 managedHostState: 26 address: "NICO/v1/machine/{machineId}/state" 27 parameters: 28 machineId: 29 description: Unique identifier for the managed host machine. 30 messages: 31 stateChangeMessage: 32 $ref: "#/components/messages/ManagedHostStateChangeMessage" 33 34 operations: 35 publishManagedHostStateChange: 36 action: send 37 channel: 38 $ref: "#/channels/managedHostState" 39 messages: 40 - $ref: "#/channels/managedHostState/messages/stateChangeMessage" 41 description: > 42 Publish managed host state change events when a host transitions 43 between states in the lifecycle. 44 45 subscribeManagedHostStateChange: 46 action: receive 47 channel: 48 $ref: "#/channels/managedHostState" 49 messages: 50 - $ref: "#/channels/managedHostState/messages/stateChangeMessage" 51 description: > 52 Subscribe to managed host state change events for monitoring, 53 orchestration, and automation purposes. 54 55 components: 56 messages: 57 ManagedHostStateChangeMessage: 58 name: ManagedHostStateChangeMessage 59 title: Managed Host State Change 60 payload: 61 type: object 62 required: 63 - machine_id 64 - managed_host_state 65 - timestamp 66 properties: 67 machine_id: 68 type: string 69 description: Unique identifier for the managed host machine. 70 timestamp: 71 type: string 72 format: date-time 73 description: ISO 8601 timestamp of the state change. 74 managed_host_state: 75 $ref: "#/components/schemas/ManagedHostState" 76 description: The managed host state object with state name and details. 77 78 schemas: 79 ManagedHostState: 80 description: 81 Possible Machine state-machine implementation Possible ManagedHost state-machine implementation Only DPU machine 82 field in DB will contain state. Host will be empty. DPU state field will be used to derive state for DPU and Host both. 83 oneOf: 84 - description: Dpu was discovered by a site-explorer and is being configuring via redfish. 85 type: object 86 required: 87 - dpu_states 88 - state 89 properties: 90 dpu_states: 91 $ref: "#/components/schemas/DpuDiscoveringStates" 92 state: 93 type: string 94 enum: 95 - dpudiscoveringstate 96 - description: DPU is not yet ready. 97 type: object 98 required: 99 - dpu_states 100 - state 101 properties: 102 dpu_states: 103 $ref: "#/components/schemas/DpuInitStates" 104 state: 105 type: string 106 enum: 107 - dpuinit 108 - description: DPU is ready, Host is not yet Ready. 109 type: object 110 required: 111 - machine_state 112 - state 113 properties: 114 machine_state: 115 $ref: "#/components/schemas/MachineState" 116 state: 117 type: string 118 enum: 119 - hostinit 120 - description: Host validation state for machine and DPU validation 121 type: object 122 required: 123 - state 124 - validation_state 125 properties: 126 state: 127 type: string 128 enum: 129 - validation 130 validation_state: 131 $ref: "#/components/schemas/ValidationState" 132 - description: Host is Ready for instance creation. 133 type: object 134 required: 135 - state 136 properties: 137 state: 138 type: string 139 enum: 140 - ready 141 - description: Host is assigned to an Instance. 142 type: object 143 required: 144 - instance_state 145 - state 146 properties: 147 instance_state: 148 $ref: "#/components/schemas/InstanceState" 149 state: 150 type: string 151 enum: 152 - assigned 153 - description: Some cleanup is going on. 154 type: object 155 required: 156 - cleanup_state 157 - state 158 properties: 159 cleanup_state: 160 $ref: "#/components/schemas/CleanupState" 161 state: 162 type: string 163 enum: 164 - waitingforcleanup 165 - description: 166 A forced deletion process has been triggered by the admin CLI State controller will no longer manage the 167 Machine 168 type: object 169 required: 170 - state 171 properties: 172 state: 173 type: string 174 enum: 175 - forcedeletion 176 - description: A dummy state used to create DPU in beginning. State will sync to Init when host will be created. 177 type: object 178 required: 179 - state 180 properties: 181 state: 182 type: string 183 enum: 184 - created 185 - description: Machine moved to failed state. Recovery will be based on FailedCause 186 type: object 187 required: 188 - details 189 - machine_id 190 - state 191 properties: 192 details: 193 $ref: "#/components/schemas/FailureDetails" 194 machine_id: 195 $ref: "#/components/schemas/MachineId" 196 retry_count: 197 default: 0 198 type: integer 199 format: uint32 200 minimum: 0.0 201 state: 202 type: string 203 enum: 204 - failed 205 - description: State used to indicate that DPU reprovisioning is going on. 206 type: object 207 required: 208 - dpu_states 209 - state 210 properties: 211 dpu_states: 212 $ref: "#/components/schemas/DpuReprovisionStates" 213 state: 214 type: string 215 enum: 216 - dpureprovision 217 - description: State used to indicate that host reprovisioning is going on 218 type: object 219 required: 220 - reprovision_state 221 - state 222 properties: 223 reprovision_state: 224 $ref: "#/components/schemas/HostReprovisionState" 225 retry_count: 226 default: 0 227 type: integer 228 format: uint32 229 minimum: 0.0 230 state: 231 type: string 232 enum: 233 - hostreprovision 234 - description: 235 State used to indicate the API is currently waiting on the machine to send attestation measurements, or waiting 236 for measurements to match a valid/approved measurement bundle, before continuing on towards a Ready state. 237 type: object 238 required: 239 - measuring_state 240 - state 241 properties: 242 measuring_state: 243 $ref: "#/components/schemas/MeasuringState" 244 state: 245 type: string 246 enum: 247 - measuring 248 - type: object 249 required: 250 - measuring_state 251 - state 252 properties: 253 measuring_state: 254 $ref: "#/components/schemas/MeasuringState" 255 state: 256 type: string 257 enum: 258 - postassignedmeasuring 259 - type: object 260 required: 261 - bom_validating_state 262 - state 263 properties: 264 bom_validating_state: 265 $ref: "#/components/schemas/BomValidating" 266 state: 267 type: string 268 enum: 269 - bomvalidating 270 BmcFirmwareUpgradeSubstate: 271 oneOf: 272 - type: object 273 required: 274 - bmcfirmwareupdatesubstate 275 properties: 276 bmcfirmwareupdatesubstate: 277 type: string 278 enum: 279 - checkfwversion 280 - type: object 281 required: 282 - bmcfirmwareupdatesubstate 283 - firmware_type 284 - task_id 285 properties: 286 bmcfirmwareupdatesubstate: 287 type: string 288 enum: 289 - waitforupdatecompletion 290 firmware_type: 291 $ref: "#/components/schemas/FirmwareComponentType" 292 task_id: 293 type: string 294 - type: object 295 required: 296 - bmcfirmwareupdatesubstate 297 - count 298 properties: 299 bmcfirmwareupdatesubstate: 300 type: string 301 enum: 302 - reboot 303 count: 304 type: integer 305 format: uint32 306 minimum: 0.0 307 - type: object 308 required: 309 - bmcfirmwareupdatesubstate 310 properties: 311 bmcfirmwareupdatesubstate: 312 type: string 313 enum: 314 - waitforerotbackgroundcopytocomplete 315 - type: object 316 required: 317 - bmcfirmwareupdatesubstate 318 properties: 319 bmcfirmwareupdatesubstate: 320 type: string 321 enum: 322 - hostpowercycle 323 - type: object 324 required: 325 - bmcfirmwareupdatesubstate 326 - failure_details 327 properties: 328 bmcfirmwareupdatesubstate: 329 type: string 330 enum: 331 - failed 332 failure_details: 333 type: string 334 - type: object 335 required: 336 - bmcfirmwareupdatesubstate 337 properties: 338 bmcfirmwareupdatesubstate: 339 type: string 340 enum: 341 - fwupdatecompleted 342 BomValidating: 343 oneOf: 344 - type: object 345 required: 346 - MatchingSku 347 properties: 348 MatchingSku: 349 $ref: "#/components/schemas/BomValidatingContext" 350 additionalProperties: false 351 - type: object 352 required: 353 - UpdatingInventory 354 properties: 355 UpdatingInventory: 356 $ref: "#/components/schemas/BomValidatingContext" 357 additionalProperties: false 358 - type: object 359 required: 360 - VerifyingSku 361 properties: 362 VerifyingSku: 363 $ref: "#/components/schemas/BomValidatingContext" 364 additionalProperties: false 365 - type: object 366 required: 367 - SkuVerificationFailed 368 properties: 369 SkuVerificationFailed: 370 $ref: "#/components/schemas/BomValidatingContext" 371 additionalProperties: false 372 - type: object 373 required: 374 - WaitingForSkuAssignment 375 properties: 376 WaitingForSkuAssignment: 377 $ref: "#/components/schemas/BomValidatingContext" 378 additionalProperties: false 379 - type: object 380 required: 381 - SkuMissing 382 properties: 383 SkuMissing: 384 $ref: "#/components/schemas/BomValidatingContext" 385 additionalProperties: false 386 BomValidatingContext: 387 description: A context for passing information between states thoughout the BOM validation process. 388 type: object 389 properties: 390 machine_validation_context: 391 type: 392 - string 393 - "null" 394 reboot_retry_count: 395 type: 396 - integer 397 - "null" 398 format: int64 399 CleanupState: 400 oneOf: 401 - type: object 402 required: 403 - state 404 properties: 405 state: 406 type: string 407 enum: 408 - init 409 - type: object 410 required: 411 - secure_erase_boss_context 412 - state 413 properties: 414 secure_erase_boss_context: 415 $ref: "#/components/schemas/SecureEraseBossContext" 416 state: 417 type: string 418 enum: 419 - secureeraseboss 420 - type: object 421 required: 422 - state 423 properties: 424 boss_controller_id: 425 type: 426 - string 427 - "null" 428 state: 429 type: string 430 enum: 431 - hostcleanup 432 - type: object 433 required: 434 - create_boss_volume_context 435 - state 436 properties: 437 create_boss_volume_context: 438 $ref: "#/components/schemas/CreateBossVolumeContext" 439 state: 440 type: string 441 enum: 442 - createbossvolume 443 - type: object 444 required: 445 - state 446 properties: 447 state: 448 type: string 449 enum: 450 - disablebiosbmclockdown 451 CreateBossVolumeContext: 452 type: object 453 required: 454 - boss_controller_id 455 - create_boss_volume_state 456 properties: 457 boss_controller_id: 458 type: string 459 create_boss_volume_jid: 460 type: 461 - string 462 - "null" 463 create_boss_volume_state: 464 $ref: "#/components/schemas/CreateBossVolumeState" 465 iteration: 466 type: 467 - integer 468 - "null" 469 format: uint32 470 minimum: 0.0 471 CreateBossVolumeState: 472 oneOf: 473 - type: object 474 required: 475 - state 476 properties: 477 state: 478 type: string 479 enum: 480 - createbossvolume 481 - type: object 482 required: 483 - state 484 properties: 485 state: 486 type: string 487 enum: 488 - waitforjobscheduled 489 - type: object 490 required: 491 - state 492 properties: 493 state: 494 type: string 495 enum: 496 - reboothost 497 - type: object 498 required: 499 - state 500 properties: 501 state: 502 type: string 503 enum: 504 - waitforjobcompletion 505 - type: object 506 required: 507 - failure 508 - power_state 509 - state 510 properties: 511 failure: 512 type: string 513 power_state: 514 type: string 515 state: 516 type: string 517 enum: 518 - handlejobfailure 519 - type: object 520 required: 521 - state 522 properties: 523 state: 524 type: string 525 enum: 526 - lockhost 527 DpuDiscoveringState: 528 oneOf: 529 - description: Dpu discovery via redfish states 530 type: object 531 required: 532 - dpudiscoverystate 533 properties: 534 dpudiscoverystate: 535 type: string 536 enum: 537 - initializing 538 - type: object 539 required: 540 - dpudiscoverystate 541 properties: 542 dpudiscoverystate: 543 type: string 544 enum: 545 - configuring 546 - type: object 547 required: 548 - dpudiscoverystate 549 properties: 550 dpudiscoverystate: 551 type: string 552 enum: 553 - rebootalldpus 554 - type: object 555 required: 556 - count 557 - dpudiscoverystate 558 - enable_secure_boot_state 559 properties: 560 count: 561 type: integer 562 format: uint32 563 minimum: 0.0 564 dpudiscoverystate: 565 type: string 566 enum: 567 - enablesecureboot 568 enable_secure_boot_state: 569 $ref: "#/components/schemas/SetSecureBootState" 570 - type: object 571 required: 572 - count 573 - dpudiscoverystate 574 properties: 575 count: 576 type: integer 577 format: uint32 578 minimum: 0.0 579 disable_secure_boot_state: 580 anyOf: 581 - $ref: "#/components/schemas/SetSecureBootState" 582 - type: "null" 583 dpudiscoverystate: 584 type: string 585 enum: 586 - disablesecureboot 587 - type: object 588 required: 589 - dpudiscoverystate 590 properties: 591 dpudiscoverystate: 592 type: string 593 enum: 594 - setuefihttpboot 595 - type: object 596 required: 597 - dpudiscoverystate 598 properties: 599 dpudiscoverystate: 600 type: string 601 enum: 602 - enablershim 603 DpuDiscoveringStates: 604 type: object 605 required: 606 - states 607 properties: 608 states: 609 type: object 610 additionalProperties: 611 $ref: "#/components/schemas/DpuDiscoveringState" 612 DpuInitState: 613 oneOf: 614 - type: object 615 required: 616 - dpustate 617 - substate 618 properties: 619 dpustate: 620 type: string 621 enum: 622 - installdpuos 623 substate: 624 $ref: "#/components/schemas/InstallDpuOsState" 625 - type: object 626 required: 627 - dpustate 628 properties: 629 dpustate: 630 type: string 631 enum: 632 - init 633 - type: object 634 required: 635 - dpustate 636 - substate 637 properties: 638 dpustate: 639 type: string 640 enum: 641 - waitingforplatformpowercycle 642 substate: 643 $ref: "#/components/schemas/PerformPowerOperation" 644 - type: object 645 required: 646 - dpustate 647 properties: 648 dpustate: 649 type: string 650 enum: 651 - waitingforplatformconfiguration 652 - type: object 653 required: 654 - dpustate 655 properties: 656 dpustate: 657 type: string 658 enum: 659 - pollingbiossetup 660 - type: object 661 required: 662 - dpustate 663 properties: 664 dpustate: 665 type: string 666 enum: 667 - waitingfornetworkconfig 668 - type: object 669 required: 670 - dpustate 671 properties: 672 dpustate: 673 type: string 674 enum: 675 - waitingfornetworkinstall 676 DpuInitStates: 677 type: object 678 required: 679 - states 680 properties: 681 states: 682 type: object 683 additionalProperties: 684 $ref: "#/components/schemas/DpuInitState" 685 DpuReprovisionStates: 686 type: object 687 required: 688 - states 689 properties: 690 states: 691 type: object 692 additionalProperties: 693 $ref: "#/components/schemas/ReprovisionState" 694 FailureCause: 695 oneOf: 696 - type: string 697 enum: 698 - noerror 699 - type: object 700 required: 701 - nvmecleanfailed 702 properties: 703 nvmecleanfailed: 704 type: object 705 required: 706 - err 707 properties: 708 err: 709 type: string 710 additionalProperties: false 711 - type: object 712 required: 713 - discovery 714 properties: 715 discovery: 716 type: object 717 required: 718 - err 719 properties: 720 err: 721 type: string 722 additionalProperties: false 723 - type: object 724 required: 725 - reprovisioning 726 properties: 727 reprovisioning: 728 type: object 729 required: 730 - err 731 properties: 732 err: 733 type: string 734 additionalProperties: false 735 - type: object 736 required: 737 - machinevalidation 738 properties: 739 machinevalidation: 740 type: object 741 required: 742 - err 743 properties: 744 err: 745 type: string 746 additionalProperties: false 747 - type: object 748 required: 749 - unhandledstate 750 properties: 751 unhandledstate: 752 type: object 753 required: 754 - err 755 properties: 756 err: 757 type: string 758 additionalProperties: false 759 - type: object 760 required: 761 - measurementsfailedsignaturecheck 762 properties: 763 measurementsfailedsignaturecheck: 764 type: object 765 required: 766 - err 767 properties: 768 err: 769 type: string 770 additionalProperties: false 771 - type: object 772 required: 773 - measurementsretired 774 properties: 775 measurementsretired: 776 type: object 777 required: 778 - err 779 properties: 780 err: 781 type: string 782 additionalProperties: false 783 - type: object 784 required: 785 - measurementsrevoked 786 properties: 787 measurementsrevoked: 788 type: object 789 required: 790 - err 791 properties: 792 err: 793 type: string 794 additionalProperties: false 795 - type: object 796 required: 797 - measurementscavalidationfailed 798 properties: 799 measurementscavalidationfailed: 800 type: object 801 required: 802 - err 803 properties: 804 err: 805 type: string 806 additionalProperties: false 807 FailureDetails: 808 type: object 809 required: 810 - cause 811 - failed_at 812 - source 813 properties: 814 cause: 815 $ref: "#/components/schemas/FailureCause" 816 failed_at: 817 type: string 818 format: date-time 819 source: 820 $ref: "#/components/schemas/FailureSource" 821 FailureSource: 822 oneOf: 823 - type: string 824 enum: 825 - noerror 826 - scout 827 - statemachine 828 - type: object 829 required: 830 - statemachinearea 831 properties: 832 statemachinearea: 833 $ref: "#/components/schemas/StateMachineArea" 834 additionalProperties: false 835 FirmwareComponentType: 836 type: string 837 enum: 838 - bmc 839 - cec 840 - uefi 841 - nic 842 - cpldmb 843 - cpldpdb 844 - hgxbmc 845 - combinedbmcuefi 846 - gpu 847 - unknown 848 HostPlatformConfigurationState: 849 oneOf: 850 - type: object 851 required: 852 - power_on 853 - state 854 properties: 855 power_on: 856 type: boolean 857 state: 858 type: string 859 enum: 860 - powercycle 861 - type: object 862 required: 863 - state 864 properties: 865 state: 866 type: string 867 enum: 868 - checkhostconfig 869 - type: object 870 required: 871 - state 872 properties: 873 state: 874 type: string 875 enum: 876 - unlockhost 877 - type: object 878 required: 879 - state 880 properties: 881 state: 882 type: string 883 enum: 884 - configurebios 885 - type: object 886 required: 887 - state 888 properties: 889 state: 890 type: string 891 enum: 892 - pollingbiossetup 893 - type: object 894 required: 895 - set_boot_order_info 896 - state 897 properties: 898 set_boot_order_info: 899 $ref: "#/components/schemas/SetBootOrderInfo" 900 state: 901 type: string 902 enum: 903 - setbootorder 904 - type: object 905 required: 906 - state 907 properties: 908 state: 909 type: string 910 enum: 911 - lockhost 912 HostReprovisionState: 913 oneOf: 914 - type: string 915 enum: 916 - checkingfirmware 917 - checkingfirmwarerepeat 918 - type: object 919 required: 920 - initialreset 921 properties: 922 initialreset: 923 type: object 924 required: 925 - last_time 926 - phase 927 properties: 928 last_time: 929 type: string 930 format: date-time 931 phase: 932 $ref: "#/components/schemas/InitialResetPhase" 933 additionalProperties: false 934 - type: object 935 required: 936 - waitingforscript 937 properties: 938 waitingforscript: 939 type: object 940 additionalProperties: false 941 - type: object 942 required: 943 - waitingforupload 944 properties: 945 waitingforupload: 946 type: object 947 required: 948 - final_version 949 - firmware_type 950 properties: 951 final_version: 952 type: string 953 firmware_number: 954 type: 955 - integer 956 - "null" 957 format: uint32 958 minimum: 0.0 959 firmware_type: 960 $ref: "#/components/schemas/FirmwareComponentType" 961 power_drains_needed: 962 type: 963 - integer 964 - "null" 965 format: uint32 966 minimum: 0.0 967 additionalProperties: false 968 - type: object 969 required: 970 - waitingforfirmwareupgrade 971 properties: 972 waitingforfirmwareupgrade: 973 type: object 974 required: 975 - final_version 976 - firmware_type 977 - task_id 978 properties: 979 final_version: 980 type: string 981 firmware_number: 982 type: 983 - integer 984 - "null" 985 format: uint32 986 minimum: 0.0 987 firmware_type: 988 $ref: "#/components/schemas/FirmwareComponentType" 989 power_drains_needed: 990 type: 991 - integer 992 - "null" 993 format: uint32 994 minimum: 0.0 995 started_waiting: 996 type: 997 - string 998 - "null" 999 format: date-time 1000 task_id: 1001 type: string 1002 additionalProperties: false 1003 - type: object 1004 required: 1005 - resetfornewfirmware 1006 properties: 1007 resetfornewfirmware: 1008 type: object 1009 required: 1010 - final_version 1011 - firmware_type 1012 properties: 1013 delay_until: 1014 type: 1015 - integer 1016 - "null" 1017 format: int64 1018 final_version: 1019 type: string 1020 firmware_type: 1021 $ref: "#/components/schemas/FirmwareComponentType" 1022 last_power_drain_operation: 1023 anyOf: 1024 - $ref: "#/components/schemas/PowerDrainState" 1025 - type: "null" 1026 power_drains_needed: 1027 type: 1028 - integer 1029 - "null" 1030 format: uint32 1031 minimum: 0.0 1032 additionalProperties: false 1033 - type: object 1034 required: 1035 - newfirmwarereportedwait 1036 properties: 1037 newfirmwarereportedwait: 1038 type: object 1039 required: 1040 - final_version 1041 - firmware_type 1042 properties: 1043 final_version: 1044 type: string 1045 firmware_type: 1046 $ref: "#/components/schemas/FirmwareComponentType" 1047 previous_reset_time: 1048 type: 1049 - integer 1050 - "null" 1051 format: int64 1052 additionalProperties: false 1053 - type: object 1054 required: 1055 - failedfirmwareupgrade 1056 properties: 1057 failedfirmwareupgrade: 1058 type: object 1059 required: 1060 - firmware_type 1061 properties: 1062 firmware_type: 1063 $ref: "#/components/schemas/FirmwareComponentType" 1064 reason: 1065 type: 1066 - string 1067 - "null" 1068 report_time: 1069 type: 1070 - string 1071 - "null" 1072 format: date-time 1073 additionalProperties: false 1074 InitialResetPhase: 1075 type: string 1076 enum: 1077 - start 1078 - bmcwasreset 1079 - waithostboot 1080 InstallDpuOsState: 1081 oneOf: 1082 - type: object 1083 required: 1084 - installdpuosstate 1085 properties: 1086 installdpuosstate: 1087 type: string 1088 enum: 1089 - installingbfb 1090 - type: object 1091 required: 1092 - installdpuosstate 1093 - progress 1094 - task_id 1095 properties: 1096 installdpuosstate: 1097 type: string 1098 enum: 1099 - waitforinstallcomplete 1100 progress: 1101 type: string 1102 task_id: 1103 type: string 1104 - type: object 1105 required: 1106 - installdpuosstate 1107 properties: 1108 installdpuosstate: 1109 type: string 1110 enum: 1111 - completed 1112 - type: object 1113 required: 1114 - installdpuosstate 1115 - msg 1116 properties: 1117 installdpuosstate: 1118 type: string 1119 enum: 1120 - installationerror 1121 msg: 1122 type: string 1123 InstanceState: 1124 description: Possible Instance state-machine implementation, for when the machine host is assigned to a tenant 1125 oneOf: 1126 - type: object 1127 required: 1128 - state 1129 properties: 1130 state: 1131 type: string 1132 enum: 1133 - init 1134 - type: object 1135 required: 1136 - state 1137 properties: 1138 state: 1139 type: string 1140 enum: 1141 - waitingfornetworksegmenttobeready 1142 - type: object 1143 required: 1144 - state 1145 properties: 1146 state: 1147 type: string 1148 enum: 1149 - waitingfornetworkconfig 1150 - type: object 1151 required: 1152 - state 1153 properties: 1154 state: 1155 type: string 1156 enum: 1157 - waitingforstorageconfig 1158 - type: object 1159 required: 1160 - state 1161 properties: 1162 state: 1163 type: string 1164 enum: 1165 - dpaprovisioning 1166 - type: object 1167 required: 1168 - state 1169 properties: 1170 state: 1171 type: string 1172 enum: 1173 - waitingfordpatobeready 1174 - type: object 1175 required: 1176 - state 1177 properties: 1178 state: 1179 type: string 1180 enum: 1181 - waitingforextensionservicesconfig 1182 - type: object 1183 required: 1184 - state 1185 properties: 1186 state: 1187 type: string 1188 enum: 1189 - waitingforreboottoready 1190 - type: object 1191 required: 1192 - state 1193 properties: 1194 state: 1195 type: string 1196 enum: 1197 - ready 1198 - type: object 1199 required: 1200 - platform_config_state 1201 - state 1202 properties: 1203 platform_config_state: 1204 $ref: "#/components/schemas/HostPlatformConfigurationState" 1205 state: 1206 type: string 1207 enum: 1208 - hostplatformconfiguration 1209 - type: object 1210 required: 1211 - state 1212 properties: 1213 state: 1214 type: string 1215 enum: 1216 - waitingfordpustoup 1217 - type: object 1218 required: 1219 - state 1220 properties: 1221 retry: 1222 default: 1223 count: 0 1224 allOf: 1225 - $ref: "#/components/schemas/RetryInfo" 1226 state: 1227 type: string 1228 enum: 1229 - bootingwithdiscoveryimage 1230 - type: object 1231 required: 1232 - state 1233 properties: 1234 state: 1235 type: string 1236 enum: 1237 - switchtoadminnetwork 1238 - type: object 1239 required: 1240 - state 1241 properties: 1242 state: 1243 type: string 1244 enum: 1245 - waitingfornetworkreconfig 1246 - type: object 1247 required: 1248 - dpu_states 1249 - state 1250 properties: 1251 dpu_states: 1252 $ref: "#/components/schemas/DpuReprovisionStates" 1253 state: 1254 type: string 1255 enum: 1256 - dpureprovision 1257 - type: object 1258 required: 1259 - details 1260 - machine_id 1261 - state 1262 properties: 1263 details: 1264 $ref: "#/components/schemas/FailureDetails" 1265 machine_id: 1266 $ref: "#/components/schemas/MachineId" 1267 state: 1268 type: string 1269 enum: 1270 - failed 1271 - type: object 1272 required: 1273 - reprovision_state 1274 - state 1275 properties: 1276 reprovision_state: 1277 $ref: "#/components/schemas/HostReprovisionState" 1278 state: 1279 type: string 1280 enum: 1281 - hostreprovision 1282 - type: object 1283 required: 1284 - network_config_update_state 1285 - state 1286 properties: 1287 network_config_update_state: 1288 $ref: "#/components/schemas/NetworkConfigUpdateState" 1289 state: 1290 type: string 1291 enum: 1292 - networkconfigupdate 1293 LockdownInfo: 1294 type: object 1295 required: 1296 - mode 1297 - state 1298 properties: 1299 mode: 1300 $ref: "#/components/schemas/LockdownMode" 1301 state: 1302 $ref: "#/components/schemas/LockdownState" 1303 LockdownMode: 1304 description: Whether lockdown should be enabled or disabled in an operation 1305 type: string 1306 enum: 1307 - enable 1308 - disable 1309 LockdownState: 1310 type: string 1311 enum: 1312 - setlockdown 1313 - timewaitfordpudown 1314 - waitfordpuup 1315 - pollinglockdownstatus 1316 MachineId: 1317 type: string 1318 MachineState: 1319 oneOf: 1320 - type: object 1321 required: 1322 - state 1323 properties: 1324 state: 1325 type: string 1326 enum: 1327 - init 1328 - type: object 1329 required: 1330 - state 1331 properties: 1332 state: 1333 type: string 1334 enum: 1335 - enableipmioverlan 1336 - type: object 1337 required: 1338 - state 1339 properties: 1340 state: 1341 type: string 1342 enum: 1343 - waitingforplatformconfiguration 1344 - type: object 1345 required: 1346 - state 1347 properties: 1348 state: 1349 type: string 1350 enum: 1351 - pollingbiossetup 1352 - type: object 1353 required: 1354 - state 1355 properties: 1356 set_boot_order_info: 1357 anyOf: 1358 - $ref: "#/components/schemas/SetBootOrderInfo" 1359 - type: "null" 1360 state: 1361 type: string 1362 enum: 1363 - setbootorder 1364 - type: object 1365 required: 1366 - state 1367 - uefi_setup_info 1368 properties: 1369 state: 1370 type: string 1371 enum: 1372 - uefisetup 1373 uefi_setup_info: 1374 $ref: "#/components/schemas/UefiSetupInfo" 1375 - type: object 1376 required: 1377 - measuring_state 1378 - state 1379 properties: 1380 measuring_state: 1381 $ref: "#/components/schemas/MeasuringState" 1382 state: 1383 type: string 1384 enum: 1385 - measuring 1386 - type: object 1387 required: 1388 - state 1389 properties: 1390 state: 1391 type: string 1392 enum: 1393 - waitingfordiscovery 1394 - type: object 1395 required: 1396 - state 1397 properties: 1398 skip_reboot_wait: 1399 default: false 1400 type: boolean 1401 state: 1402 type: string 1403 enum: 1404 - discovered 1405 - description: Lockdown handling. 1406 type: object 1407 required: 1408 - lockdown_info 1409 - state 1410 properties: 1411 lockdown_info: 1412 $ref: "#/components/schemas/LockdownInfo" 1413 state: 1414 type: string 1415 enum: 1416 - waitingforlockdown 1417 MachineValidatingState: 1418 oneOf: 1419 - type: object 1420 required: 1421 - reboothost 1422 properties: 1423 reboothost: 1424 type: object 1425 required: 1426 - validation_id 1427 properties: 1428 validation_id: 1429 type: string 1430 format: uuid 1431 additionalProperties: false 1432 - type: object 1433 required: 1434 - machinevalidating 1435 properties: 1436 machinevalidating: 1437 type: object 1438 required: 1439 - completed 1440 - context 1441 - id 1442 - total 1443 properties: 1444 completed: 1445 type: integer 1446 format: uint 1447 minimum: 0.0 1448 context: 1449 type: string 1450 id: 1451 type: string 1452 format: uuid 1453 is_enabled: 1454 default: true 1455 type: boolean 1456 total: 1457 type: integer 1458 format: uint 1459 minimum: 0.0 1460 additionalProperties: false 1461 MeasuringState: 1462 description: MeasuringState contains states used for host attestion (or measured boot). 1463 oneOf: 1464 - description: 1465 WaitingForMeasurements is reported when the machine has reached a state where the API is now expecting measurements 1466 from the machine, which Scout sends upon receiving an Action::Measure from the API. 1467 type: string 1468 enum: 1469 - waitingformeasurements 1470 - description: 1471 PendingBundle is reported when the API has received measurements from the machine, but the measurements do 1472 not match a known bundle. At this point, a matching bundle needs to be created, either via "promoting" a measurement 1473 report from a machine (through manual interaction or trusted approval automation), or by manually creating a new bundle. 1474 type: string 1475 enum: 1476 - pendingbundle 1477 NetworkConfigUpdateState: 1478 description: 1479 Tenant has requested network config update for the existing instance. At this point, instance config, instance 1480 network config version are already increased. 1481 type: string 1482 enum: 1483 - waitingfornetworksegmenttobeready 1484 - waitingforconfigsynced 1485 - releaseoldresources 1486 PerformPowerOperation: 1487 oneOf: 1488 - type: object 1489 required: 1490 - state 1491 properties: 1492 state: 1493 type: string 1494 enum: 1495 - "off" 1496 - type: object 1497 required: 1498 - state 1499 properties: 1500 state: 1501 type: string 1502 enum: 1503 - "on" 1504 PowerDrainState: 1505 type: string 1506 enum: 1507 - "off" 1508 - powercycle 1509 - "on" 1510 ReprovisionState: 1511 oneOf: 1512 - type: string 1513 enum: 1514 - firmwareupgrade 1515 - waitingfornetworkinstall 1516 - poweringoffhost 1517 - powerdown 1518 - buffertime 1519 - verifyfirmareversions 1520 - waitingfornetworkconfig 1521 - reboothostbmc 1522 - reboothost 1523 - notunderreprovision 1524 - type: object 1525 required: 1526 - bmcfirmwareupgrade 1527 properties: 1528 bmcfirmwareupgrade: 1529 type: object 1530 required: 1531 - substate 1532 properties: 1533 substate: 1534 $ref: "#/components/schemas/BmcFirmwareUpgradeSubstate" 1535 additionalProperties: false 1536 - type: object 1537 required: 1538 - installdpuos 1539 properties: 1540 installdpuos: 1541 type: object 1542 required: 1543 - substate 1544 properties: 1545 substate: 1546 $ref: "#/components/schemas/InstallDpuOsState" 1547 additionalProperties: false 1548 RetryInfo: 1549 type: object 1550 required: 1551 - count 1552 properties: 1553 count: 1554 type: integer 1555 format: uint64 1556 minimum: 0.0 1557 SecureEraseBossContext: 1558 type: object 1559 required: 1560 - boss_controller_id 1561 - secure_erase_boss_state 1562 properties: 1563 boss_controller_id: 1564 type: string 1565 iteration: 1566 type: 1567 - integer 1568 - "null" 1569 format: uint32 1570 minimum: 0.0 1571 secure_erase_boss_state: 1572 $ref: "#/components/schemas/SecureEraseBossState" 1573 secure_erase_jid: 1574 type: 1575 - string 1576 - "null" 1577 SecureEraseBossState: 1578 oneOf: 1579 - type: object 1580 required: 1581 - state 1582 properties: 1583 state: 1584 type: string 1585 enum: 1586 - unlockhost 1587 - type: object 1588 required: 1589 - state 1590 properties: 1591 state: 1592 type: string 1593 enum: 1594 - secureeraseboss 1595 - type: object 1596 required: 1597 - state 1598 properties: 1599 state: 1600 type: string 1601 enum: 1602 - waitforjobcompletion 1603 - type: object 1604 required: 1605 - failure 1606 - power_state 1607 - state 1608 properties: 1609 failure: 1610 type: string 1611 power_state: 1612 type: string 1613 state: 1614 type: string 1615 enum: 1616 - handlejobfailure 1617 SetBootOrderInfo: 1618 type: object 1619 required: 1620 - set_boot_order_state 1621 properties: 1622 set_boot_order_jid: 1623 type: 1624 - string 1625 - "null" 1626 set_boot_order_state: 1627 $ref: "#/components/schemas/SetBootOrderState" 1628 SetBootOrderState: 1629 oneOf: 1630 - type: object 1631 required: 1632 - state 1633 properties: 1634 state: 1635 type: string 1636 enum: 1637 - setbootorder 1638 - type: object 1639 required: 1640 - state 1641 properties: 1642 state: 1643 type: string 1644 enum: 1645 - waitforsetbootorderjobscheduled 1646 - type: object 1647 required: 1648 - state 1649 properties: 1650 state: 1651 type: string 1652 enum: 1653 - reboothost 1654 - type: object 1655 required: 1656 - state 1657 properties: 1658 state: 1659 type: string 1660 enum: 1661 - waitforsetbootorderjobcompletion 1662 SetSecureBootState: 1663 oneOf: 1664 - type: object 1665 required: 1666 - disablesecurebootstate 1667 properties: 1668 disablesecurebootstate: 1669 type: string 1670 enum: 1671 - checksecurebootstatus 1672 - type: object 1673 required: 1674 - disablesecurebootstate 1675 properties: 1676 disablesecurebootstate: 1677 type: string 1678 enum: 1679 - disablesecureboot 1680 - type: object 1681 required: 1682 - disablesecurebootstate 1683 properties: 1684 disablesecurebootstate: 1685 type: string 1686 enum: 1687 - setsecureboot 1688 - type: object 1689 required: 1690 - disablesecurebootstate 1691 - reboot_count 1692 properties: 1693 disablesecurebootstate: 1694 type: string 1695 enum: 1696 - rebootdpu 1697 reboot_count: 1698 type: integer 1699 format: uint32 1700 minimum: 0.0 1701 - type: object 1702 required: 1703 - disablesecurebootstate 1704 - task_id 1705 properties: 1706 disablesecurebootstate: 1707 type: string 1708 enum: 1709 - waitcertificateupload 1710 task_id: 1711 type: string 1712 StateMachineArea: 1713 type: string 1714 enum: 1715 - default 1716 - hostinit 1717 - mainflow 1718 - assignedinstance 1719 UefiSetupInfo: 1720 type: object 1721 required: 1722 - uefi_setup_state 1723 properties: 1724 uefi_password_jid: 1725 type: 1726 - string 1727 - "null" 1728 uefi_setup_state: 1729 $ref: "#/components/schemas/UefiSetupState" 1730 UefiSetupState: 1731 description: Substates of enabling/disabling lockdown 1732 oneOf: 1733 - type: object 1734 required: 1735 - state 1736 properties: 1737 state: 1738 type: string 1739 enum: 1740 - unlockhost 1741 - type: object 1742 required: 1743 - state 1744 properties: 1745 state: 1746 type: string 1747 enum: 1748 - setuefipassword 1749 - type: object 1750 required: 1751 - state 1752 properties: 1753 state: 1754 type: string 1755 enum: 1756 - waitforpasswordjobscheduled 1757 - type: object 1758 required: 1759 - state 1760 properties: 1761 state: 1762 type: string 1763 enum: 1764 - powercyclehost 1765 - type: object 1766 required: 1767 - state 1768 properties: 1769 state: 1770 type: string 1771 enum: 1772 - waitforpasswordjobcompletion 1773 - type: object 1774 required: 1775 - state 1776 properties: 1777 state: 1778 type: string 1779 enum: 1780 - lockdownhost 1781 ValidationState: 1782 oneOf: 1783 - description: 1784 "Host machine validation placeholder for DPU machine validation TODO: add DPU validation state SKU validatioon 1785 can also be moved here, so that all validation done @ one place" 1786 type: object 1787 required: 1788 - machine_validation 1789 - validation_type 1790 properties: 1791 machine_validation: 1792 $ref: "#/components/schemas/MachineValidatingState" 1793 validation_type: 1794 type: string 1795 enum: 1796 - machinevalidation