cluster

package
v0.0.0-...-9d0dce2 Latest Latest
Warning

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

Go to latest
Published: Mar 21, 2018 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ValidationError = errgo.New("validation failed")
)

Functions

This section is empty.

Types

type Cluster

type Cluster struct {
	// Name within the domain e.g. alpha-c32
	Stack string `mapstructure:"stack"`
	// Domain name e.g. pulcy.com
	Domain string `mapstructure:"domain"`
	// SSH tunnel needed to reach the cluster (optional)
	Tunnel string `mapstructure:"tunnel,omitempty"`
	// Size of the cluster (in instances==machines)
	InstanceCount int `mapstructure:"instance-count,omitempty"`

	// Orchestrator used on this cluster (defaults to "fleet")
	Orchestrator string `mapstructure:"orchestrator,omitempty"`

	// Docker options
	DockerOptions DockerOptions

	// Fleet options
	FleetOptions FleetOptions

	// Kubernetes options
	KubernetesOptions KubernetesOptions

	// Default network
	Network string `mapstructure:"network,omitempty"`

	DefaultOptions flags.Options `mapstructure:"default-options,omitempty"`
}

Cluster contains all variables describing a cluster (deployment target)

func New

func New(domain, stack string, instanceCount int) Cluster

New returns a new cluster for testing purposes.

func ParseClusterFromFile

func ParseClusterFromFile(path string) (*Cluster, error)

ParseClusterFromFile reads a cluster from file

type DockerOptions

type DockerOptions struct {
	// Arguments to add to the docker command for logging
	LoggingArgs []string `mapstructure:"docker-log-args,omitempty"`
	EnvFile     string   `mapstructure:"env-file,omitempty"`
}

DockerOptions contains options used to generate docker commands for the jobs that run on this cluster.

type FleetOptions

type FleetOptions struct {
	// A list of unit names to add to the `After` setting of all generated units
	After []string
	// A list of unit names to add to the `Wants` setting of all generated units
	Wants []string
	// A list of unit names to add to the `Requires` setting of all generated units
	Requires []string

	GlobalInstanceConstraints []string
}

FleetOptions contains options used to generate fleet units for the jobs that run on this cluster.

type KubernetesOptions

type KubernetesOptions struct {
	KubeConfig                string   // Full path of the kube-config file
	Context                   string   `mapstructure:"context,omitempty"`          // Name of the context (defined in KubeConfig) to use
	RegistrySecrets           []string `mapstructure:"registry-secrets,omitempty"` // Name of secrets added to imagePullSecrets of each generated pod.
	GlobalInstanceConstraints []string `mapstructure:"global-instance-constraints,omitempty"`
	Domain                    string   `mapstructure:"domain,omitempty"` // CLuster local domain (defaults to 'cluster.local')
}

KubernetesOptions contains options used to generate kubernetes resources for the jobs that run on this cluster.

Jump to

Keyboard shortcuts

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