juju: github.com/juju/juju/worker/caasoperatorprovisioner Index | Files

package caasoperatorprovisioner

import "github.com/juju/juju/worker/caasoperatorprovisioner"

Index

Package Files

manifold.go worker.go

func Manifold Uses

func Manifold(config ManifoldConfig) dependency.Manifold

Manifold creates a manifold that runs a CAAS operator provisioner. See the ManifoldConfig type for discussion about how this can/should evolve.

func NewProvisionerWorker Uses

func NewProvisionerWorker(config Config) (worker.Worker, error)

NewProvisionerWorker starts and returns a new CAAS provisioner worker.

type CAASProvisionerFacade Uses

type CAASProvisionerFacade interface {
    OperatorProvisioningInfo() (apicaasprovisioner.OperatorProvisioningInfo, error)
    WatchApplications() (watcher.StringsWatcher, error)
    SetPasswords([]apicaasprovisioner.ApplicationPassword) (params.ErrorResults, error)
    Life(string) (life.Value, error)
    IssueOperatorCertificate(string) (apicaasprovisioner.OperatorCertificate, error)
}

CAASProvisionerFacade exposes CAAS provisioning functionality to a worker.

type Config Uses

type Config struct {
    Facade      CAASProvisionerFacade
    Broker      caas.Broker
    ModelTag    names.ModelTag
    AgentConfig agent.Config
    Clock       clock.Clock
    Logger      Logger
}

Config defines the operation of a Worker.

type Logger Uses

type Logger interface {
    Debugf(string, ...interface{})
    Infof(string, ...interface{})
}

Logger represents the methods used by the worker to log details.

type ManifoldConfig Uses

type ManifoldConfig struct {
    AgentName     string
    APICallerName string
    BrokerName    string
    ClockName     string

    NewWorker func(Config) (worker.Worker, error)
    Logger    Logger
}

ManifoldConfig defines a CAAS operator provisioner's dependencies.

func (ManifoldConfig) Validate Uses

func (config ManifoldConfig) Validate() error

Validate is called by start to check for bad configuration.

Package caasoperatorprovisioner imports 19 packages (graph) and is imported by 4 packages. Updated 2019-11-29. Refresh now. Tools for package owners.