deployment

package
v0.0.0-...-b9690c5 Latest Latest
Warning

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

Go to latest
Published: Mar 24, 2022 License: BSD-2-Clause Imports: 7 Imported by: 0

Documentation

Index

Constants

View Source
const (
	NetworkTypeManual  = bpdepman.NetworkTypeManual
	NetworkTypeLocal   = bpdepman.NetworkTypeLocal
	NetworkTypeDynamic = bpdepman.NetworkTypeDynamic
	NetworkTypeVip     = bpdepman.NetworkTypeVip
)

Variables

Functions

This section is empty.

Types

type Deployment

type Deployment struct {
	Manifest bpdepman.Manifest

	Name string

	Releases []Release

	Networks []Network

	Jobs []Job

	CompilationInstance Instance
}

type Instance

type Instance struct {
	Index int

	// Denormalized values to avoid passing dep/job/instance tuple
	JobName        string
	DeploymentName string

	// Watch time will vary depending if an instance is a canary
	WatchTime bpdepman.WatchTime

	Properties Properties

	NetworkAssociations []NetworkAssociation

	// Represents current state of an associated VM
	CurrentState boshaction.GetStateV1ApplySpec
}

func (Instance) DNDRecordName

func (i Instance) DNDRecordName(na NetworkAssociation) string

func (Instance) NetworkConfigurationForNetworkAssociation

func (i Instance) NetworkConfigurationForNetworkAssociation(na NetworkAssociation) NetworkConfiguration

type Job

type Job struct {
	Name string

	Templates []Template

	Instances []Instance
}

type ManifestReader

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

func NewManifestReader

func NewManifestReader(
	path string,
	fs boshsys.FileSystem,
	logger boshlog.Logger,
) ManifestReader

func (ManifestReader) Close

func (r ManifestReader) Close() error

func (ManifestReader) Read

func (r ManifestReader) Read() (Deployment, error)

type Network

type Network struct {
	Name string
	Type string
}

type NetworkAssociation

type NetworkAssociation struct {
	Network *Network

	StaticIP gonet.IP

	// StaticIP might equal to nil, though that does not indicate
	// that this instance does not need a static IP
	MustHaveStaticIP bool
}

type NetworkConfiguration

type NetworkConfiguration struct {
	IP      string
	Netmask string
	Gateway string
}

type Properties

type Properties map[string]interface{}

type ReaderFactory

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

func NewReaderFactory

func NewReaderFactory(
	fs boshsys.FileSystem,
	logger boshlog.Logger,
) ReaderFactory

func (ReaderFactory) NewManifestReader

func (rf ReaderFactory) NewManifestReader(path string) ManifestReader

type Release

type Release struct {
	Name    string
	Version string

	// Not offical BOSH manifest construct
	URL string
}

type SemanticValidator

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

SemanticValidator validates deployment to determine if it represents a meaningful state. e.g. - is each job template associated with a release?

  • are there enough static ips for each job instance?

func NewSemanticValidator

func NewSemanticValidator(deployment Deployment) SemanticValidator

func (SemanticValidator) Validate

func (v SemanticValidator) Validate() error

type Template

type Template struct {
	Name string

	Release *Release
}

Directories

Path Synopsis
Package manifest represents structure of a user entered YAML deployment manifest.
Package manifest represents structure of a user entered YAML deployment manifest.

Jump to

Keyboard shortcuts

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