instances

package
v0.0.0-...-d823fe1 Latest Latest
Warning

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

Go to latest
Published: Aug 31, 2021 License: Apache-2.0 Imports: 5 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ListDeh

func ListDeh(client *golangsdk.ServiceClient) pagination.Pager

func WaitForJobSuccess

func WaitForJobSuccess(client *golangsdk.ServiceClient, secs int, jobID string) error

Types

type BackupStrategy

type BackupStrategy struct {
	StartTime string `json:"start_time"`
	KeepDays  string `json:"keep_days"`
}

type BackupStrategyOpt

type BackupStrategyOpt struct {
	StartTime string `json:"start_time" required:"true"`
	KeepDays  string `json:"keep_days" required:"true"`
}

type Capacity

type Capacity struct {
	Vcpus  int   `json:"vcpus"`
	Ram    int   `json:"ram"`
	Volume int64 `json:"volume"`
}

type ChargeInfoOpt

type ChargeInfoOpt struct {
	ChargingMode string `json:"charge_mode,omitempty"`
	PeriodType   string `json:"period_type,omitempty"`
	PeriodNum    int    `json:"period_num,omitempty"`
	IsAutoRenew  string `json:"is_auto_renew,omitempty"`
	IsAutoPay    string `json:"is_auto_pay,omitempty"`
}

type CreateReplicaBuilder

type CreateReplicaBuilder interface {
	ToReplicaCreateMap() (map[string]interface{}, error)
}

type CreateReplicaOpts

type CreateReplicaOpts struct {
	Priorities []int  `json:"priorities" required:"true"`
	IsAutoPay  string `json:"is_auto_pay,omitempty"`
}

func (CreateReplicaOpts) ToReplicaCreateMap

func (opts CreateReplicaOpts) ToReplicaCreateMap() (map[string]interface{}, error)

type CreateResponse

type CreateResponse struct {
	Instance TaurusDBResponse `json:"instance"`
	JobId    string           `json:"job_id"`
	OrderId  string           `json:"order_id"`
}

type CreateResult

type CreateResult struct {
	// contains filtered or unexported fields
}

func Create

func (CreateResult) Extract

func (r CreateResult) Extract() (*CreateResponse, error)

type CreateTaurusDBBuilder

type CreateTaurusDBBuilder interface {
	ToInstancesCreateMap() (map[string]interface{}, error)
}

type CreateTaurusDBOpts

type CreateTaurusDBOpts struct {
	Name                string             `json:"name" required:"true"`
	Region              string             `json:"region" required:"true"`
	Mode                string             `json:"mode" required:"true"`
	Flavor              string             `json:"flavor_ref" required:"true"`
	VpcId               string             `json:"vpc_id" required:"true"`
	SubnetId            string             `json:"subnet_id" required:"true"`
	SecurityGroupId     string             `json:"security_group_id,omitempty"`
	Password            string             `json:"password" required:"true"`
	TimeZone            string             `json:"time_zone" required:"true"`
	AZMode              string             `json:"availability_zone_mode" required:"true"`
	SlaveCount          int                `json:"slave_count" required:"true"`
	MasterAZ            string             `json:"master_availability_zone,omitempty"`
	ConfigurationId     string             `json:"configuration_id,omitempty"`
	EnterpriseProjectId string             `json:"enterprise_project_id,omitempty"`
	DedicatedResourceId string             `json:"dedicated_resource_id,omitempty"`
	LowerCaseTableNames *int               `json:"lower_case_table_names,omitempty"`
	DataStore           DataStoreOpt       `json:"datastore" required:"true"`
	BackupStrategy      *BackupStrategyOpt `json:"backup_strategy,omitempty"`
	ChargeInfo          *ChargeInfoOpt     `json:"charge_info,omitempty"`
	Volume              *VolumeOpt         `json:"volume,omitempty"`
}

func (CreateTaurusDBOpts) ToInstancesCreateMap

func (opts CreateTaurusDBOpts) ToInstancesCreateMap() (map[string]interface{}, error)

type DataStore

type DataStore struct {
	Type    string `json:"type" required:"true"`
	Version string `json:"version" required:"true"`
}

type DataStoreOpt

type DataStoreOpt struct {
	Type    string `json:"type" required:"true"`
	Version string `json:"version" required:"true"`
}

type DehResource

type DehResource struct {
	Id               string   `json:"id"`
	ResourceName     string   `json:"resource_name"`
	EngineName       string   `json:"engine_name"`
	AvailabilityZone []string `json:"availability_zone"`
	Architecture     string   `json:"architecture"`
	Status           string   `json:"status"`
	Capacity         Capacity `json:"capacity"`
}

type DehResourcePage

type DehResourcePage struct {
	pagination.SinglePageBase
}

type DeleteResponse

type DeleteResponse struct {
	JobId string `json:"job_id"`
}

type DeleteResult

type DeleteResult struct {
	// contains filtered or unexported fields
}

func Delete

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

func (DeleteResult) Extract

func (r DeleteResult) Extract() (*DeleteResponse, error)

type EnlargeProxyBuilder

type EnlargeProxyBuilder interface {
	ToEnlargeProxyMap() (map[string]interface{}, error)
}

type EnlargeProxyOpts

type EnlargeProxyOpts struct {
	NodeNum int `json:"node_num" required:"true"`
}

func (EnlargeProxyOpts) ToEnlargeProxyMap

func (opts EnlargeProxyOpts) ToEnlargeProxyMap() (map[string]interface{}, error)

type ExtendResult

type ExtendResult struct {
	golangsdk.ErrResult
}

type ExtendVolumeBuilder

type ExtendVolumeBuilder interface {
	ToVolumeExtendMap() (map[string]interface{}, error)
}

type ExtendVolumeOpts

type ExtendVolumeOpts struct {
	Size      int    `json:"size" required:"true"`
	IsAutoPay string `json:"is_auto_pay,omitempty"`
}

func (ExtendVolumeOpts) ToVolumeExtendMap

func (opts ExtendVolumeOpts) ToVolumeExtendMap() (map[string]interface{}, error)

type GetProxyResult

type GetProxyResult struct {
	// contains filtered or unexported fields
}

func GetProxy

func GetProxy(client *golangsdk.ServiceClient, instanceId string) (r GetProxyResult)

func (GetProxyResult) Extract

func (r GetProxyResult) Extract() (*Proxy, error)

type GetResult

type GetResult struct {
	// contains filtered or unexported fields
}

func Get

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

func (GetResult) Extract

func (r GetResult) Extract() (*TaurusDBInstance, error)

type Job

type Job struct {
	Status     string `json:"status"`
	JobID      string `json:"id"`
	FailReason string `json:"fail_reason"`
}

type JobResponse

type JobResponse struct {
	JobID   string `json:"job_id"`
	OrderID string `json:"order_id"`
}

type JobResult

type JobResult struct {
	golangsdk.Result
}

func CreateReplica

func CreateReplica(client *golangsdk.ServiceClient, instanceId string, opts CreateReplicaBuilder) (r JobResult)

func DeleteProxy

func DeleteProxy(client *golangsdk.ServiceClient, instanceId string) (r JobResult)

func DeleteReplica

func DeleteReplica(client *golangsdk.ServiceClient, instanceId, nodeId string) (r JobResult)

func EnableProxy

func EnableProxy(client *golangsdk.ServiceClient, instanceId string, opts ProxyBuilder) (r JobResult)

func EnlargeProxy

func EnlargeProxy(client *golangsdk.ServiceClient, instanceId string, opts EnlargeProxyBuilder) (r JobResult)

func ExtendVolume

func ExtendVolume(client *golangsdk.ServiceClient, instanceId string, opts ExtendVolumeBuilder) (r JobResult)

func Resize

func Resize(client *golangsdk.ServiceClient, instanceId string, opts ResizeBuilder) (r JobResult)

func UpdateName

func UpdateName(client *golangsdk.ServiceClient, instanceId string, opts UpdateNameBuilder) (r JobResult)

func UpdatePass

func UpdatePass(client *golangsdk.ServiceClient, instanceId string, opts UpdatePassBuilder) (r JobResult)

func (JobResult) ExtractJobResponse

func (r JobResult) ExtractJobResponse() (*JobResponse, error)

func (JobResult) ExtractJobStatus

func (r JobResult) ExtractJobStatus() (*JobStatus, error)

type JobStatus

type JobStatus struct {
	Job Job `json:"job"`
}

type ListDehResponse

type ListDehResponse struct {
	Resources  []DehResource `json:"resources"`
	TotalCount int           `json:"total_count"`
}

func ExtractDehResources

func ExtractDehResources(r pagination.Page) (ListDehResponse, error)

type ListTaurusDBBuilder

type ListTaurusDBBuilder interface {
	ToTaurusDBListDetailQuery() (string, error)
}

type ListTaurusDBInstanceOpts

type ListTaurusDBInstanceOpts struct {
	Id            string `q:"id"`
	Name          string `q:"name"`
	Type          string `q:"type"`
	DataStoreType string `q:"datastore_type"`
	VpcId         string `q:"vpc_id"`
	SubnetId      string `q:"subnet_id"`
	Offset        int    `q:"offset"`
	Limit         int    `q:"limit"`
}

func (ListTaurusDBInstanceOpts) ToTaurusDBListDetailQuery

func (opts ListTaurusDBInstanceOpts) ToTaurusDBListDetailQuery() (string, error)

type ListTaurusDBResponse

type ListTaurusDBResponse struct {
	Instances  []TaurusDBInstance `json:"instances"`
	TotalCount int                `json:"total_count"`
}

func ExtractTaurusDBInstances

func ExtractTaurusDBInstances(r pagination.Page) (ListTaurusDBResponse, error)

ExtractTaurusDBInstances is a function that takes a ListResult and returns the services' information.

type ListTaurusDBResult

type ListTaurusDBResult struct {
	// contains filtered or unexported fields
}

type NodeVolume

type NodeVolume struct {
	Size int `json:"size"`
}

type Nodes

type Nodes struct {
	Id               string     `json:"id"`
	Name             string     `json:"name"`
	Type             string     `json:"type"`
	Status           string     `json:"status"`
	PrivateIps       []string   `json:"private_read_ips"`
	Port             int        `json:"port"`
	Flavor           string     `json:"flavor_ref"`
	Region           string     `json:"region_code"`
	AvailabilityZone string     `json:"az_code"`
	Volume           NodeVolume `json:"volume"`
}

type Proxy

type Proxy struct {
	Address string `json:"address"`
	Port    int    `json:"port"`
	ElbVip  string `json:"elb_vip"`
	Eip     string `json:"eip"`
	NodeNum int    `json:"node_num"`
	Flavor  string `json:"flavor_ref"`
}

type ProxyBuilder

type ProxyBuilder interface {
	ToProxyMap() (map[string]interface{}, error)
}

type ProxyOpts

type ProxyOpts struct {
	Flavor  string `json:"flavor_ref" required:"true"`
	NodeNum int    `json:"node_num" required:"true"`
}

func (ProxyOpts) ToProxyMap

func (opts ProxyOpts) ToProxyMap() (map[string]interface{}, error)

type ResizeBuilder

type ResizeBuilder interface {
	ToResizeMap() (map[string]interface{}, error)
}

type ResizeOpt

type ResizeOpt struct {
	Spec string `json:"spec_code" required:"true"`
}

type ResizeOpts

type ResizeOpts struct {
	Resize    ResizeOpt `json:"resize_flavor" required:"true"`
	IsAutoPay string    `json:"is_auto_pay,omitempty"`
}

func (ResizeOpts) ToResizeMap

func (opts ResizeOpts) ToResizeMap() (map[string]interface{}, error)

type TaurusDBInstance

type TaurusDBInstance struct {
	Id              string   `json:"id"`
	Name            string   `json:"name"`
	Status          string   `json:"status"`
	Type            string   `json:"type"`
	Port            string   `json:"port"`
	NodeCount       int      `json:"node_count"`
	VpcId           string   `json:"vpc_id"`
	SubnetId        string   `json:"subnet_id"`
	SecurityGroupId string   `json:"security_group_id"`
	ConfigurationId string   `json:"configuration_id"`
	AZMode          string   `json:"az_mode"`
	MasterAZ        string   `json:"master_az_code"`
	TimeZone        string   `json:"time_zone"`
	ProjectId       string   `json:"project_id"`
	DbUserName      string   `json:"db_user_name"`
	PublicIps       string   `json:"public_ips"`
	PrivateIps      []string `json:"private_write_ips"`
	Created         string   `json:"-"`
	Updated         string   `json:"-"`

	Volume         Volume         `json:"volume"`
	Nodes          []Nodes        `json:"nodes"`
	DataStore      DataStore      `json:"datastore"`
	BackupStrategy BackupStrategy `json:"backup_strategy"`

	EnterpriseProjectId string `json:"enterprise_project_id"`
	DedicatedResourceId string `json:"dedicated_resource_id"`
}

func GetInstanceByName

func GetInstanceByName(client *golangsdk.ServiceClient, name string) (TaurusDBInstance, error)

type TaurusDBPage

type TaurusDBPage struct {
	pagination.SinglePageBase
}

func (TaurusDBPage) IsEmpty

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

type TaurusDBResponse

type TaurusDBResponse struct {
	Id              string `json:"id"`
	Name            string `json:"name"`
	Status          string `json:"status"`
	Region          string `json:"region"`
	Mode            string `json:"mode"`
	Port            string `json:"port"`
	VpcId           string `json:"vpc_id"`
	SubnetId        string `json:"subnet_id"`
	SecurityGroupId string `json:"security_group_id"`
	ConfigurationId string `json:"configuration_id"`
	AZMode          string `json:"availability_zone_mode"`
	MasterAZ        string `json:"master_availability_zone"`
	SlaveCount      int    `json:"slave_count"`

	DataStore      DataStore          `json:"datastore"`
	BackupStrategy BackupStrategy     `json:"backup_strategy"`
	ChargeInfo     structs.ChargeInfo `json:"charge_info"`

	EnterpriseProjectId string `json:"enterprise_project_id"`
}

type UpdateNameBuilder

type UpdateNameBuilder interface {
	ToNameUpdateMap() (map[string]interface{}, error)
}

type UpdateNameOpts

type UpdateNameOpts struct {
	Name string `json:"name" required:"true"`
}

func (UpdateNameOpts) ToNameUpdateMap

func (opts UpdateNameOpts) ToNameUpdateMap() (map[string]interface{}, error)

type UpdatePassBuilder

type UpdatePassBuilder interface {
	ToPassUpdateMap() (map[string]interface{}, error)
}

type UpdatePassOpts

type UpdatePassOpts struct {
	Password string `json:"password" required:"true"`
}

func (UpdatePassOpts) ToPassUpdateMap

func (opts UpdatePassOpts) ToPassUpdateMap() (map[string]interface{}, error)

type Volume

type Volume struct {
	Type string `json:"type"`
	Used string `json:"used"`
}

type VolumeOpt

type VolumeOpt struct {
	Size int `json:"size" required:"true"`
}

Jump to

Keyboard shortcuts

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