Documentation
¶
Index ¶
- func List(client *golangsdk.ServiceClient, opts ListOpsBuilder) pagination.Pager
- func Resize(client *golangsdk.ServiceClient, id string, opts ResizeInstanceOpts) (string, error)
- type BssParam
- type CreateOps
- type CreateOpsBuilder
- type CreateResult
- type DeleteResult
- type GetResult
- type Instance
- type InstanceCreate
- type ListOpsBuilder
- type ListOpts
- type ListResponse
- type Page
- type ResetPasswordOpts
- type ResetPasswordOptsBuilder
- type ResetPasswordResult
- type ResizeInstanceOpts
- type Task
- type UpdateOpts
- type UpdateOptsBuilder
- type UpdateResult
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func List ¶
func List(client *golangsdk.ServiceClient, opts ListOpsBuilder) pagination.Pager
func Resize ¶
func Resize(client *golangsdk.ServiceClient, id string, opts ResizeInstanceOpts) (string, error)
Types ¶
type BssParam ¶
type BssParam struct { // Indicates the charging mode of the instance. ChargingMode string `json:"charging_mode" required:"true"` // Indicates the charging period unit of the instance PeriodType string `json:"period_type,omitempty"` // Indicates the charging period of the instance. PeriodNum int `json:"period_num,omitempty"` // Indicates whether auto renew is enabled. IsAutoRenew *bool `json:"is_auto_renew,omitempty"` // Indicates whether the order is automatically or manually paid. IsAutoPay *bool `json:"is_auto_pay,omitempty"` }
type CreateOps ¶
type CreateOps struct { // Indicates the name of an instance. // An instance name starts with a letter, // consists of 4 to 64 characters, and supports // only letters, digits, hyphens (-), and underscores (_). Name string `json:"name" required:"true"` // Indicates the description of an instance. // It is a character string containing not more than 1024 characters. Description string `json:"description,omitempty"` // Indicates a message engine. Engine string `json:"engine" required:"true"` // Indicates the version of a message engine. EngineVersion string `json:"engine_version" required:"true"` // Indicates the message storage space. StorageSpace int `json:"storage_space" required:"true"` // Indicates a username. // A username consists of 1 to 64 characters // and supports only letters, digits, and hyphens (-). AccessUser string `json:"access_user,omitempty"` // Indicates the password of an instance. // An instance password must meet the following complexity requirements: // Must be 6 to 32 characters long. // Must contain at least two of the following character types: // Lowercase letters // Uppercase letters // Digits // Special characters (`~!@#$%^&*()-_=+\|[{}]:'",<.>/?) Password string `json:"password,omitempty"` // Indicates the ID of a VPC. VPCID string `json:"vpc_id" required:"true"` // Indicates the ID of a security group. SecurityGroupID string `json:"security_group_id" required:"true"` // Indicates the ID of a subnet. SubnetID string `json:"subnet_id" required:"true"` // Indicates the ID of an AZ. // The parameter value can be left blank or an empty array. AvailableZones []string `json:"available_zones" required:"true"` // Indicates a product ID. ProductID string `json:"product_id" required:"true"` // Indicates the maximum number of brokers in a RabbitMQ instance. BrokerNum int `json:"broker_num,omitempty"` // Indicates the time at which a maintenance time window starts. // Format: HH:mm:ss MaintainBegin string `json:"maintain_begin,omitempty"` // Indicates the time at which a maintenance time window ends. // Format: HH:mm:ss MaintainEnd string `json:"maintain_end,omitempty"` // Indicates whether to open the public network access function. Default to false. EnablePublicIP bool `json:"enable_publicip,omitempty"` // Indicates the ID of the Elastic IP address bound to the instance. PublicIpID string `json:"publicip_id,omitempty"` // Indicates whether to enable SSL-encrypted access. SslEnable bool `json:"ssl_enable,omitempty"` //Indicates the storage I/O specification. For details on how to select a disk type StorageSpecCode string `json:"storage_spec_code" required:"true"` // Indicates the enterprise project ID. EnterpriseProjectID string `json:"enterprise_project_id,omitempty"` // Indicates the tags of the instance Tags []tags.ResourceTag `json:"tags,omitempty"` // Indicates the parameter related to the yearly/monthly billing mode. BssParam *BssParam `json:"bss_param,omitempty"` // Whether to enable ACL EnableAcl bool `json:"enable_acl,omitempty"` }
CreateOps is a struct that contains all the parameters.
func (CreateOps) ToInstanceCreateMap ¶
ToInstanceCreateMap is used for type convert
type CreateOpsBuilder ¶
CreateOpsBuilder is used for creating instance parameters. any struct providing the parameters should implement this interface
type CreateResult ¶
CreateResult is a struct that contains all the return parameters of creation
func Create ¶
func Create(client *golangsdk.ServiceClient, ops CreateOpsBuilder) (r CreateResult)
Create an instance with given parameters.
func CreateWithEngine ¶
func CreateWithEngine(client *golangsdk.ServiceClient, ops CreateOpsBuilder) (r CreateResult)
Create an instance with given parameters.
func (CreateResult) Extract ¶
func (r CreateResult) Extract() (*InstanceCreate, error)
Extract from CreateResult
type DeleteResult ¶
DeleteResult is a struct which contains the result of deletion
func Delete ¶
func Delete(client *golangsdk.ServiceClient, id string) (r DeleteResult)
Delete an instance by id
type GetResult ¶
GetResult contains the body of getting detailed
type Instance ¶
type Instance struct { Name string `json:"name"` Description string `json:"description"` Engine string `json:"engine"` EngineVersion string `json:"engine_version"` Specification string `json:"specification"` StorageSpace int `json:"storage_space"` UsedStorageSpace int `json:"used_storage_space"` ConnectAddress string `json:"connect_address"` Port int `json:"port"` Status string `json:"status"` InstanceID string `json:"instance_id"` ResourceSpecCode string `json:"resource_spec_code"` BrokerNum int `json:"broker_num"` ChargingMode int `json:"charging_mode"` VPCID string `json:"vpc_id"` VPCName string `json:"vpc_name"` CreatedAt string `json:"created_at"` UserID string `json:"user_id"` UserName string `json:"user_name"` OrderID string `json:"order_id"` MaintainBegin string `json:"maintain_begin"` MaintainEnd string `json:"maintain_end"` EnablePublicIP bool `json:"enable_publicip"` PublicIPAddress string `json:"publicip_address"` PublicIPID string `json:"publicip_id"` ManagementConnectAddress string `json:"management_connect_address"` SslEnable bool `json:"ssl_enable"` EnterpriseProjectID string `json:"enterprise_project_id"` IsLogicalVolume bool `json:"is_logical_volume"` ExtendTimes int `json:"extend_times"` Type string `json:"type"` ProductID string `json:"product_id"` SecurityGroupID string `json:"security_group_id"` SecurityGroupName string `json:"security_group_name"` SubnetID string `json:"subnet_id"` AvailableZones []string `json:"available_zones"` TotalStorageSpace int `json:"total_storage_space"` StorageResourceID string `json:"storage_resource_id"` StorageSpecCode string `json:"storage_spec_code"` Ipv6Enable bool `json:"ipv6_enable"` Ipv6ConnectAddresses []string `json:"ipv6_connect_addresses"` ServiceType string `json:"service_type"` StorageType string `json:"storage_type"` PublicBoundWidth int `json:"public_boundwidth"` EnableLogCollect bool `json:"enable_log_collection"` ConnectorEnalbe bool `json:"connector_enable"` ConnectorID string `json:"connector_id"` RestEnable bool `json:"rest_enable"` RestConnectAddress string `json:"rest_connect_address"` MessageQueryInstEnable bool `json:"message_query_inst_enable"` VpcClientPlain bool `json:"vpc_client_plain"` SupportFeatures string `json:"support_features"` TraceEnable bool `json:"trace_enable"` DiskEncrypted bool `json:"disk_encrypted"` CesVersion string `json:"ces_version"` AccessUser string `json:"access_user"` Task Task `json:"task"` Tags []tags.ResourceTag `json:"tags"` EnableAcl bool `json:"enable_acl"` }
Instance response
type InstanceCreate ¶
type InstanceCreate struct {
InstanceID string `json:"instance_id"`
}
InstanceCreate response
type ListOpsBuilder ¶
type ListOpts ¶
type ListOpts struct { InstanceId string `q:"instance_id"` Name string `q:"name"` Engine string `q:"engine"` Status string `q:"status"` IncludeFailure string `q:"include_failure"` ExactMatchName string `q:"exact_match_name"` EnterpriseProjectID string `q:"enterprise_project_id"` }
func (ListOpts) ToListDetailQuery ¶
type ListResponse ¶
type ListResponse struct { Instances []Instance `json:"instances"` TotalCount int `json:"instance_num"` }
func ExtractInstances ¶
func ExtractInstances(r pagination.Page) (ListResponse, error)
ExtractCloudServers is a function that takes a ListResult and returns the services' information.
type Page ¶
type Page struct {
pagination.SinglePageBase
}
type ResetPasswordOpts ¶
type ResetPasswordOpts struct { // Indicates the new password of an instance. NewPassword string `json:"new_password" required:"true"` }
ResetPasswordOpts is a struct which represents the parameter of ResetPassword function
func (ResetPasswordOpts) ConvertToResetPasswordMap ¶
func (opts ResetPasswordOpts) ConvertToResetPasswordMap() (map[string]interface{}, error)
ConvertToResetPasswordMap is used for type convert
type ResetPasswordOptsBuilder ¶
type ResetPasswordOptsBuilder interface {
ConvertToResetPasswordMap() (map[string]interface{}, error)
}
ResetPasswordOptsBuilder is an interface which can build the map parameter of ResetPassword function
type ResetPasswordResult ¶
ResetPasswordResult is a struct that contains all the return parameters of ResetPassword function
func ResetPassword ¶
func ResetPassword(client *golangsdk.ServiceClient, id string, opts ResetPasswordOptsBuilder) (r ResetPasswordResult)
ResetPassword is used to reset password for the instance via accessing to the service with POST method and parameters
type ResizeInstanceOpts ¶
type UpdateOpts ¶
type UpdateOpts struct { // Indicates the name of an instance. // An instance name starts with a letter, // consists of 4 to 64 characters, // and supports only letters, digits, and hyphens (-). Name string `json:"name,omitempty"` // Indicates the description of an instance. // It is a character string containing not more than 1024 characters. Description *string `json:"description,omitempty"` // Indicates the time at which a maintenance time window starts. // Format: HH:mm:ss MaintainBegin string `json:"maintain_begin,omitempty"` // Indicates the time at which a maintenance time window ends. // Format: HH:mm:ss MaintainEnd string `json:"maintain_end,omitempty"` // Indicates the ID of a security group. SecurityGroupID string `json:"security_group_id,omitempty"` // Indicates whether to open the public network access function. Default to false. EnablePublicIP *bool `json:"enable_publicip,omitempty"` // Indicates the ID of the Elastic IP address bound to the instance. PublicIpID string `json:"publicip_id,omitempty"` // Indicates the enterprise project ID. EnterpriseProjectID string `json:"enterprise_project_id,omitempty"` // Whether to enable ACL EnableAcl *bool `json:"enable_acl,omitempty"` }
UpdateOpts is a struct which represents the parameters of update function
func (UpdateOpts) ToInstanceUpdateMap ¶
func (opts UpdateOpts) ToInstanceUpdateMap() (map[string]interface{}, error)
ToInstanceUpdateMap is used for type convert
type UpdateOptsBuilder ¶
UpdateOptsBuilder is an interface which can build the map paramter of update function
type UpdateResult ¶
UpdateResult is a struct from which can get the result of update method
func Update ¶
func Update(client *golangsdk.ServiceClient, id string, opts UpdateOptsBuilder) (r UpdateResult)
Update is a method which can be able to update the instance via accessing to the service with Put method and parameters