caasmodeloperator

package
v0.0.0-...-56cb166 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 19, 2025 License: AGPL-3.0 Imports: 19 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Register

func Register(registry facade.FacadeRegistry)

Register is called to expose a package of facades onto a given registry.

Types

type API

type API struct {
	*common.APIAddresser
	*common.PasswordChanger
	// contains filtered or unexported fields
}

API represents the controller model operator facade.

func NewAPI

func NewAPI(
	authorizer facade.Authorizer,
	resources facade.Resources,
	ctrlSt CAASControllerState,
	st CAASModelOperatorState,
	controllerConfigService ControllerConfigService,
	modelConfigService ModelConfigService,
	logger corelogger.Logger,
	modelUUID model.UUID,
) (*API, error)

NewAPI is alternative means of constructing a controller model facade.

func (*API) APIAddresses

func (u *API) APIAddresses(ctx context.Context) (result params.StringsResult, err error)

APIAddresses returns the list of addresses used to connect to the API.

func (*API) APIHostPorts

func (u *API) APIHostPorts(ctx context.Context) (result params.APIHostPortsResult, err error)

APIHostPorts returns the API server addresses.

func (*API) ModelOperatorProvisioningInfo

func (a *API) ModelOperatorProvisioningInfo(ctx context.Context) (params.ModelOperatorInfo, error)

ModelOperatorProvisioningInfo returns the information needed for provisioning a new model operator into a caas cluster.

func (*API) ModelUUID

func (a *API) ModelUUID(ctx context.Context) params.StringResult

ModelUUID returns the model UUID that this facade is used to operate. It is implemented here directly as a result of removing it from embedded APIAddresser *without* bumping the facade version. It should be blanked when this facade version is next incremented.

func (*API) WatchModelOperatorProvisioningInfo

func (a *API) WatchModelOperatorProvisioningInfo(ctx context.Context) (params.NotifyWatchResult, error)

WatchModelOperatorProvisioningInfo provides a watcher for changes that affect the information returned by ModelOperatorProvisioningInfo.

type CAASControllerState

type CAASControllerState interface {
	common.APIAddressAccessor
}

CAASModelOperatorState provides the subset of controller state required by the model operator provisioner.

type CAASModelOperatorState

type CAASModelOperatorState interface {
	FindEntity(tag names.Tag) (state.Entity, error)
}

CAASModelOperatorState provides the subset of model state required by the model operator provisioner.

type ControllerConfigService

type ControllerConfigService interface {
	// ControllerConfig returns the config values for the controller.
	ControllerConfig(context.Context) (controller.Config, error)
	// WatchControllerConfig returns a watcher that returns keys for any
	// changes to controller config.
	WatchControllerConfig() (watcher.StringsWatcher, error)
}

ControllerConfigService provides access to the controller configuration.

type ModelConfigService

type ModelConfigService interface {
	// ModelConfig returns the current config for the model.
	ModelConfig(context.Context) (*config.Config, error)
	// Watch returns a watcher that returns keys for any changes to model
	// config.
	Watch() (watcher.StringsWatcher, error)
}

ModelConfigService provides access to the model's configuration.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL