Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type EventPublisher ¶
type EventPublisher func(reason, message string)
EventPublisher is a function type for publishing events associated with provisioning.
type Factory ¶
type Factory func(host *metal3v1alpha1.BareMetalHost, bmcCreds bmc.Credentials, publish EventPublisher) (Provisioner, error)
Factory is the interface for creating new Provisioner objects.
type HostConfigData ¶
type HostConfigData interface { // UserData is the interface for a function to retrieve user // data for a host being provisioned. UserData() (string, error) // NetworkData is the interface for a function to retrieve netwok // configuration for a host. NetworkData() (string, error) }
HostConfigData retrieves host configuration data
type Provisioner ¶
type Provisioner interface { // ValidateManagementAccess tests the connection information for // the host to verify that the location and credentials work. The // boolean argument tells the provisioner whether the current set // of credentials it has are different from the credentials it has // previously been using, without implying that either set of // credentials is correct. ValidateManagementAccess(credentialsChanged bool) (result Result, err error) // InspectHardware updates the HardwareDetails field of the host with // details of devices discovered on the hardware. It may be called // multiple times, and should return true for its dirty flag until the // inspection is completed. InspectHardware() (result Result, details *metal3v1alpha1.HardwareDetails, err error) // UpdateHardwareState fetches the latest hardware state of the // server and updates the HardwareDetails field of the host with // details. It is expected to do this in the least expensive way // possible, such as reading from a cache, and return dirty only // if any state information has changed. UpdateHardwareState() (result Result, err error) // Adopt brings an externally-provisioned host under management by // the provisioner. Adopt() (result Result, err error) // Provision writes the image from the host spec to the host. It // may be called multiple times, and should return true for its // dirty flag until the deprovisioning operation is completed. Provision(configData HostConfigData) (result Result, err error) // Deprovision removes the host from the image. It may be called // multiple times, and should return true for its dirty flag until // the deprovisioning operation is completed. Deprovision() (result Result, err error) // Delete removes the host from the provisioning system. It may be // called multiple times, and should return true for its dirty // flag until the deprovisioning operation is completed. Delete() (result Result, err error) // PowerOn ensures the server is powered on independently of any image // provisioning operation. PowerOn() (result Result, err error) // PowerOff ensures the server is powered off independently of any image // provisioning operation. PowerOff() (result Result, err error) }
Provisioner holds the state information for talking to the provisioning backend.
type Result ¶
type Result struct { // Dirty indicates whether the host object needs to be saved. Dirty bool // RequeueAfter indicates how long to wait before making the same // Provisioner call again. The request should only be requeued if // Dirty is also true. RequeueAfter time.Duration // Any error message produced by the provisioner. ErrorMessage string }
Result holds the response from a call in the Provsioner API.
Click to show internal directories.
Click to hide internal directories.