Documentation ¶
Overview ¶
Copyright (c) 2019-present Mattermost, Inc. All Rights Reserved. See LICENSE.txt for license information.
Index ¶
- type DBCluster
- type ElasticSearchDomain
- type IAMAccess
- type Instance
- type Output
- func (o *Output) DBReaders() []string
- func (o *Output) DBWriter() string
- func (o *Output) HasAppServers() bool
- func (o *Output) HasDB() bool
- func (o *Output) HasElasticSearch() bool
- func (o *Output) HasJobServer() bool
- func (o *Output) HasMetrics() bool
- func (o *Output) HasProxy() bool
- func (o *Output) HasS3Bucket() bool
- func (o *Output) HasS3Key() bool
- type S3Bucket
- type Tags
- type Terraform
- func (t *Terraform) Cleanup()
- func (t *Terraform) Config() *deployment.Config
- func (t *Terraform) Create(initData bool) error
- func (t *Terraform) Destroy() error
- func (t *Terraform) GetCoordinatorStatus() (coordinator.Status, error)
- func (t *Terraform) Info() error
- func (t *Terraform) OpenBrowserFor(resource string) error
- func (t *Terraform) OpenSSHFor(resource string) error
- func (t *Terraform) Output() (*Output, error)
- func (t *Terraform) RunSSHCommand(resource string, args []string) error
- func (t *Terraform) StartCoordinator(config *coordinator.Config) error
- func (t *Terraform) StopCoordinator() (coordinator.Status, error)
- func (t *Terraform) Sync() error
- func (t *Terraform) UploadDashboard(dashboard string) (string, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type DBCluster ¶
type DBCluster struct {
Endpoints []string `json:"endpoint"`
}
DBCluster defines a RDS cluster instance resource.
type ElasticSearchDomain ¶
ElasticSearchDomain is an AWS Elasticsearch domain.
type IAMAccess ¶
IAMAccess is a set of credentials that allow API requests to be made as an IAM user.
type Instance ¶
type Instance struct { PrivateIP string `json:"private_ip"` PublicIP string `json:"public_ip"` PublicDNS string `json:"public_dns"` PrivateDNS string `json:"private_dns"` Tags Tags `json:"tags"` }
Instance is an AWS EC2 instance resource.
type Output ¶
type Output struct { ClusterName string Proxy Instance `json:"proxy"` Instances []Instance `json:"instances"` DBCluster DBCluster `json:"dbCluster"` Agents []Instance `json:"agents"` MetricsServer Instance `json:"metricsServer"` ElasticSearchServer ElasticSearchDomain `json:"elasticServer"` JobServers []Instance `json:"jobServers"` S3Bucket S3Bucket `json:"s3Bucket"` S3Key IAMAccess `json:"s3Key"` }
Output contains the output variables which are created after a deployment.
func (*Output) HasAppServers ¶
HasAppServers returns whether a deployment includes app server instances.
func (*Output) HasDB ¶ added in v1.2.0
HasDB returns whether a deployment has database installed in it or not.
func (*Output) HasElasticSearch ¶
HasElasticSearch returns whether a deployment has ElasticSaearch installed in it or not.
func (*Output) HasJobServer ¶ added in v1.3.0
HasJobServer returns whether a deployment has a dedicated job server.
func (*Output) HasMetrics ¶
HasMetrics returns whether a deployment includes the metrics instance.
func (*Output) HasS3Bucket ¶
HasS3Bucket returns whether a deployment includes the S3 Bucket.
type Tags ¶
type Tags struct {
Name string `json:"Name"`
}
Tags are the values attached to resource.
type Terraform ¶
type Terraform struct {
// contains filtered or unexported fields
}
Terraform manages all operations related to interacting with an AWS environment using Terraform.
func New ¶
func New(id string, cfg *deployment.Config) *Terraform
New returns a new Terraform instance.
func (*Terraform) Cleanup ¶
func (t *Terraform) Cleanup()
Cleanup is called at the end of each command to clean temporary files
func (*Terraform) Config ¶ added in v1.3.0
func (t *Terraform) Config() *deployment.Config
Config returns the deployment config associated with the Terraform instance.
func (*Terraform) GetCoordinatorStatus ¶
func (t *Terraform) GetCoordinatorStatus() (coordinator.Status, error)
GetCoordinatorStatus returns information about the status of the coordinator in the current load-test deployment.
func (*Terraform) OpenBrowserFor ¶
OpenBrowserFor opens a web browser for the resource
func (*Terraform) OpenSSHFor ¶
OpenSSHFor starts a ssh connection to the resource
func (*Terraform) Output ¶
Output reads the current terraform output and caches it internally for future use. The output is guaranteed to be up to date after calls to Create and Destroy.
func (*Terraform) RunSSHCommand ¶ added in v1.3.0
RunSSHCommand runs a command on a given machine.
func (*Terraform) StartCoordinator ¶
func (t *Terraform) StartCoordinator(config *coordinator.Config) error
StartCoordinator starts the coordinator in the current load-test deployment.
func (*Terraform) StopCoordinator ¶
func (t *Terraform) StopCoordinator() (coordinator.Status, error)
StopCoordinator stops the coordinator in the current load-test deployment.