Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Job ¶
type Job struct { Name string Description string Templates []*JobTemplate Packages Packages Path string Fingerprint string SHA1 string Properties []*JobProperty Version string Release *Release // contains filtered or unexported fields }
Job represents a BOSH job
func (*Job) Extract ¶
Extract will extract the contents of the job archive to destination It creates a directory with the name of the job Returns the full path of the extracted archive
func (*Job) ValidateSHA1 ¶
ValidateSHA1 validates that the SHA1 of the actual job archive is the same as the one from the release manifest
type JobProperty ¶
JobProperty is a generic key-value property referenced by a job
type JobTemplate ¶
JobTemplate represents a BOSH job template
type Jobs ¶
type Jobs []*Job
Jobs is an array of Job*
type Package ¶
type Package struct { Name string Version string Fingerprint string SHA1 string Release *Release Path string Dependencies Packages // contains filtered or unexported fields }
Package represents a BOSH package
func (*Package) Extract ¶
Extract will extract the contents of the package archive to destination It creates a directory with the name of the package Returns the full path of the extracted archive
func (*Package) GetPackageCompiledDir ¶
GetPackageCompiledDir returns the path to the build result directory of the package, underneath the main cache directory
func (*Package) GetPackageCompiledTempDir ¶
GetPackageCompiledTempDir returns the path to the build temp directory for the package, underneath the main cache directory
func (*Package) GetTargetPackageSourcesDir ¶
GetTargetPackageSourcesDir returns the path to the sources of the package, underneath the main cache directory
func (*Package) ValidateSHA1 ¶
ValidateSHA1 validates that the SHA1 of the actual package archive is the same as the one from the release manifest
type Packages ¶
type Packages []*Package
Packages is an array of *Package
type Release ¶
type Release struct { Jobs Jobs Packages Packages License ReleaseLicense Name string UncommittedChanges bool CommitHash string Version string Path string DevBOSHCacheDir string // contains filtered or unexported fields }
Release represents a BOSH release
func NewDevRelease ¶
NewDevRelease will create an instance of a BOSH development release
func (*Release) GetUniqueConfigs ¶
func (r *Release) GetUniqueConfigs() map[string]*ReleaseConfig
GetUniqueConfigs returns all unique configs available in a release
type ReleaseConfig ¶
ReleaseConfig is a global deployment configuration key
type ReleaseLicense ¶
type ReleaseLicense struct { // Files is a mapping of license file names to contents Files map[string][]byte // Release this license belongs to Release *Release }
ReleaseLicense represents the license of a BOSH release
type Role ¶
type Role struct { Name string `yaml:"name"` Jobs Jobs `yaml:"_,omitempty"` EnvironScripts []string `yaml:"environment_scripts"` Scripts []string `yaml:"scripts"` PostConfigScripts []string `yaml:"post_config_scripts"` Type string `yaml:"type,omitempty"` JobNameList []*roleJob `yaml:"jobs"` Configuration *configuration `yaml:"configuration"` // contains filtered or unexported fields }
Role represents a collection of jobs that are colocated on a container
func (*Role) GetRoleDevVersion ¶
GetRoleDevVersion gets the aggregate signature of all jobs and packages
func (*Role) GetScriptPaths ¶
GetScriptPaths returns the paths to the startup / post configgin scripts for a role
type RoleManifest ¶
type RoleManifest struct { Roles Roles `yaml:"roles"` Configuration *configuration `yaml:"configuration"` // contains filtered or unexported fields }
RoleManifest represents a collection of roles
func LoadRoleManifest ¶
func LoadRoleManifest(manifestFilePath string, releases []*Release) (*RoleManifest, error)
LoadRoleManifest loads a yaml manifest that details how jobs get grouped into roles
func (*RoleManifest) GetRoleManifestDevPackageVersion ¶
func (m *RoleManifest) GetRoleManifestDevPackageVersion(extra string) string
GetRoleManifestDevPackageVersion gets the aggregate signature of all the packages