Documentation
¶
Overview ¶
Package secretsdrainworker provides a worker running on the agent for draining secrets to the new active backend when the model changed secret backend.
Index ¶
- func Manifold(config ManifoldConfig) dependency.Manifold
- func NewSecretBackendsClientForAgent(caller base.APICaller) (jujusecrets.BackendsClient, error)
- func NewUserSecretBackendsClient(caller base.APICaller) (jujusecrets.BackendsClient, error)
- func NewWorker(config Config) (worker.Worker, error)
- type Config
- type ManifoldConfig
- type SecretsDrainFacade
- type Worker
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Manifold ¶
func Manifold(config ManifoldConfig) dependency.Manifold
Manifold returns a Manifold that encapsulates the secretsdrainworker worker.
func NewSecretBackendsClientForAgent ¶
func NewSecretBackendsClientForAgent(caller base.APICaller) (jujusecrets.BackendsClient, error)
NewSecretBackendsClientForAgent returns a new secret backends client for draining charm owned secrets from agents.
func NewUserSecretBackendsClient ¶
func NewUserSecretBackendsClient(caller base.APICaller) (jujusecrets.BackendsClient, error)
NewUserSecretBackendsClient returns a new secret backends client for draining user secrets from controller.
Types ¶
type Config ¶
type Config struct { SecretsDrainFacade Logger logger.Logger SecretsBackendGetter func() (jujusecrets.BackendsClient, error) LeadershipTrackerFunc func() leadership.ChangeTracker }
Config defines the operation of the Worker.
type ManifoldConfig ¶
type ManifoldConfig struct { APICallerName string LeadershipTrackerName string Logger logger.Logger NewSecretsDrainFacade func(base.APICaller) SecretsDrainFacade NewWorker func(Config) (worker.Worker, error) NewBackendsClient func(base.APICaller) (jujusecrets.BackendsClient, error) }
ManifoldConfig describes the resources used by the secretsdrainworker worker.
func (ManifoldConfig) Validate ¶
func (cfg ManifoldConfig) Validate() error
Validate is called by start to check for bad configuration.
type SecretsDrainFacade ¶
type SecretsDrainFacade interface { WatchSecretBackendChanged(context.Context) (watcher.NotifyWatcher, error) GetSecretsToDrain(context.Context) ([]coresecrets.SecretMetadataForDrain, error) ChangeSecretBackend(context.Context, []secretsdrain.ChangeSecretBackendArg) (secretsdrain.ChangeSecretBackendResult, error) }
SecretsDrainFacade instances provide a set of API for the worker to deal with secret drain process.
func NewSecretsDrainFacadeForAgent ¶
func NewSecretsDrainFacadeForAgent(caller base.APICaller) SecretsDrainFacade
NewSecretsDrainFacadeForAgent returns a new SecretsDrainFacade for draining charm owned secrets from agents.
func NewUserSecretsDrainFacade ¶
func NewUserSecretsDrainFacade(caller base.APICaller) SecretsDrainFacade
NewUserSecretsDrainFacade returns a new SecretsDrainFacade for draining user secrets from controller.