Documentation
¶
Overview ¶
Package manifest represents a valid BOSH manifest and provides funcs to load it, marshal it and access its fields.
Index ¶
- Constants
- Variables
- func GetClusterDomain() string
- func InterpolateVariables(log *zap.SugaredLogger, boshManifestBytes []byte, variablesDir string, ...) error
- func RenderJobTemplates(boshManifestPath string, jobsDir string, jobsOutputDir string, ...) error
- func SetBoshDNSDockerImage(image string)
- func SetClusterDomain(domain string)
- type AddOn
- type AddOnJob
- type AddOnPlacementJob
- type AddOnPlacementRules
- type AddOnStemcell
- type Agent
- type AgentEnv
- type AgentEnvBoshConfig
- type AgentSettings
- type Alias
- type AuthType
- type BPMInfo
- type BPMInstanceGroup
- type DomainNameService
- type Feature
- type HealthCheck
- type IPv6
- type InstanceGroup
- type InstanceGroupProperties
- type InstanceGroupQuarks
- type InstanceGroupResolver
- func (igr *InstanceGroupResolver) BPMInfo() (BPMInfo, error)
- func (igr *InstanceGroupResolver) CollectQuarksLinks(linksPath string) error
- func (igr *InstanceGroupResolver) Manifest() (Manifest, error)
- func (igr *InstanceGroupResolver) Resolve(initialRollout bool) error
- func (igr *InstanceGroupResolver) SaveLinks(path string) error
- type InstanceGroupType
- type InstanceGroups
- type Job
- type JobDir
- type JobInstance
- type JobLink
- type JobLinkProperties
- type JobProperties
- type JobSpec
- type JobSpecLink
- type JobSpecProvider
- type Manifest
- func (m *Manifest) ApplyAddons(ctx context.Context) error
- func (m *Manifest) ApplyUpdateBlock()
- func (m *Manifest) GetJobOS(instanceGroupName, jobName string) (string, error)
- func (m *Manifest) GetReleaseImage(instanceGroupName, jobName string) (string, error)
- func (m *Manifest) ImplicitVariables() ([]string, error)
- func (m *Manifest) Marshal() ([]byte, error)
- func (m *Manifest) SHA1() (string, error)
- type MigratedFrom
- type Network
- type Port
- type PostStart
- type PostStartCondition
- type PreRenderScripts
- type Quarks
- type QuarksLink
- type Release
- type ReleaseStemcell
- type RunConfig
- type Stemcell
- type Target
- type Update
- type VMResource
- type Variable
- type VariableOptions
Constants ¶
const ( // DataDir the mount path for the data directory. DataDir = "/var/vcap/data" // SysDir the mount path for the sys directory. SysDir = "/var/vcap/sys" // JobSpecFilename is the name of the job spec manifest in an unpacked BOSH release JobSpecFilename = "job.MF" )
const ( ClientAuth AuthType = "client_auth" ServerAuth AuthType = "server_auth" IGTypeService InstanceGroupType = "service" IGTypeErrand InstanceGroupType = "errand" IGTypeAutoErrand InstanceGroupType = "auto-errand" IGTypeDefault InstanceGroupType = "" )
AuthType values from BOSH deployment manifest
const BoshDNSAddOnName = "bosh-dns-aliases"
BoshDNSAddOnName name of bosh dns addon.
const (
// DesiredManifestKeyName is the name of the key in desired manifest secret
DesiredManifestKeyName = "manifest.yaml"
)
Variables ¶
var ( // LabelDeploymentName is the name of a label for the deployment name. LabelDeploymentName = fmt.Sprintf("%s/deployment-name", apis.GroupName) // LabelInstanceGroupName is the name of a label for an instance group name. LabelInstanceGroupName = fmt.Sprintf("%s/instance-group-name", apis.GroupName) // LabelDeploymentVersion is the name of a label for the deployment's version. LabelDeploymentVersion = fmt.Sprintf("%s/deployment-version", apis.GroupName) // LabelReferencedJobName is the name key for dependent job LabelReferencedJobName = fmt.Sprintf("%s/referenced-job-name", apis.GroupName) )
Functions ¶
func GetClusterDomain ¶ added in v1.0.0
func GetClusterDomain() string
GetClusterDomain returns the package scoped clusterDomain variable.
func InterpolateVariables ¶ added in v0.2.0
func InterpolateVariables(log *zap.SugaredLogger, boshManifestBytes []byte, variablesDir string, outputFilePath string) error
InterpolateVariables reads explicit secrets from a folder and writes an interpolated manifest to the output.json file in /mnt/quarks volume mount.
func RenderJobTemplates ¶ added in v0.2.0
func RenderJobTemplates( boshManifestPath string, jobsDir string, jobsOutputDir string, instanceGroupName string, specIndex int, podIP net.IP, replicas int, initialRollout bool, ) error
RenderJobTemplates will render templates for all jobs of the instance group https://bosh.io/docs/create-release/#job-specs boshManifest is a resolved manifest for a single instance group
Types ¶
type AddOn ¶
type AddOn struct {
Name string `json:"name"`
Jobs []AddOnJob `json:"jobs"`
Include *AddOnPlacementRules `json:"include,omitempty"`
Exclude *AddOnPlacementRules `json:"exclude,omitempty"`
}
AddOn from BOSH deployment manifest
type AddOnJob ¶
type AddOnJob struct {
Name string `json:"name"`
Release string `json:"release"`
Properties JobProperties `json:"properties,omitempty"`
}
AddOnJob from BOSH deployment manifest
type AddOnPlacementJob ¶
AddOnPlacementJob from BOSH deployment manifest
type AddOnPlacementRules ¶
type AddOnPlacementRules struct {
Stemcell []*AddOnStemcell `json:"stemcell,omitempty"`
Deployments []string `json:"deployments,omitempty"`
Jobs []*AddOnPlacementJob `json:"release,omitempty"`
InstanceGroup []string `json:"instance_groups,omitempty"`
Networks []string `json:"networks,omitempty"`
Teams []string `json:"teams,omitempty"`
Lifecycle InstanceGroupType `json:"lifecycle,omitempty"`
}
AddOnPlacementRules from BOSH deployment manifest
type AddOnStemcell ¶
type AddOnStemcell struct {
OS string `json:"os"`
}
AddOnStemcell from BOSH deployment manifest
type Agent ¶
type Agent struct {
Settings AgentSettings `json:"settings,omitempty"`
Tmpfs *bool `json:"tmpfs,omitempty"`
}
Agent from BOSH deployment manifest.
type AgentEnv ¶
type AgentEnv struct {
PersistentDiskFS string `json:"persistent_disk_fs,omitempty"`
PersistentDiskMountOptions []string `json:"persistent_disk_mount_options,omitempty"`
AgentEnvBoshConfig AgentEnvBoshConfig `json:"bosh,omitempty"`
}
AgentEnv from BOSH deployment manifest.
type AgentEnvBoshConfig ¶
type AgentEnvBoshConfig struct {
Password string `json:"password,omitempty"`
KeepRootPassword string `json:"keep_root_password,omitempty"`
RemoveDevTools *bool `json:"remove_dev_tools,omitempty"`
RemoveStaticLibraries *bool `json:"remove_static_libraries,omitempty"`
SwapSize *int `json:"swap_size,omitempty"`
IPv6 IPv6 `json:"ipv6,omitempty"`
JobDir *JobDir `json:"job_dir,omitempty"`
Agent Agent `json:"agent,omitempty"`
}
AgentEnvBoshConfig from BOSH deployment manifest.
type AgentSettings ¶ added in v0.3.0
type AgentSettings struct {
Annotations map[string]string `json:"annotations,omitempty"`
Labels map[string]string `json:"labels,omitempty"`
Affinity *corev1.Affinity `json:"affinity,omitempty"`
DisableLogSidecar bool `json:"disable_log_sidecar,omitempty" yaml:"disable_log_sidecar,omitempty"`
ServiceAccountName string `json:"serviceAccountName,omitempty" yaml:"serviceAccountName,omitempty"`
AutomountServiceAccountToken *bool `json:"automountServiceAccountToken,omitempty" yaml:"automountServiceAccountToken,omitempty"`
ImagePullSecrets []corev1.LocalObjectReference `json:"imagePullSecrets,omitempty"`
}
AgentSettings from BOSH deployment manifest. These annotations and labels are added to kube resources. Affinity is added into the pod's definition.
func (*AgentSettings) Set ¶ added in v0.3.0
func (as *AgentSettings) Set(manifestName, igName, version string)
Set overrides labels and annotations with operator-owned metadata.
type Alias ¶ added in v1.0.0
Alias of domain alias.
type BPMInfo ¶ added in v1.0.0
type BPMInfo struct {
InstanceGroup BPMInstanceGroup `json:"instance_group,omitempty"`
Configs bpm.Configs `json:"configs,omitempty"`
Variables []Variable `json:"variables,omitempty"`
}
BPMInfo contains custom information about instance group which matters for quarksStatefulSet pods such as AZ's, instance group count and BPM Configs
type BPMInstanceGroup ¶ added in v1.0.0
type BPMInstanceGroup struct {
Name string `json:"name"`
Instances int `json:"instances"`
AZs []string `json:"azs"`
Env AgentEnv `json:"env,omitempty"`
}
BPMInstanceGroup is a custom instance group spec that should be included in the BPM secret created by the bpm quarksJob.
type DomainNameService ¶ added in v1.0.0
type DomainNameService interface {
// HeadlessServiceName constructs the headless service name for the instance group.
HeadlessServiceName(instanceGroupName string) string
// DNSSetting get the DNS settings for POD.
DNSSetting(namespace string) (corev1.DNSPolicy, *corev1.PodDNSConfig, error)
// Reconcile DNS stuff.
Reconcile(ctx context.Context, namespace string, c client.Client, setOwner func(object metav1.Object) error) error
}
DomainNameService abstraction.
func NewBoshDomainNameService ¶ added in v1.0.0
func NewBoshDomainNameService(addOn *AddOn, manifestName string, instanceGroups InstanceGroups) (DomainNameService, error)
NewBoshDomainNameService create a new DomainNameService.
func NewSimpleDomainNameService ¶ added in v1.0.0
func NewSimpleDomainNameService(manifestName string) DomainNameService
NewSimpleDomainNameService creates a new simpleDomainNameService.
type Feature ¶
type Feature struct {
ConvergeVariables bool `json:"converge_variables"`
RandomizeAzPlacement *bool `json:"randomize_az_placement,omitempty"`
UseDNSAddresses *bool `json:"use_dns_addresses,omitempty"`
UseTmpfsJobConfig *bool `json:"use_tmpfs_job_config,omitempty"`
}
Feature from BOSH deployment manifest
type HealthCheck ¶ added in v0.2.2
type HealthCheck struct {
ReadinessProbe *corev1.Probe `json:"readiness" yaml:"readiness"`
LivenessProbe *corev1.Probe `json:"liveness" yaml:"liveness"`
}
HealthCheck defines liveness and readiness probes for a container.
type InstanceGroup ¶
type InstanceGroup struct {
Name string `json:"name"`
Instances int `json:"instances"`
AZs []string `json:"azs"`
Jobs []Job `json:"jobs"`
VMType string `json:"vm_type,omitempty"`
VMExtensions []string `json:"vm_extensions,omitempty"`
VMResources *VMResource `json:"vm_resources"`
Stemcell string `json:"stemcell"`
PersistentDisk *int `json:"persistent_disk,omitempty"`
PersistentDiskType string `json:"persistent_disk_type,omitempty"`
Networks []*Network `json:"networks,omitempty"`
Update *Update `json:"update,omitempty"`
MigratedFrom []*MigratedFrom `json:"migrated_from,omitempty"`
LifeCycle InstanceGroupType `json:"lifecycle,omitempty"`
Properties InstanceGroupProperties `json:"properties,omitempty"`
Env AgentEnv `json:"env,omitempty"`
}
InstanceGroup from BOSH deployment manifest.
func (*InstanceGroup) IndexedServiceName ¶ added in v0.4.0
func (ig *InstanceGroup) IndexedServiceName(deploymentName string, index int) string
IndexedServiceName constructs an indexed service name. It's used to construct the service names other than the headless service.
func (*InstanceGroup) NameSanitized ¶ added in v0.4.0
func (ig *InstanceGroup) NameSanitized() string
NameSanitized returns the sanitized instance group name.
func (*InstanceGroup) QuarksStatefulSetName ¶ added in v1.0.0
func (ig *InstanceGroup) QuarksStatefulSetName(deploymentName string) string
QuarksStatefulSetName constructs the quarksStatefulSet name.
func (*InstanceGroup) ServicePorts ¶ added in v1.0.0
func (ig *InstanceGroup) ServicePorts() []corev1.ServicePort
ServicePorts returns the service ports used by this instance group
type InstanceGroupProperties ¶ added in v1.0.0
type InstanceGroupProperties struct {
Properties map[string]interface{}
Quarks InstanceGroupQuarks
}
InstanceGroupProperties represents the properties map of a InstanceGroup
func (*InstanceGroupProperties) MarshalJSON ¶ added in v1.0.0
func (p *InstanceGroupProperties) MarshalJSON() ([]byte, error)
MarshalJSON is implemented to support inlining Properties
func (*InstanceGroupProperties) UnmarshalJSON ¶ added in v1.0.0
func (p *InstanceGroupProperties) UnmarshalJSON(b []byte) error
UnmarshalJSON is implemented to support inlining properties
type InstanceGroupQuarks ¶ added in v1.0.0
type InstanceGroupQuarks struct {
RequiredService *string `json:"required_service,omitempty" mapstructure:"required_service"`
}
InstanceGroupQuarks represents the quark property of a InstanceGroup
type InstanceGroupResolver ¶ added in v0.4.0
type InstanceGroupResolver struct {
// contains filtered or unexported fields
}
InstanceGroupResolver gathers data for jobs in the manifest, it handles links and returns a deployment manifest that only has information pertinent to an instance group.
func NewInstanceGroupResolver ¶ added in v0.4.0
func NewInstanceGroupResolver(fs afero.Fs, basedir string, manifest Manifest, instanceGroupName string) (*InstanceGroupResolver, error)
NewInstanceGroupResolver returns a data gatherer with logging for a given input manifest and instance group
func (*InstanceGroupResolver) BPMInfo ¶ added in v1.0.0
func (igr *InstanceGroupResolver) BPMInfo() (BPMInfo, error)
BPMInfo returns an instance of BPMInfo which consists info about instances, azs, env, variables and a map of all BOSH jobs in the instance group. The output will be persisted by QuarksJob as 'bpm.yaml' in the `<deployment-name>.bpm.<instance-group>-v<version>` secret.
func (*InstanceGroupResolver) CollectQuarksLinks ¶ added in v1.0.0
func (igr *InstanceGroupResolver) CollectQuarksLinks(linksPath string) error
CollectQuarksLinks collects all links from a directory specified by path
func (*InstanceGroupResolver) Manifest ¶ added in v0.4.0
func (igr *InstanceGroupResolver) Manifest() (Manifest, error)
Manifest returns a manifest for a specific instance group only. That manifest includes the gathered data from BPM and links. The output will be persisted by QuarksJob as 'properties.yaml' in the `<deployment-name>.ig-resolved.<instance-group>-v<version>` secret.
func (*InstanceGroupResolver) Resolve ¶ added in v1.0.3
func (igr *InstanceGroupResolver) Resolve(initialRollout bool) error
Resolve collects bpm and link information and enriches the manifest accordingly
Data gathered: * job spec information * job properties * bosh links * bpm yaml file data
func (*InstanceGroupResolver) SaveLinks ¶ added in v1.0.0
func (igr *InstanceGroupResolver) SaveLinks(path string) error
SaveLinks writes provides.json with all links for this instance group
type InstanceGroupType ¶ added in v0.4.0
type InstanceGroupType string
InstanceGroupType represents instance groups types
type InstanceGroups ¶ added in v1.0.0
type InstanceGroups []*InstanceGroup
InstanceGroups represents a slice of pointers of InstanceGroup.
func (InstanceGroups) InstanceGroupByName ¶ added in v1.0.0
func (instanceGroups InstanceGroups) InstanceGroupByName(name string) (*InstanceGroup, bool)
InstanceGroupByName returns the instance group identified by the given name. The second return parameter indicates if the instance group was found.
type Job ¶
type Job struct {
Name string `json:"name"`
Release string `json:"release"`
Consumes map[string]interface{} `json:"consumes,omitempty"`
Provides map[string]interface{} `json:"provides,omitempty"`
Properties JobProperties `json:"properties,omitempty"`
}
Job from BOSH deployment manifest
func (*Job) DataDirs ¶ added in v0.4.0
DataDirs returns all data dirs a BOSH job expects
func (Job) Property ¶ added in v0.2.0
Property search for property value in the job properties
type JobDir ¶
type JobDir struct {
Tmpfs *bool `json:"tmpfs,omitempty"`
TmpfsSize string `json:"tmpfs_size,omitempty"`
}
JobDir from BOSH deployment manifest.
type JobInstance ¶
type JobInstance struct {
Address string `json:"address"`
AZ string `json:"az"`
Index int `json:"index"`
Instance int `json:"instance"`
Name string `json:"name"`
Bootstrap bool `json:"bootstrap"`
ID string `json:"id"`
Network map[string]interface{} `json:"networks"`
}
JobInstance for data gathering.
type JobLink ¶
type JobLink struct {
Address string `json:"address"`
Instances []JobInstance `json:"instances"`
Properties JobLinkProperties `json:"properties"`
}
JobLink describes links inside a job properties quarks.
type JobLinkProperties ¶ added in v1.0.0
type JobLinkProperties map[string]interface{}
JobLinkProperties are the properties from the provides section in a job spec manifest
type JobProperties ¶
type JobProperties struct {
Quarks Quarks `json:"quarks"`
Properties map[string]interface{} `json:"-"`
}
JobProperties represents the properties map of a Job
func (*JobProperties) FromMap ¶ added in v0.4.0
func (p *JobProperties) FromMap(properties map[string]interface{}) error
FromMap populates a JobProperties based on a map
func (*JobProperties) MarshalJSON ¶ added in v0.4.0
func (p *JobProperties) MarshalJSON() ([]byte, error)
MarshalJSON is implemented to support inlining Properties
func (*JobProperties) ToMap ¶
func (p *JobProperties) ToMap() map[string]interface{}
ToMap returns a complete map with all properties, including the quarks key
func (*JobProperties) UnmarshalJSON ¶ added in v0.4.0
func (p *JobProperties) UnmarshalJSON(b []byte) error
UnmarshalJSON is implemented to support inlining properties
type JobSpec ¶
type JobSpec struct {
Name string
Description string
Packages []string
Templates map[string]string
Properties map[string]struct {
Description string
Default interface{}
Example interface{}
}
Consumes []JobSpecProvider
Provides []JobSpecLink
}
JobSpec describes the contents of "job.MF" files
func (JobSpec) RetrieveNestedProperty ¶ added in v0.2.0
RetrieveNestedProperty will generate a nested struct based on a string of the type foo.bar in the provided map It overrides existing property paths that are not of the correct type.
type JobSpecLink ¶ added in v0.3.0
JobSpecLink represents a link in the job spec Provides field.
type JobSpecProvider ¶ added in v0.3.0
JobSpecProvider represents a provider in the job spec Consumes field.
type Manifest ¶
type Manifest struct {
Name string `json:"name"`
DirectorUUID string `json:"director_uuid"`
InstanceGroups InstanceGroups `json:"instance_groups,omitempty"`
Features *Feature `json:"features,omitempty"`
Tags map[string]string `json:"tags,omitempty"`
Releases []*Release `json:"releases,omitempty"`
Stemcells []*Stemcell `json:"stemcells,omitempty"`
AddOns []*AddOn `json:"addons,omitempty"`
Properties map[string]interface{} `json:"properties,omitempty"`
Variables []Variable `json:"variables,omitempty"`
Update *Update `json:"update,omitempty"`
AddOnsApplied bool `json:"addons_applied,omitempty"`
DNS DomainNameService `json:"-"`
}
Manifest is a BOSH deployment manifest
func LoadYAML ¶ added in v0.2.2
LoadYAML returns a new BOSH deployment manifest from a yaml representation
func (*Manifest) ApplyAddons ¶ added in v0.4.0
ApplyAddons goes through all defined addons and adds jobs to matched instance groups
func (*Manifest) ApplyUpdateBlock ¶ added in v1.0.0
func (m *Manifest) ApplyUpdateBlock()
ApplyUpdateBlock interprets and propagates information of the 'update'-blocks
func (*Manifest) GetJobOS ¶ added in v0.4.0
GetJobOS returns the stemcell layer OS used for a Job This is used for matching addon placement rules
func (*Manifest) GetReleaseImage ¶
GetReleaseImage returns the release image location for a given instance group/job
func (*Manifest) ImplicitVariables ¶ added in v0.4.0
ImplicitVariables returns a list of all implicit variables in a manifest
func (*Manifest) Marshal ¶ added in v0.3.1
Marshal serializes a BOSH manifest into yaml
type MigratedFrom ¶
MigratedFrom from BOSH deployment manifest.
type Network ¶
type Network struct {
Name string `json:"name"`
StaticIps []string `json:"static_ips,omitempty"`
Default []string `json:"default,omitempty"`
}
Network from BOSH deployment manifest.
type Port ¶ added in v0.2.0
type Port struct {
Name string `json:"name"`
Protocol string `json:"protocol"`
Internal int `json:"internal"`
}
Port represents the port to be opened up for this job.
type PostStart ¶ added in v0.4.0
type PostStart struct {
Condition *PostStartCondition `json:"condition,omitempty"`
}
PostStart allows post-start specifics to be passed through the manifest.
type PostStartCondition ¶ added in v0.4.0
type PostStartCondition struct {
Exec *corev1.ExecAction `json:"exec,omitempty"`
}
PostStartCondition represents the condition that should succeed in order to execute the post-start script. It's often set to be the same as the readiness probe of a job.
type PreRenderScripts ¶ added in v0.4.0
type PreRenderScripts struct {
BPM []string `json:"bpm" yaml:"bpm"`
IgResolver []string `json:"ig_resolver" yaml:"ig_resolver"`
Jobs []string `json:"jobs" yaml:"jobs"`
}
PreRenderScripts describes the different types of scripts that can be run inside a job.
type Quarks ¶ added in v0.4.0
type Quarks struct {
Consumes map[string]JobLink `json:"consumes"`
Instances []JobInstance `json:"instances"`
Release string `json:"release"`
BPM *bpm.Config `json:"bpm,omitempty" yaml:"bpm,omitempty"`
Ports []Port `json:"ports"`
Run RunConfig `json:"run"`
PreRenderScripts PreRenderScripts `json:"pre_render_scripts" yaml:"pre_render_scripts"`
PostStart PostStart `json:"post_start"`
Debug bool `json:"debug" yaml:"debug"`
IsAddon bool `json:"is_addon" yaml:"is_addon"`
Envs []corev1.EnvVar `json:"envs" yaml:"envs"`
}
Quarks represents the special 'quarks' property key. It contains all kubernetes structures we need to add to the BOSH manifest.
type QuarksLink ¶ added in v1.0.0
type QuarksLink struct {
Type string `json:"type,omitempty"`
Address string `json:"address,omitempty"`
Instances []JobInstance `json:"instances,omitempty"`
}
QuarksLink represents the links to share/discover information between BOSH and Kube Native components
type Release ¶
type Release struct {
Name string `json:"name"`
Version string `json:"version"`
URL string `json:"url,omitempty"`
SHA1 string `json:"sha1,omitempty"`
Stemcell *ReleaseStemcell `json:"stemcell,omitempty"`
}
Release from BOSH deployment manifest
type ReleaseStemcell ¶
ReleaseStemcell from BOSH deployment manifest
type RunConfig ¶ added in v0.2.2
type RunConfig struct {
HealthCheck map[string]HealthCheck `json:"healthcheck" yaml:"healthcheck"`
SecurityContext *corev1.SecurityContext `json:"security_context" yaml:"security_context"`
}
RunConfig describes the runtime configuration for this job.
type Stemcell ¶
type Stemcell struct {
Alias string `json:"alias"`
OS string `json:"os,omitempty"`
Version string `json:"version"`
Name string `json:"name,omitempty"`
}
Stemcell from BOSH deployment manifest
type Target ¶ added in v1.0.0
type Target struct {
Query string `json:"query"`
InstanceGroup string `json:"instance_group" mapstructure:"instance_group"`
Deployment string `json:"deployment"`
Network string `json:"network"`
Domain string `json:"domain"`
}
Target of domain alias.
type Update ¶
type Update struct {
Canaries int `json:"canaries"`
MaxInFlight string `json:"max_in_flight"`
CanaryWatchTime string `json:"canary_watch_time"`
UpdateWatchTime string `json:"update_watch_time"`
Serial *bool `json:"serial,omitempty"` // must be pointer, because otherwise default is false
VMStrategy *string `json:"vm_strategy,omitempty"`
}
Update from BOSH deployment manifest.
type VMResource ¶
type VMResource struct {
CPU int `json:"cpu"`
RAM int `json:"ram"`
EphemeralDiskSize int `json:"ephemeral_disk_size"`
}
VMResource from BOSH deployment manifest.
type Variable ¶
type Variable struct {
Name string `json:"name"`
Type string `json:"type"`
Options *VariableOptions `json:"options,omitempty"`
}
Variable from BOSH deployment manifest
type VariableOptions ¶
type VariableOptions struct {
CommonName string `json:"common_name"`
AlternativeNames []string `json:"alternative_names,omitempty"`
IsCA bool `json:"is_ca"`
CA string `json:"ca,omitempty"`
ExtendedKeyUsage []AuthType `json:"extended_key_usage,omitempty"`
SignerType string `json:"signer_type,omitempty"`
ServiceRef []qsv1a1.ServiceReference `json:"serviceRef,omitempty"`
ActivateEKSWorkaroundForSAN bool `json:"activateEKSWorkaroundForSAN,omitempty"`
}
VariableOptions from BOSH deployment manifest
Source Files
¶
- addon_placement.go
- bpm_secret_info.go
- cmd_instance_group_resolver.go
- cmd_interpolate.go
- cmd_render_job_tmpls.go
- containerization.go
- dns.go
- instance_group.go
- job.go
- job_provider_links.go
- manifest.go