Matt Spinler | f7f4a2b | 2025-02-20 14:24:00 -0600 | [diff] [blame] | 1 | description: > |
| 2 | Implement to provide an interface to start a failover. Depending on the |
| 3 | implementation, this may reside on the 'from' or 'to' object (or both). The |
| 4 | 'Options' method argument provides a mechanism to provide implementation |
| 5 | specific options. |
| 6 | |
| 7 | methods: |
| 8 | - name: StartFailover |
| 9 | description: > |
| 10 | Starts a failover operation. |
| 11 | parameters: |
Matt Spinler | f85ae8a | 2025-09-03 14:14:11 -0500 | [diff] [blame^] | 12 | - name: Requester |
| 13 | type: enum[self.Requester] |
| 14 | description: > |
| 15 | Identifies who's requesting the failover |
Matt Spinler | f7f4a2b | 2025-02-20 14:24:00 -0600 | [diff] [blame] | 16 | - name: Options |
| 17 | type: dict[string, variant[boolean]] |
| 18 | description: > |
| 19 | Additional options. The key is the string version of the Options |
| 20 | enum, in the form of |
| 21 | 'xyz.openbmc_project.Control.Failover.Options.X'. |
| 22 | errors: |
| 23 | - xyz.openbmc_project.Common.Error.Unavailable |
| 24 | |
| 25 | enumerations: |
Matt Spinler | f85ae8a | 2025-09-03 14:14:11 -0500 | [diff] [blame^] | 26 | - name: Requester |
| 27 | description: > |
| 28 | Who is requesting the failover. |
| 29 | values: |
| 30 | - name: Host |
| 31 | description: > |
| 32 | The host is requesting the failover. |
| 33 | - name: Redfish |
| 34 | description: > |
| 35 | A Redfish client is requesting the failover. |
| 36 | - name: SystemConfig |
| 37 | description: > |
| 38 | A system config checker on the BMC is requesting the failover. |
| 39 | - name: Tool |
| 40 | description: > |
| 41 | A command line tool is requesting the failover. |
Matt Spinler | f7f4a2b | 2025-02-20 14:24:00 -0600 | [diff] [blame] | 42 | - name: Options |
| 43 | description: > |
| 44 | Available options for starting the failover. |
| 45 | values: |
| 46 | - name: "Force" |
| 47 | description: > |
| 48 | A boolean option to force the failover when it would normally |
| 49 | not be available. The checks it bypasses are implementation |
| 50 | dependent. |