boshinit

package
v2.1.0+incompatible Latest Latest
Warning

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

Go to latest
Published: Jan 18, 2017 License: Apache-2.0 Imports: 12 Imported by: 0

Documentation

Index

Constants

View Source
const (
	BOSH_BOOTLOADER_COMMON_NAME = "BOSH Bootloader"
)
View Source
const OS_READ_WRITE_MODE = os.FileMode(0644)
View Source
const PASSWORD_LENGTH = 15
View Source
const PASSWORD_PREFIX = "p-"
View Source
const USERNAME_LENGTH = 7
View Source
const USERNAME_PREFIX = "user-"

Variables

This section is empty.

Functions

This section is empty.

Types

type CommandBuilder

type CommandBuilder struct {
	Path      string
	Directory string
	Stdout    io.Writer
	Stderr    io.Writer
}

func NewCommandBuilder

func NewCommandBuilder(path string, dir string, stdout io.Writer, stderr io.Writer) CommandBuilder

func (CommandBuilder) DeleteCommand

func (b CommandBuilder) DeleteCommand() *exec.Cmd

func (CommandBuilder) DeployCommand

func (b CommandBuilder) DeployCommand() *exec.Cmd

type CommandRunner

type CommandRunner struct {
	// contains filtered or unexported fields
}

func NewCommandRunner

func NewCommandRunner(dir string, command executable) CommandRunner

func (CommandRunner) Execute

func (r CommandRunner) Execute(manifest []byte, privateKey string, state State) (State, error)

type DeployInput

type DeployInput struct {
	IAAS                        string
	DirectorName                string
	DirectorUsername            string
	DirectorPassword            string
	State                       State
	InfrastructureConfiguration InfrastructureConfiguration
	SSLKeyPair                  ssl.KeyPair
	EC2KeyPair                  ec2.KeyPair
	Credentials                 map[string]string
}

func NewDeployInput

func NewDeployInput(state storage.State, infrastructureConfiguration InfrastructureConfiguration, stringGenerator stringGenerator, envID, iaas string) (DeployInput, error)

type DeployOutput

type DeployOutput struct {
	Credentials        map[string]string
	BOSHInitState      State
	DirectorSSLKeyPair ssl.KeyPair
	BOSHInitManifest   string
}

type Executor

type Executor struct {
	// contains filtered or unexported fields
}

func NewExecutor

func NewExecutor(manifestBuilder manifestBuilder, deployCommand command, deleteCommand command, logger logger) Executor

func (Executor) Delete

func (e Executor) Delete(boshInitManifest string, boshInitState State, ec2PrivateKey string) error

func (Executor) Deploy

func (e Executor) Deploy(input DeployInput) (DeployOutput, error)

type InfrastructureConfiguration

type InfrastructureConfiguration struct {
	ExternalIP string
	AWS        InfrastructureConfigurationAWS
	GCP        InfrastructureConfigurationGCP
}

type InfrastructureConfigurationAWS

type InfrastructureConfigurationAWS struct {
	AWSRegion        string
	SubnetID         string
	AvailabilityZone string
	AccessKeyID      string
	SecretAccessKey  string
	SecurityGroup    string
}

type InfrastructureConfigurationGCP

type InfrastructureConfigurationGCP struct {
	Zone           string
	NetworkName    string
	SubnetworkName string
	BOSHTag        string
	InternalTag    string
	Project        string
	JsonKey        string
}

type State

type State map[string]interface{}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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