Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
Default returns disk-based environment config storage rooted at JujuHome.
View Source
var DefaultAdminUsername = "admin"
DefaultAdminUsername is used as the username to connect as in the absense of any explicit username being defined in the config store.
View Source
var ErrEnvironInfoAlreadyExists = errors.New("environment info already exists")
Functions ¶
This section is empty.
Types ¶
type APICredentials ¶
type APICredentials struct { // User holds the name of the user to connect as. User string Password string }
APICredentials hold credentials for connecting to an API endpoint.
type APIEndpoint ¶
type APIEndpoint struct { // APIAddress holds a list of API addresses. It may not be // current, and it will be empty if the environment has not been // bootstrapped. Addresses []string // Hostnames holds a list of API addresses which may contain // unresolved hostnames. It's used to compare more recent API // addresses before resolving hostnames to determine if the cached // addresses have changed and therefore perform (a possibly slow) // local DNS resolution before comparing them against Addresses. Hostnames []string // CACert holds the CA certificate that // signed the API server's key. CACert string // EnvironUUID holds the UUID for the environment we are connecting to. // This may be empty if the environment has not been bootstrapped. EnvironUUID string }
APIEndpoint holds information about an API endpoint.
type EnvironInfo ¶
type EnvironInfo interface { // Initialized returns whether the environment information has // been initialized. It will return true for EnvironInfo instances // that have been created but not written. Initialized() bool // BootstrapConfig returns the configuration attributes // that an environment will be bootstrapped with. BootstrapConfig() map[string]interface{} // APIEndpoint returns the current API endpoint information. APIEndpoint() APIEndpoint // APICredentials returns the current API credentials. APICredentials() APICredentials // SetBootstrapConfig sets the configuration attributes // to be used for bootstrapping. // This method may only be called on an EnvironInfo // obtained using ConfigStorage.CreateInfo. SetBootstrapConfig(map[string]interface{}) // SetAPIEndpoint sets the API endpoint information // currently associated with the environment. SetAPIEndpoint(APIEndpoint) // SetAPICreds sets the API credentials currently // associated with the environment. SetAPICredentials(APICredentials) // Location returns the location of the source of the environment // information in a human readable format. Location() string // Write writes the current information to persistent storage. A // subsequent call to ConfigStorage.ReadInfo can retrieve it. After this // call succeeds, Initialized will return true. // It return ErrAlreadyExists if the EnvironInfo is not yet Initialized // and the EnvironInfo has been written before. Write() error // Destroy destroys the information associated with // the environment. Destroy() error }
EnvironInfo holds information associated with an environment.
type EnvironInfoData ¶
type EnvironInfoData struct { User string Password string EnvironUUID string `json:"environ-uuid,omitempty" yaml:"environ-uuid,omitempty"` StateServers []string `json:"state-servers" yaml:"state-servers"` ServerHostnames []string `json:"server-hostnames,omitempty" yaml:"server-hostnames,omitempty"` CACert string `json:"ca-cert" yaml:"ca-cert"` Config map[string]interface{} `json:"bootstrap-config,omitempty" yaml:"bootstrap-config,omitempty"` }
EnvironInfoData is the serialisation structure for the original JENV file.
type Storage ¶
type Storage interface { // ReadInfo reads information associated with // the environment with the given name. // If there is no such information, it will // return an errors.NotFound error. ReadInfo(envName string) (EnvironInfo, error) // CreateInfo creates some uninitialized information associated // with the environment with the given name. CreateInfo(envName string) EnvironInfo // List returns a slice of existing environment names that the Storage // knows about. List() ([]string, error) }
Storage stores environment configuration data.
Click to show internal directories.
Click to hide internal directories.