Documentation
¶
Index ¶
- Constants
- type AWSProperties
- type AgentProperties
- type BlobstoreJobProperties
- type BlobstoreProperties
- type CloudProvider
- type CloudProviderManifestBuilder
- type CloudProviderProperties
- type Credentials
- type DirectorJobProperties
- type DiskPool
- type DiskPoolsCloudProperties
- type DiskPoolsManifestBuilder
- type EphemeralDisk
- type HMJobProperties
- type HTTPProperties
- type InternalCredentials
- type Job
- type JobNetwork
- type JobProperties
- type JobPropertiesManifestBuilder
- func (j JobPropertiesManifestBuilder) Agent() AgentProperties
- func (j JobPropertiesManifestBuilder) Blobstore() BlobstoreJobProperties
- func (j JobPropertiesManifestBuilder) Director(manifestProperties ManifestProperties) DirectorJobProperties
- func (j JobPropertiesManifestBuilder) HM() HMJobProperties
- func (j JobPropertiesManifestBuilder) NATS() NATSJobProperties
- func (j JobPropertiesManifestBuilder) Postgres() PostgresProperties
- func (j JobPropertiesManifestBuilder) Registry() RegistryJobProperties
- type JobsManifestBuilder
- type LocalProperties
- type Manifest
- type ManifestBuilder
- type ManifestProperties
- type NATSJobProperties
- type Network
- type NetworksCloudProperties
- type NetworksManifestBuilder
- type PostgresProperties
- type RegistryJobProperties
- type RegistryPostgresProperties
- type Release
- type ReleaseManifestBuilder
- type ResourcePool
- type ResourcePoolCloudProperties
- type ResourcePoolsManifestBuilder
- type SSHTunnel
- type SSLProperties
- type SharedPropertiesManifestBuilder
- type Stemcell
- type Subnet
- type Template
- type UserManagementProperties
- type UserProperties
Constants ¶
View Source
const MBUS_PASSWORD_PREFIX = "mbus-"
View Source
const MBUS_USERNAME_PREFIX = "mbus-user-"
View Source
const PASSWORD_LENGTH = 15
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AWSProperties ¶
type AgentProperties ¶
type AgentProperties struct {
MBus string `yaml:"mbus"`
}
type BlobstoreJobProperties ¶
type BlobstoreJobProperties struct {
Address string `yaml:"address"`
Director Credentials `yaml:"director"`
Agent Credentials `yaml:"agent"`
}
type BlobstoreProperties ¶
type CloudProvider ¶
type CloudProvider struct {
Template Template `yaml:"template"`
SSHTunnel SSHTunnel `yaml:"ssh_tunnel"`
MBus string `yaml:"mbus"`
Properties CloudProviderProperties `yaml:"properties"`
}
type CloudProviderManifestBuilder ¶
type CloudProviderManifestBuilder struct {
// contains filtered or unexported fields
}
func NewCloudProviderManifestBuilder ¶
func NewCloudProviderManifestBuilder(stringGenerator stringGenerator) CloudProviderManifestBuilder
func (CloudProviderManifestBuilder) Build ¶
func (c CloudProviderManifestBuilder) Build(manifestProperties ManifestProperties) (CloudProvider, ManifestProperties, error)
type CloudProviderProperties ¶
type CloudProviderProperties struct {
AWS AWSProperties `yaml:"aws"`
Agent AgentProperties `yaml:"agent"`
Blobstore BlobstoreProperties `yaml:"blobstore"`
}
type Credentials ¶
type DirectorJobProperties ¶
type DirectorJobProperties struct {
Address string `yaml:"address"`
Name string `yaml:"name"`
CPIJob string `yaml:"cpi_job"`
Workers int `yaml:"workers"`
EnableDedicatedStatusWorker bool `yaml:"enable_dedicated_status_worker"`
EnablePostDeploy bool `yaml:"enable_post_deploy"`
DB PostgresProperties `yaml:"db"`
UserManagement UserManagementProperties `yaml:"user_management"`
SSL SSLProperties `yaml:"ssl"`
}
type DiskPool ¶
type DiskPool struct {
Name string `yaml:"name"`
DiskSize int `yaml:"disk_size"`
CloudProperties DiskPoolsCloudProperties `yaml:"cloud_properties"`
}
type DiskPoolsManifestBuilder ¶
type DiskPoolsManifestBuilder struct{}
func NewDiskPoolsManifestBuilder ¶
func NewDiskPoolsManifestBuilder() DiskPoolsManifestBuilder
func (DiskPoolsManifestBuilder) Build ¶
func (r DiskPoolsManifestBuilder) Build() []DiskPool
type EphemeralDisk ¶
type HMJobProperties ¶
type HMJobProperties struct {
DirectorAccount Credentials `yaml:"director_account"`
ResurrectorEnabled bool `yaml:"resurrector_enabled"`
}
type HTTPProperties ¶
type InternalCredentials ¶
type InternalCredentials struct {
MBusUsername string `json:"mbusUsername"`
NatsUsername string `json:"natsUsername"`
PostgresUsername string `json:"postgresUsername"`
RegistryUsername string `json:"registryUsername"`
BlobstoreDirectorUsername string `json:"blobstoreDirectorUsername"`
BlobstoreAgentUsername string `json:"blobstoreAgentUsername"`
HMUsername string `json:"hmUsername"`
MBusPassword string `json:"mbusPassword"`
NatsPassword string `json:"natsPassword"`
PostgresPassword string `json:"postgresPassword"`
RegistryPassword string `json:"registryPassword"`
BlobstoreDirectorPassword string `json:"blobstoreDirectorPassword"`
BlobstoreAgentPassword string `json:"blobstoreAgentPassword"`
HMPassword string `json:"hmPassword"`
}
func NewInternalCredentials ¶
func NewInternalCredentials(credentials map[string]string) InternalCredentials
func (InternalCredentials) ToMap ¶
func (c InternalCredentials) ToMap() map[string]string
type Job ¶
type Job struct {
Name string `yaml:"name"`
Instances int `yaml:"instances"`
ResourcePool string `yaml:"resource_pool"`
PersistentDiskPool string `yaml:"persistent_disk_pool"`
Templates []Template `yaml:"templates"`
Networks []JobNetwork `yaml:"networks"`
Properties JobProperties `yaml:"properties"`
}
type JobNetwork ¶
type JobProperties ¶
type JobProperties struct {
NATS NATSJobProperties `yaml:"nats"`
Postgres PostgresProperties `yaml:"postgres"`
Registry RegistryJobProperties `yaml:"registry"`
Blobstore BlobstoreJobProperties `yaml:"blobstore"`
Director DirectorJobProperties `yaml:"director"`
HM HMJobProperties `yaml:"hm"`
AWS AWSProperties `yaml:"aws"`
Agent AgentProperties `yaml:"agent"`
}
type JobPropertiesManifestBuilder ¶
type JobPropertiesManifestBuilder struct {
// contains filtered or unexported fields
}
func NewJobPropertiesManifestBuilder ¶
func NewJobPropertiesManifestBuilder(natsUsername, postgresUsername, registryUsername, blobstoreDirectorUsername, blobstoreAgentUsername, hmUsername, natsPassword, postgresPassword, registryPassword, blobstoreDirectorPassword, blobstoreAgentPassword, hmPassword string) JobPropertiesManifestBuilder
func (JobPropertiesManifestBuilder) Agent ¶
func (j JobPropertiesManifestBuilder) Agent() AgentProperties
func (JobPropertiesManifestBuilder) Blobstore ¶
func (j JobPropertiesManifestBuilder) Blobstore() BlobstoreJobProperties
func (JobPropertiesManifestBuilder) Director ¶
func (j JobPropertiesManifestBuilder) Director(manifestProperties ManifestProperties) DirectorJobProperties
func (JobPropertiesManifestBuilder) HM ¶
func (j JobPropertiesManifestBuilder) HM() HMJobProperties
func (JobPropertiesManifestBuilder) NATS ¶
func (j JobPropertiesManifestBuilder) NATS() NATSJobProperties
func (JobPropertiesManifestBuilder) Postgres ¶
func (j JobPropertiesManifestBuilder) Postgres() PostgresProperties
func (JobPropertiesManifestBuilder) Registry ¶
func (j JobPropertiesManifestBuilder) Registry() RegistryJobProperties
type JobsManifestBuilder ¶
type JobsManifestBuilder struct {
// contains filtered or unexported fields
}
func NewJobsManifestBuilder ¶
func NewJobsManifestBuilder(stringGenerator stringGenerator) JobsManifestBuilder
func (JobsManifestBuilder) Build ¶
func (j JobsManifestBuilder) Build(manifestProperties ManifestProperties) ([]Job, ManifestProperties, error)
type LocalProperties ¶
type LocalProperties struct {
Users []UserProperties `yaml:"users"`
}
type Manifest ¶
type Manifest struct {
Name string `yaml:"name"`
Releases []Release `yaml:"releases"`
ResourcePools []ResourcePool `yaml:"resource_pools"`
DiskPools []DiskPool `yaml:"disk_pools"`
Networks []Network `yaml:"networks"`
Jobs []Job `yaml:"jobs"`
CloudProvider CloudProvider `yaml:"cloud_provider"`
}
func (Manifest) DirectorSSLKeyPair ¶
type ManifestBuilder ¶
type ManifestBuilder struct {
// contains filtered or unexported fields
}
func NewManifestBuilder ¶
func NewManifestBuilder(logger logger, sslKeyPairGenerator sslKeyPairGenerator, stringGenerator stringGenerator, cloudProviderManifestBuilder cloudProviderManifestBuilder, jobsManifestBuilder jobsManifestBuilder) ManifestBuilder
func (ManifestBuilder) Build ¶
func (m ManifestBuilder) Build(manifestProperties ManifestProperties) (Manifest, ManifestProperties, error)
type ManifestProperties ¶
type ManifestProperties struct {
DirectorName string
DirectorUsername string
DirectorPassword string
SubnetID string
AvailabilityZone string
CACommonName string
ElasticIP string
AccessKeyID string
SecretAccessKey string
DefaultKeyName string
Region string
SecurityGroup string
SSLKeyPair ssl.KeyPair
Credentials InternalCredentials
}
type NATSJobProperties ¶
type NetworksCloudProperties ¶
type NetworksCloudProperties struct {
Subnet string `yaml:"subnet"`
}
type NetworksManifestBuilder ¶
type NetworksManifestBuilder struct{}
func NewNetworksManifestBuilder ¶
func NewNetworksManifestBuilder() NetworksManifestBuilder
func (NetworksManifestBuilder) Build ¶
func (r NetworksManifestBuilder) Build(manifestProperties ManifestProperties) []Network
type PostgresProperties ¶
type RegistryJobProperties ¶
type RegistryJobProperties struct {
Host string `yaml:"host"`
Address string `yaml:"address"`
Username string `yaml:"username"`
Password string `yaml:"password"`
DB RegistryPostgresProperties `yaml:"db"`
HTTP HTTPProperties `yaml:"http"`
}
type ReleaseManifestBuilder ¶
type ReleaseManifestBuilder struct{}
func NewReleaseManifestBuilder ¶
func NewReleaseManifestBuilder() ReleaseManifestBuilder
func (ReleaseManifestBuilder) Build ¶
func (r ReleaseManifestBuilder) Build() []Release
type ResourcePool ¶
type ResourcePool struct {
Name string `yaml:"name"`
Network string `yaml:"network"`
Stemcell Stemcell `yaml:"stemcell"`
CloudProperties ResourcePoolCloudProperties `yaml:"cloud_properties"`
}
type ResourcePoolCloudProperties ¶
type ResourcePoolCloudProperties struct {
InstanceType string `yaml:"instance_type"`
EphemeralDisk EphemeralDisk `yaml:"ephemeral_disk"`
AvailabilityZone string `yaml:"availability_zone"`
}
type ResourcePoolsManifestBuilder ¶
type ResourcePoolsManifestBuilder struct{}
func NewResourcePoolsManifestBuilder ¶
func NewResourcePoolsManifestBuilder() ResourcePoolsManifestBuilder
func (ResourcePoolsManifestBuilder) Build ¶
func (r ResourcePoolsManifestBuilder) Build(manifestProperties ManifestProperties) []ResourcePool
type SSLProperties ¶
type SharedPropertiesManifestBuilder ¶
type SharedPropertiesManifestBuilder struct {
}
func NewSharedPropertiesManifestBuilder ¶
func NewSharedPropertiesManifestBuilder() *SharedPropertiesManifestBuilder
func (SharedPropertiesManifestBuilder) AWS ¶
func (SharedPropertiesManifestBuilder) AWS(manifestProperties ManifestProperties) AWSProperties
type Subnet ¶
type Subnet struct {
Range string `yaml:"range"`
Gateway string `yaml:"gateway"`
DNS []string `yaml:"dns"`
CloudProperties NetworksCloudProperties `yaml:"cloud_properties"`
}
type UserManagementProperties ¶
type UserManagementProperties struct {
Local LocalProperties `yaml:"local"`
}
type UserProperties ¶
Source Files
¶
- cloud_provider_manifest_builder.go
- disk_pools_manifest_builder.go
- internal_credentials.go
- job_properties.go
- job_properties_manifest_builder.go
- jobs_manifest_builder.go
- manifest.go
- manifest_builder.go
- networks_manifest_builder.go
- release_manifest_builder.go
- resource_pools_manifest_builder.go
- shared_properties_manifest_builder.go
Click to show internal directories.
Click to hide internal directories.