terraform

package
v0.6.0-alpha Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 12, 2020 License: Apache-2.0 Imports: 29 Imported by: 0

Documentation

Overview

Copyright (c) 2019-present Mattermost, Inc. All Rights Reserved. See LICENSE.txt for license information.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Output

type Output struct {
	Proxy struct {
		Value []struct {
			PrivateIP  string `json:"private_ip"`
			PublicIP   string `json:"public_ip"`
			PublicDNS  string `json:"public_dns"`
			PrivateDNS string `json:"private_dns"`
		} `json:"value"`
	} `json:"proxy"`
	Instances struct {
		Value []struct {
			PrivateIP  string `json:"private_ip"`
			PublicIP   string `json:"public_ip"`
			PublicDNS  string `json:"public_dns"`
			PrivateDNS string `json:"private_dns"`
			Tags       struct {
				Name string `json:"Name"`
			} `json:"tags"`
		} `json:"value"`
	} `json:"instances"`
	DBCluster struct {
		Value struct {
			ClusterEndpoint string `json:"endpoint"`
			ReaderEndpoint  string `json:"reader_endpoint"`
		} `json:"value"`
	} `json:"dbCluster"`
	Agents struct {
		Value []struct {
			PrivateIP  string `json:"private_ip"`
			PublicIP   string `json:"public_ip"`
			PublicDNS  string `json:"public_dns"`
			PrivateDNS string `json:"private_dns"`
			Tags       struct {
				Name string `json:"Name"`
			} `json:"tags"`
		} `json:"value"`
	} `json:"agents"`
	MetricsServer struct {
		Value struct {
			PrivateIP  string `json:"private_ip"`
			PublicIP   string `json:"public_ip"`
			PublicDNS  string `json:"public_dns"`
			PrivateDNS string `json:"private_dns"`
		} `json:"value"`
	} `json:"metricsServer"`
}

Output contains the output variables which are created after a deployment.

func (*Output) HasProxy

func (o *Output) HasProxy() bool

HasProxy returns whether a deployment has proxy installed in it or not.

func (*Output) IsEmpty

func (o *Output) IsEmpty() bool

IsEmpty returns whether a deployment has some data or not. This is useful to check if info is being checked after a cluster is destroyed.

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(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) Create

func (t *Terraform) Create() error

Create creates a new load test environment.

func (*Terraform) Destroy

func (t *Terraform) Destroy() error

Destroy destroys the created load-test environment.

func (*Terraform) Info

func (t *Terraform) Info() error

Info displays information about the current load-test deployment.

func (*Terraform) OpenBrowserFor

func (t *Terraform) OpenBrowserFor(resource string) error

OpenBrowserFor opens a web browser for the resource

func (*Terraform) OpenSSHFor

func (t *Terraform) OpenSSHFor(resource string) error

OpenSSHFor starts a ssh connection to the resource

func (*Terraform) Output

func (t *Terraform) Output() (*Output, error)

Output reads the current terraform output

func (*Terraform) StartCoordinator

func (t *Terraform) StartCoordinator() error

StartCoordinator starts the coordinator in the current load-test deployment.

func (*Terraform) StopCoordinator

func (t *Terraform) StopCoordinator() error

StopCoordinator stops the coordinator in the current load-test deployment.

Directories

Path Synopsis
Package ssh is a simple wrapper around an ssh.Client which implements utilities to be performed with a remote server.
Package ssh is a simple wrapper around an ssh.Client which implements utilities to be performed with a remote server.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL