Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CloudConfigToString ¶ added in v0.8.0
func CloudConfigToString(c *CloudConfig) (string, error)
func New ¶
func New(configVarResolver *providerconfig.ConfigVarResolver) cloudprovidertypes.Provider
New returns a openstack provider
Types ¶
type BlockStorageOpts ¶ added in v0.8.0
type CloudConfig ¶ added in v0.8.0
type CloudConfig struct {
Global GlobalOpts
LoadBalancer LoadBalancerOpts
BlockStorage BlockStorageOpts
Version string
}
CloudConfig is used to read and store information from the cloud configuration file
type Config ¶ added in v0.0.2
type Config struct {
IdentityEndpoint string
Username string
Password string
DomainName string
TenantName string
TenantID string
TokenID string
Region string
// Machine details
Image string
Flavor string
SecurityGroups []string
Network string
Subnet string
FloatingIPPool string
AvailabilityZone string
TrustDevicePath bool
RootDiskSizeGB *int
NodeVolumeAttachLimit *uint
Tags map[string]string
}
type GlobalOpts ¶ added in v0.8.0
type LoadBalancerOpts ¶ added in v0.8.0
type LoadBalancerOpts struct {
LBVersion string `gcfg:"lb-version"`
SubnetID string `gcfg:"subnet-id"`
FloatingNetworkID string `gcfg:"floating-network-id"`
LBMethod string `gcfg:"lb-method"`
LBProvider string `gcfg:"lb-provider"`
CreateMonitor bool `gcfg:"create-monitor"`
MonitorDelay ini.Duration `gcfg:"monitor-delay"`
MonitorTimeout ini.Duration `gcfg:"monitor-timeout"`
MonitorMaxRetries uint `gcfg:"monitor-max-retries"`
ManageSecurityGroups bool `gcfg:"manage-security-groups"`
}
type RawConfig ¶ added in v0.2.0
type RawConfig struct {
// Auth details
IdentityEndpoint providerconfig.ConfigVarString `json:"identityEndpoint,omitempty"`
Username providerconfig.ConfigVarString `json:"username,omitempty"`
Password providerconfig.ConfigVarString `json:"password,omitempty"`
DomainName providerconfig.ConfigVarString `json:"domainName,omitempty"`
TenantName providerconfig.ConfigVarString `json:"tenantName,omitempty"`
TenantID providerconfig.ConfigVarString `json:"tenantID,omitempty"`
TokenID providerconfig.ConfigVarString `json:"tokenId,omitempty"`
Region providerconfig.ConfigVarString `json:"region,omitempty"`
// Machine details
Image providerconfig.ConfigVarString `json:"image"`
Flavor providerconfig.ConfigVarString `json:"flavor"`
SecurityGroups []providerconfig.ConfigVarString `json:"securityGroups,omitempty"`
Network providerconfig.ConfigVarString `json:"network,omitempty"`
Subnet providerconfig.ConfigVarString `json:"subnet,omitempty"`
FloatingIPPool providerconfig.ConfigVarString `json:"floatingIpPool,omitempty"`
AvailabilityZone providerconfig.ConfigVarString `json:"availabilityZone,omitempty"`
TrustDevicePath providerconfig.ConfigVarBool `json:"trustDevicePath"`
RootDiskSizeGB *int `json:"rootDiskSizeGB"`
NodeVolumeAttachLimit *uint `json:"nodeVolumeAttachLimit"`
// This tag is related to server metadata, not compute server's tag
Tags map[string]string `json:"tags,omitempty"`
}
Click to show internal directories.
Click to hide internal directories.