Documentation ¶
Overview ¶
Package migrationminion defines the API facade for use by the migration minion worker to monitor the progress of, and interact with, model migrations.
The migration minion runs inside every non-controller agent.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type API ¶
type API struct {
// contains filtered or unexported fields
}
API implements the API required for the model migration master worker.
func NewAPI ¶
func NewAPI( backend Backend, resources facade.Resources, authorizer facade.Authorizer, ) (*API, error)
NewAPI creates a new API server endpoint for the model migration master worker.
func NewFacade ¶
func NewFacade( st *state.State, resources facade.Resources, authorizer facade.Authorizer, ) (*API, error)
NewFacade provides the signature required for facade registration.
func (*API) Report ¶
func (api *API) Report(info params.MinionReport) error
Report allows a migration minion to submit whether it succeeded or failed for a specific migration phase.
func (*API) Watch ¶
func (api *API) Watch() (params.NotifyWatchResult, error)
Watch starts watching for status updates for a migration attempt for the model. It will report when a migration starts and when its status changes (including when it finishes). An initial event will be fired if there has ever been a migration attempt for the model.
The MigrationStatusWatcher facade must be used to receive events from the watcher.
type Backend ¶
type Backend interface { WatchMigrationStatus() state.NotifyWatcher Migration(string) (state.ModelMigration, error) }
Backend defines the state functionality required by the MigrationMinion facade.