| description: > |
| Implement to schedule Epoch time to power on/off the Host. |
| properties: |
| - name: ScheduledTime |
| type: uint64 |
| default: 0 |
| description: > |
| ScheduledTime is a date time when the host will be powered on/off. The |
| time is the Epoch time, number of seconds since 1 Jan 1970 00::00::00 |
| UTC. |
| |
| When ScheduledTime is 0, it means the functionality is disabled. When |
| ScheduledTime is smaller than current time, error InvalidTime will be |
| thrown. When the controller detects the ScheduledTime has passed, it |
| will execute the ScheduledTransition and reset the value to 0. Once |
| the transition starts, there won't be any retries. When the real time |
| changes, the controller shall check if the time is still in the |
| future. If so, it will stop the existing timer and restart it with new |
| wait time. Otherwise, stop the existing timer and execute the |
| ScheduledTransition. When ScheduledTime is reached, but the host is |
| not ready to power on/off, e.g. when BMC is rebooting, BMC shall set |
| the host ScheduledTransition after it is ready. |
| errors: |
| - xyz.openbmc_project.ScheduledTime.Error.InvalidTime |
| |
| - name: ScheduledTransition |
| type: enum[xyz.openbmc_project.State.Host.Transition] |
| default: "On" |
| description: > |
| The desired power transition to support scheduled power on/off. The |
| default operation supports scheduled power on. |