configurations

package
v0.0.0-...-63319d1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 29, 2024 License: MPL-2.0, Apache-2.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func List

func List(client *golangsdk.ServiceClient, opts ListOptsBuilder) pagination.Pager

List is method that can be able to list all configurations of autoscaling service

Types

type Bandwidth

type Bandwidth struct {
	Size         int    `json:"size"`
	ShareType    string `json:"share_type"`
	ChargingMode string `json:"charging_mode"`
}

type BandwidthOpts

type BandwidthOpts struct {
	ShareType    string `json:"share_type" required:"true"`
	Size         int    `json:"size,omitempty"`
	ChargingMode string `json:"charging_mode,omitempty"`
	ID           string `json:"id,omitempty"`
}

type Configuration

type Configuration struct {
	ID             string         `json:"scaling_configuration_id"`
	Name           string         `json:"scaling_configuration_name"`
	InstanceConfig InstanceConfig `json:"instance_config"`
	ScalingGroupID string         `json:"scaling_group_id"`
	Tenant         string         `json:"tenant"`
	CreateTime     string         `json:"create_time"`
}

type ConfigurationPage

type ConfigurationPage struct {
	pagination.SinglePageBase
}

func (ConfigurationPage) Extract

func (r ConfigurationPage) Extract() ([]Configuration, error)

func (ConfigurationPage) IsEmpty

func (r ConfigurationPage) IsEmpty() (bool, error)

IsEmpty returns true if a ListResult contains no Volumes.

type CreateOpts

type CreateOpts struct {
	Name           string             `json:"scaling_configuration_name" required:"true"`
	InstanceConfig InstanceConfigOpts `json:"instance_config" required:"true"`
}

func (CreateOpts) ToConfigurationCreateMap

func (opts CreateOpts) ToConfigurationCreateMap() (map[string]interface{}, error)

type CreateOptsBuilder

type CreateOptsBuilder interface {
	ToConfigurationCreateMap() (map[string]interface{}, error)
}

type CreateResult

type CreateResult struct {
	golangsdk.Result
}

CreateResult is a struct that contains all the return parameters of creation

func Create

func Create(client *golangsdk.ServiceClient, opts CreateOptsBuilder) (r CreateResult)

Create is a method by which can be able to access to create a configuration of autoscaling

func (CreateResult) Extract

func (r CreateResult) Extract() (string, error)

type DeleteResult

type DeleteResult struct {
	golangsdk.ErrResult
}

func Delete

func Delete(client *golangsdk.ServiceClient, id string) (r DeleteResult)

Delete is a method by which can be able to delete a configuration of autoscaling

type Disk

type Disk struct {
	Size               int               `json:"size"`
	VolumeType         string            `json:"volume_type"`
	DiskType           string            `json:"disk_type"`
	DedicatedStorageID string            `json:"dedicated_storage_id"`
	DataDiskImageID    string            `json:"data_disk_image_id"`
	SnapshotID         string            `json:"snapshot_id"`
	Metadata           map[string]string `json:"metadata"`
}

type DiskOpts

type DiskOpts struct {
	Size               int               `json:"size" required:"true"`
	VolumeType         string            `json:"volume_type" required:"true"`
	DiskType           string            `json:"disk_type" required:"true"`
	DedicatedStorageID string            `json:"dedicated_storage_id,omitempty"`
	DataDiskImageID    string            `json:"data_disk_image_id,omitempty"`
	SnapshotId         string            `json:"snapshot_id,omitempty"`
	Metadata           map[string]string `json:"metadata,omitempty"`
}

DiskOpts is an inner struct of InstanceConfigOpts

type Eip

type Eip struct {
	Type      string    `json:"ip_type"`
	Bandwidth Bandwidth `json:"bandwidth"`
}

type EipOpts

type EipOpts struct {
	Type      string        `json:"ip_type" required:"true"`
	Bandwidth BandwidthOpts `json:"bandwidth" required:"true"`
}

type GetResult

type GetResult struct {
	golangsdk.Result
}

func Get

func Get(client *golangsdk.ServiceClient, id string) (r GetResult)

Get is a method by which can be able to access to get a configuration of autoscaling detailed information

func (GetResult) Extract

func (r GetResult) Extract() (Configuration, error)

type InstanceConfig

type InstanceConfig struct {
	FlavorRef            string `json:"flavorRef"`
	ImageRef             string `json:"imageRef"`
	SSHKey               string `json:"key_name"`
	InstanceName         string `json:"instance_name"`
	InstanceID           string `json:"instance_id"`
	AdminPass            string `json:"adminPass"`
	ServerGroupID        string `json:"server_group_id"`
	Tenancy              string `json:"tenancy"`
	DedicatedHostID      string `json:"dedicated_host_id"`
	MarketType           string `json:"market_type"`
	FlavorPriorityPolicy string `json:"multi_flavor_priority_policy"`

	Disk           []Disk          `json:"disk"`
	PublicIp       PublicIp        `json:"public_ip"`
	SecurityGroups []SecurityGroup `json:"security_groups"`
	Personality    []Personality   `json:"personality"`

	UserData string                 `json:"user_data"`
	Metadata map[string]interface{} `json:"metadata"`
}

type InstanceConfigOpts

type InstanceConfigOpts struct {
	InstanceID           string `json:"instance_id,omitempty"`
	FlavorRef            string `json:"flavorRef,omitempty"`
	ImageRef             string `json:"imageRef,omitempty"`
	SSHKey               string `json:"key_name,omitempty"`
	ServerGroupID        string `json:"server_group_id,omitempty"`
	Tenancy              string `json:"tenancy,omitempty"`
	DedicatedHostID      string `json:"dedicated_host_id,omitempty"`
	FlavorPriorityPolicy string `json:"multi_flavor_priority_policy,omitempty"`
	MarketType           string `json:"market_type,omitempty"`

	Disk           []DiskOpts          `json:"disk,omitempty"`
	Personality    []PersonalityOpts   `json:"personality,omitempty"`
	PubicIP        *PublicIpOpts       `json:"public_ip,omitempty"`
	SecurityGroups []SecurityGroupOpts `json:"security_groups,omitempty"`

	// UserData contains configuration information or scripts to use upon launch.
	// Create will base64-encode it for you, if it isn't already.
	UserData []byte                 `json:"-"`
	Metadata map[string]interface{} `json:"metadata,omitempty"`
}

InstanceConfigOpts is an inner struct of CreateOpts

type ListOpts

type ListOpts struct {
	Name    string `q:"scaling_configuration_name"`
	ImageID string `q:"image_id"`
}

func (ListOpts) ToConfigurationListQuery

func (opts ListOpts) ToConfigurationListQuery() (string, error)

type ListOptsBuilder

type ListOptsBuilder interface {
	ToConfigurationListQuery() (string, error)
}

type Personality

type Personality struct {
	Path    string `json:"path"`
	Content string `json:"content"`
}

type PersonalityOpts

type PersonalityOpts struct {
	Path    string `json:"path" required:"true"`
	Content string `json:"content" required:"true"`
}

type PublicIp

type PublicIp struct {
	Eip Eip `json:"eip"`
}

type PublicIpOpts

type PublicIpOpts struct {
	Eip EipOpts `json:"eip" required:"true"`
}

type SecurityGroup

type SecurityGroup struct {
	ID string `json:"id"`
}

type SecurityGroupOpts

type SecurityGroupOpts struct {
	ID string `json:"id" required:"true"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL