Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AWSInputVarsFactory ¶
type AWSInputVarsFactory struct{}
func (*AWSInputVarsFactory) NewInputVars ¶
func (f *AWSInputVarsFactory) NewInputVars(c config.ConfigView) terraform.InputVars
type BoshParams ¶
type BoshParams struct {
CredhubPassword string
CredhubAdminClientSecret string
CredhubCACert string
CredhubURL string
CredhubUsername string
ConcourseUsername string
ConcoursePassword string
GrafanaPassword string
DirectorUsername string
DirectorPassword string
DirectorCACert string
}
BoshParams represents the params used and produced by a BOSH deploy
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
client is a concrete implementation of IClient interface
func NewClient ¶
func NewClient( provider iaas.Provider, tfCLI terraform.CLIInterface, tfInputVarsFactory TFInputVarsFactory, boshClientFactory bosh.ClientFactory, flyClientFactory func(iaas.Provider, fly.Credentials, io.Writer, io.Writer, []byte) (fly.IClient, error), certGenerator func(constructor func(u *certs.User) (*lego.Client, error), caName string, provider iaas.Provider, ip ...string) (*certs.Certs, error), configClient config.IClient, deployArgs *deploy.Args, stdout, stderr io.Writer, ipChecker func() (string, error), acmeClientConstructor func(u *certs.User) (*lego.Client, error), passwordGenerator func(int) string, eightRandomLetters func() string, sshGenerator func() ([]byte, []byte, string, error), version string, versionFile []byte, credhubClientFactory func(server, id, secret, cert string) (credhub.IClient, error)) *Client
New returns a new client
type DirectorCerts ¶
DirectorCerts represents the certificate of a Director
type GCPInputVarsFactory ¶
type GCPInputVarsFactory struct {
// contains filtered or unexported fields
}
func (*GCPInputVarsFactory) NewInputVars ¶
func (f *GCPInputVarsFactory) NewInputVars(c config.ConfigView) terraform.InputVars
type HostedZone ¶
HostedZone represents a DNS hosted zone
type IClient ¶
type IClient interface {
Deploy() error
Destroy() error
FetchInfo() (*Info, error)
Maintain(maintain.Args) error
}
IClient represents a control-tower client
type Info ¶
type Info struct {
Terraform TerraformInfo `json:"terraform"`
Config config.Config `json:"config"`
Instances []bosh.Instance `json:"instances"`
CertExpiry string `json:"cert_expiry"`
GatewayUser string
}
Info represents the compound fields for info templates
type Maintenance ¶
type Maintenance struct {
StatusIndex int `json:"status_index"`
}
Maintenance is a struct representing values used by the maintenance command
type Requirements ¶
type Requirements struct {
Domain string
DirectorPublicIP string
DirectorCerts DirectorCerts
Certs Certs
}
Requirements represents the pre deployment requirements of a Concourse
type TFInputVarsFactory ¶
type TFInputVarsFactory interface {
NewInputVars(conf config.ConfigView) terraform.InputVars
}
func NewTFInputVarsFactory ¶
func NewTFInputVarsFactory(provider iaas.Provider) (TFInputVarsFactory, error)
type Table ¶
type Table struct {
Content string
Rows []interface{} `json:"Rows"`
}
Table represents the subelements of the Tables struct
type Tables ¶
type Tables struct {
Tables []Table `json:"Tables"`
}
Tables represents the output of bosh locks
type TerraformInfo ¶
TerraformInfo represents the terraform output fields needed for the info templates