Documentation ¶
Index ¶
- Variables
- type CertificateCA
- type CertificateLeaf
- type ConfigWrapper
- type Container
- type Copy
- type Docs
- type Helm
- type ImageCache
- type Ingress
- type K8sCluster
- type K8sConfig
- type LocalExec
- type Network
- type NomadCluster
- type NomadJob
- type Null
- type Provider
- type RandomCreature
- type RandomID
- type RandomNumber
- type RandomPassword
- type RandomUUID
- type RemoteExec
- type Template
Constants ¶
This section is empty.
Variables ¶
var ( ErrClusterDriverNotImplemented = errors.New("driver not implemented") ErrClusterExists = errors.New("cluster exists") )
Functions ¶
This section is empty.
Types ¶
type CertificateCA ¶
type CertificateCA struct {
// contains filtered or unexported fields
}
func NewCertificateCA ¶
func NewCertificateCA(co *resources.CertificateCA, l hclog.Logger) *CertificateCA
func (*CertificateCA) Create ¶
func (c *CertificateCA) Create() error
func (*CertificateCA) Destroy ¶
func (c *CertificateCA) Destroy() error
func (*CertificateCA) Lookup ¶
func (c *CertificateCA) Lookup() ([]string, error)
func (*CertificateCA) Refresh ¶ added in v0.5.13
func (c *CertificateCA) Refresh() error
type CertificateLeaf ¶
type CertificateLeaf struct {
// contains filtered or unexported fields
}
func NewCertificateLeaf ¶
func NewCertificateLeaf(co *resources.CertificateLeaf, l hclog.Logger) *CertificateLeaf
func (*CertificateLeaf) Create ¶
func (c *CertificateLeaf) Create() error
func (*CertificateLeaf) Destroy ¶
func (c *CertificateLeaf) Destroy() error
func (*CertificateLeaf) Lookup ¶
func (c *CertificateLeaf) Lookup() ([]string, error)
func (*CertificateLeaf) Refresh ¶ added in v0.5.13
func (c *CertificateLeaf) Refresh() error
type ConfigWrapper ¶
type ConfigWrapper struct { Type string Value interface{} }
ConfigWrapper allows the provider config to be deserialized to a type
type Container ¶
type Container struct {
// contains filtered or unexported fields
}
Container is a provider for creating and destroying Docker containers
func NewContainer ¶
func NewContainer(co *resources.Container, cl clients.ContainerTasks, hc clients.HTTP, l hclog.Logger) *Container
NewContainer creates a new container with the given config and Docker client
func NewContainerSidecar ¶
func (*Container) Create ¶
Create implements provider method and creates a Docker container with the given config
type Docs ¶
type Docs struct {
// contains filtered or unexported fields
}
Docs defines a provider for creating documentation containers
type Helm ¶
type Helm struct {
// contains filtered or unexported fields
}
func NewHelm ¶
func NewHelm(c *resources.Helm, kc clients.Kubernetes, hc clients.Helm, g clients.Getter, l hclog.Logger) *Helm
NewHelm creates a new Helm provider
type ImageCache ¶
type ImageCache struct {
// contains filtered or unexported fields
}
func NewImageCache ¶
func NewImageCache(co *resources.ImageCache, cl clients.ContainerTasks, hc clients.HTTP, l hclog.Logger) *ImageCache
NewContainer creates a new container with the given config and Docker client
func (*ImageCache) Create ¶
func (c *ImageCache) Create() error
func (*ImageCache) Destroy ¶
func (c *ImageCache) Destroy() error
func (*ImageCache) Lookup ¶
func (c *ImageCache) Lookup() ([]string, error)
func (*ImageCache) Refresh ¶ added in v0.5.13
func (c *ImageCache) Refresh() error
type Ingress ¶
type Ingress struct {
// contains filtered or unexported fields
}
Ingress defines a provider for handling connection ingress for a cluster
func NewIngress ¶
func NewIngress( c *resources.Ingress, cc clients.ContainerTasks, co clients.Connector, l hclog.Logger) *Ingress
NewIngress creates a new ingress provider
func (*Ingress) Destroy ¶
Destroy satisfies the interface method but is not implemented by LocalExec
type K8sCluster ¶
type K8sCluster struct {
// contains filtered or unexported fields
}
K8sCluster defines a provider which can create Kubernetes clusters
func NewK8sCluster ¶
func NewK8sCluster(c *resources.K8sCluster, cc clients.ContainerTasks, kc clients.Kubernetes, hc clients.HTTP, co clients.Connector, l hclog.Logger) *K8sCluster
NewK8sCluster creates a new Kubernetes cluster provider
func (*K8sCluster) Create ¶
func (c *K8sCluster) Create() error
Create implements interface method to create a cluster of the specified type
func (*K8sCluster) Destroy ¶
func (c *K8sCluster) Destroy() error
Destroy implements interface method to destroy a cluster
func (*K8sCluster) ImportLocalDockerImages ¶
func (c *K8sCluster) ImportLocalDockerImages(name string, id string, images []resources.Image, force bool) error
ImportLocalDockerImages fetches Docker images stored on the local client and imports them into the cluster
func (*K8sCluster) Lookup ¶
func (c *K8sCluster) Lookup() ([]string, error)
Lookup the a clusters current state
func (*K8sCluster) Refresh ¶ added in v0.5.13
func (c *K8sCluster) Refresh() error
type K8sConfig ¶
type K8sConfig struct {
// contains filtered or unexported fields
}
func NewK8sConfig ¶
NewK8sConfig creates a provider which can create and destroy kubernetes configuration
type LocalExec ¶
type LocalExec struct {
// contains filtered or unexported fields
}
ExecLocal provider allows the execution of arbitrary commands on the local machine
func NewLocalExec ¶
NewExecLocal creates a new Local Exec provider
func (*LocalExec) Destroy ¶
Destroy statisfies the interface method but is not implemented by LocalExec
type Network ¶
type Network struct {
// contains filtered or unexported fields
}
Network is a provider for creating docker networks
func NewNetwork ¶
NewNetwork creates a new network with the given config and Docker client
type NomadCluster ¶
type NomadCluster struct {
// contains filtered or unexported fields
}
NomadCluster defines a provider which can create Kubernetes clusters
func NewNomadCluster ¶
func NewNomadCluster(c *resources.NomadCluster, cc clients.ContainerTasks, hc clients.Nomad, con clients.Connector, l hclog.Logger) *NomadCluster
NewNomadCluster creates a new Nomad cluster provider
func (*NomadCluster) Create ¶
func (c *NomadCluster) Create() error
Create implements interface method to create a cluster of the specified type
func (*NomadCluster) Destroy ¶
func (c *NomadCluster) Destroy() error
Destroy implements interface method to destroy a cluster
func (*NomadCluster) ImportLocalDockerImages ¶
func (c *NomadCluster) ImportLocalDockerImages(name string, id string, images []resources.Image, force bool) error
ImportLocalDockerImages fetches Docker images stored on the local client and imports them into the cluster
func (*NomadCluster) Lookup ¶
func (c *NomadCluster) Lookup() ([]string, error)
Lookup the a clusters current state
func (*NomadCluster) Refresh ¶ added in v0.5.13
func (c *NomadCluster) Refresh() error
Refresh is called when `up` is run and the resource has been marked as created checks the nodes are healthy and replaces if needed.
type NomadJob ¶
type NomadJob struct {
// contains filtered or unexported fields
}
NomadJob is a provider which enabled the creation and destruction of Nomad jobs
func NewNomadJob ¶
NewNomadJob creates a provider which can create and destroy Nomad jobs
type Null ¶
type Null struct {
// contains filtered or unexported fields
}
Null is a noop provider
type Provider ¶
type Provider interface { // Create is called when a resource does not exist or creation has previously // failed and 'up' is run Create() error // Destroy is called when a resource is failed or created and 'down' is run Destroy() error // Refresh is called when a resource is created and 'up' is run Refresh() error // Lookup is a utility to determine the existence of a resource Lookup() ([]string, error) }
Provider defines an interface to be implemented by providers
type RandomCreature ¶ added in v0.5.20
type RandomCreature struct {
// contains filtered or unexported fields
}
RandomCreature is a provider for generating random creatures
func NewRandomCreature ¶ added in v0.5.20
func NewRandomCreature(r *resources.RandomCreature, l hclog.Logger) *RandomCreature
NewRandomCreature creates a new random Creature
func (*RandomCreature) Create ¶ added in v0.5.20
func (r *RandomCreature) Create() error
func (*RandomCreature) Destroy ¶ added in v0.5.20
func (r *RandomCreature) Destroy() error
func (*RandomCreature) Lookup ¶ added in v0.5.20
func (r *RandomCreature) Lookup() ([]string, error)
func (*RandomCreature) Refresh ¶ added in v0.5.20
func (r *RandomCreature) Refresh() error
type RandomID ¶ added in v0.5.20
type RandomID struct {
// contains filtered or unexported fields
}
RandomID is a provider for generating random IDs
func NewRandomID ¶ added in v0.5.20
NewRandomID creates a new random ID
type RandomNumber ¶ added in v0.5.17
type RandomNumber struct {
// contains filtered or unexported fields
}
RandomNumber is a random number provider
func NewRandomNumber ¶ added in v0.5.17
func NewRandomNumber(c *resources.RandomNumber, l hclog.Logger) *RandomNumber
NewRandomNumber creates a random number provider
func (*RandomNumber) Create ¶ added in v0.5.17
func (n *RandomNumber) Create() error
func (*RandomNumber) Destroy ¶ added in v0.5.17
func (n *RandomNumber) Destroy() error
func (*RandomNumber) Lookup ¶ added in v0.5.17
func (n *RandomNumber) Lookup() ([]string, error)
func (*RandomNumber) Refresh ¶ added in v0.5.17
func (n *RandomNumber) Refresh() error
type RandomPassword ¶ added in v0.5.20
type RandomPassword struct {
// contains filtered or unexported fields
}
RandomPassword is a provider for generating random passwords
func NewRandomPassword ¶ added in v0.5.20
func NewRandomPassword(r *resources.RandomPassword, l hclog.Logger) *RandomPassword
NewRandomPassword creates a new random password
func (*RandomPassword) Create ¶ added in v0.5.20
func (r *RandomPassword) Create() error
func (*RandomPassword) Destroy ¶ added in v0.5.20
func (r *RandomPassword) Destroy() error
func (*RandomPassword) Lookup ¶ added in v0.5.20
func (r *RandomPassword) Lookup() ([]string, error)
func (*RandomPassword) Refresh ¶ added in v0.5.20
func (r *RandomPassword) Refresh() error
type RandomUUID ¶ added in v0.5.20
type RandomUUID struct {
// contains filtered or unexported fields
}
RandomUUID is a provider for generating random UUIDs
func NewRandomUUID ¶ added in v0.5.20
func NewRandomUUID(r *resources.RandomUUID, l hclog.Logger) *RandomUUID
NewRandomUUID creates a new random UUID
func (*RandomUUID) Create ¶ added in v0.5.20
func (r *RandomUUID) Create() error
func (*RandomUUID) Destroy ¶ added in v0.5.20
func (r *RandomUUID) Destroy() error
func (*RandomUUID) Lookup ¶ added in v0.5.20
func (r *RandomUUID) Lookup() ([]string, error)
func (*RandomUUID) Refresh ¶ added in v0.5.20
func (r *RandomUUID) Refresh() error
type RemoteExec ¶
type RemoteExec struct {
// contains filtered or unexported fields
}
ExecRemote provider allows the execution of arbitrary commands on an existing target or can create a new container before running
func NewRemoteExec ¶
func NewRemoteExec(c *resources.RemoteExec, ex clients.ContainerTasks, l hclog.Logger) *RemoteExec
NewRemoteExec creates a new Exec provider
func (*RemoteExec) Destroy ¶
func (c *RemoteExec) Destroy() error
Destroy satisfies the interface requirements but is not used as the resource is not persistent
func (*RemoteExec) Lookup ¶
func (c *RemoteExec) Lookup() ([]string, error)
Lookup satisfies the interface requirements but is not used as the resource is not persistent
func (*RemoteExec) Refresh ¶ added in v0.5.13
func (c *RemoteExec) Refresh() error
type Template ¶
type Template struct {
// contains filtered or unexported fields
}
Template provider allows parsing and output of file based templates
func NewTemplate ¶
NewTemplate creates a new Local Exec provider