Documentation ¶
Index ¶
- func BoolPointer(val bool) *bool
- func ValidateMaxInFlight(m MaxInFlightValue) error
- type Addon
- type Alias
- type BoshFeatures
- type BoshManifest
- type BoshVMs
- type ConsumesLink
- type CustomProviderDefinition
- type InstanceGroup
- type Job
- func (j Job) AddConsumesLink(name, fromJob string) Job
- func (j Job) AddCrossDeploymentConsumesLink(name, fromJob string, deployment string) Job
- func (j Job) AddCustomProviderDefinition(name, providerType string, properties []string) Job
- func (j Job) AddNullifiedConsumesLink(name string) Job
- func (j Job) AddProvidesLinkWithAliases(name string, aliases []Alias) Job
- func (j Job) AddSharedProvidesLink(name string) Job
- type MaxInFlightValue
- type Migration
- type Network
- type PlacementRule
- type PlacementRuleStemcell
- type ProvidesLink
- type Release
- type Stemcell
- type Update
- type UpdateStrategy
- type Variable
- type VariableConsumes
- type VariableConsumesLink
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func BoolPointer ¶ added in v0.20.0
func ValidateMaxInFlight ¶ added in v0.20.0
func ValidateMaxInFlight(m MaxInFlightValue) error
Types ¶
type Addon ¶ added in v0.20.0
type Addon struct { Name string `yaml:"name"` Jobs []Job `yaml:"jobs"` Include PlacementRule `yaml:"include,omitempty"` Exclude PlacementRule `yaml:"exclude,omitempty"` }
type BoshFeatures ¶ added in v0.20.0
type BoshManifest ¶
type BoshManifest struct { Addons []Addon `yaml:"addons,omitempty" json:"addons"` Name string `yaml:"name" json:"name"` Releases []Release `yaml:"releases" json:"releases"` Stemcells []Stemcell `yaml:"stemcells" json:"stemcells"` InstanceGroups []InstanceGroup `yaml:"instance_groups" json:"instance_groups"` Update *Update `yaml:"update" json:"update"` // DEPRECATED: BOSH deprecated deployment level "properties". Use Job properties instead. Properties map[string]interface{} `yaml:"properties,omitempty" json:"properties,omitempty"` Variables []Variable `yaml:"variables,omitempty" json:"variables,omitempty"` Tags map[string]interface{} `yaml:"tags,omitempty" json:"tags,omitempty"` Features BoshFeatures `yaml:"features,omitempty" json:"features,omitempty"` }
type ConsumesLink ¶
type CustomProviderDefinition ¶ added in v0.23.0
type InstanceGroup ¶
type InstanceGroup struct { Name string `yaml:"name,omitempty"` Lifecycle string `yaml:"lifecycle,omitempty"` Instances int `yaml:"instances"` Jobs []Job `yaml:"jobs,omitempty"` VMType string `yaml:"vm_type"` VMExtensions []string `yaml:"vm_extensions,omitempty"` Stemcell string `yaml:"stemcell"` PersistentDiskType string `yaml:"persistent_disk_type,omitempty"` AZs []string `yaml:"azs,omitempty"` Networks []Network `yaml:"networks"` // DEPRECATED: BOSH deprecated instance_group level "properties". Use Job properties instead. Properties map[string]interface{} `yaml:"properties,omitempty"` MigratedFrom []Migration `yaml:"migrated_from,omitempty"` Env map[string]interface{} `yaml:"env,omitempty"` Update *Update `yaml:"update,omitempty"` }
type Job ¶
type Job struct { Name string `yaml:"name"` Release string `yaml:"release"` Provides map[string]ProvidesLink `yaml:"provides,omitempty"` Consumes map[string]interface{} `yaml:"consumes,omitempty"` CustomProviderDefinitions []CustomProviderDefinition `yaml:"custom_provider_definitions,omitempty"` Properties map[string]interface{} `yaml:"properties,omitempty"` }
func (Job) AddConsumesLink ¶
func (Job) AddCrossDeploymentConsumesLink ¶ added in v0.16.1
func (Job) AddCustomProviderDefinition ¶ added in v0.23.0
func (Job) AddNullifiedConsumesLink ¶
func (Job) AddProvidesLinkWithAliases ¶ added in v0.39.0
func (Job) AddSharedProvidesLink ¶ added in v0.22.0
type MaxInFlightValue ¶ added in v0.20.0
type MaxInFlightValue interface{}
MaxInFlightValue holds a value of one of these types:
int, for YAML numbers string, for YAML string literals representing a percentage
type PlacementRule ¶ added in v0.28.0
type PlacementRule struct { Stemcell []PlacementRuleStemcell `yaml:"stemcell,omitempty"` Deployments []string `yaml:"deployments,omitempty"` Jobs []Job `yaml:"jobs,omitempty"` InstanceGroups []string `yaml:"instance_groups,omitempty"` Networks []string `yaml:"networks,omitempty"` Teams []string `yaml:"teams,omitempty"` }
type PlacementRuleStemcell ¶ added in v0.28.0
type PlacementRuleStemcell struct {
OS string `yaml:"os"`
}
type ProvidesLink ¶
type Update ¶
type Update struct { Canaries int `yaml:"canaries"` CanaryWatchTime string `yaml:"canary_watch_time"` UpdateWatchTime string `yaml:"update_watch_time"` MaxInFlight MaxInFlightValue `yaml:"max_in_flight"` Serial *bool `yaml:"serial,omitempty"` VmStrategy string `yaml:"vm_strategy,omitempty"` // See bosh.SerialUpdate and bosh.ParallelUpdate InitialDeployAZUpdateStrategy UpdateStrategy `yaml:"initial_deploy_az_update_strategy,omitempty"` }
func (*Update) MarshalYAML ¶ added in v0.20.0
func (*Update) UnmarshalYAML ¶ added in v0.20.0
type UpdateStrategy ¶ added in v0.34.1
type UpdateStrategy string
const ( SerialUpdate UpdateStrategy = "serial" ParallelUpdate UpdateStrategy = "parallel" )
type Variable ¶ added in v0.16.1
type Variable struct { Name string `yaml:"name"` Type string `yaml:"type"` UpdateMode string `yaml:"update_mode,omitempty"` Options map[string]interface{} `yaml:"options,omitempty"` // Variables of type `certificate` can optionally be configured with a // `consumes` block, so generated certificates can be created with automatic // BOSH DNS records in their Common Name and/or Subject Alternative Names. // // Should be used in conjunction to the `custom_provider_definitions` block in // a Job. // // Requires BOSH v267+ Consumes *VariableConsumes `yaml:"consumes,omitempty"` }
Variable represents a variable in the `variables` block of a BOSH manifest
type VariableConsumes ¶ added in v0.23.0
type VariableConsumes struct { AlternativeName VariableConsumesLink `yaml:"alternative_name,omitempty"` CommonName VariableConsumesLink `yaml:"common_name,omitempty"` }
type VariableConsumesLink ¶ added in v0.23.0
Click to show internal directories.
Click to hide internal directories.