Documentation ¶
Index ¶
- func GetJobEntity(client *golangsdk.ServiceClient, jobID string, label string) (interface{}, error)
- func List(c *golangsdk.ServiceClient, opts ListOptsBuilder) pagination.Pager
- func WaitForJobSuccess(client *golangsdk.ServiceClient, secs int, jobID string) error
- type Attachment
- type CreateOpts
- type CreateOptsBuilder
- type DeleteOpts
- type DeleteOptsBuilder
- type GetResult
- type Instance
- type InstancePage
- type JobEntity
- type JobResponse
- type JobResult
- type JobStatus
- type ListOpts
- type ListOptsBuilder
- type SubJob
- type Tags
- type UpdateOpts
- type UpdateOptsBuilder
- type UpdateResult
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GetJobEntity ¶
func List ¶ added in v0.3.1
func List(c *golangsdk.ServiceClient, opts ListOptsBuilder) pagination.Pager
func WaitForJobSuccess ¶
Types ¶
type Attachment ¶
type CreateOpts ¶
type CreateOpts struct { // Group ID GroupID string `json:"server_group_id" required:"true"` // Server ID ServerID string `json:"server_id" required:"true"` // Instance Name Name string `json:"name" required:"true"` // Instance Description Description string `json:"description,omitempty"` // Cluster ID ClusterID string `json:"cluster_id,omitempty"` // Subnet ID SubnetID string `json:"primary_subnet_id,omitempty"` // IP Address IpAddress string `json:"primary_ip_address,omitempty"` // Flavor ID of the DR site server Flavor string `json:"flavorRef,omitempty"` // Tags list Tags []Tags `json:"tags,omitempty"` }
CreateOpts contains all the values needed to create a new instance.
func (CreateOpts) ToInstanceCreateMap ¶
func (opts CreateOpts) ToInstanceCreateMap() (map[string]interface{}, error)
ToInstanceCreateMap builds a create request body from CreateOpts.
type CreateOptsBuilder ¶
CreateOptsBuilder allows extensions to add additional parameters to the Create request.
type DeleteOpts ¶
type DeleteOpts struct { // Delete Target Server DeleteTargetServer *bool `json:"delete_target_server,omitempty"` // Delete Target Eip DeleteTargetEip *bool `json:"delete_target_eip,omitempty"` }
DeleteOpts contains all the values needed to delete an Instance.
func (DeleteOpts) ToInstanceDeleteMap ¶
func (opts DeleteOpts) ToInstanceDeleteMap() (map[string]interface{}, error)
ToInstanceDeleteMap builds a update request body from DeleteOpts.
type DeleteOptsBuilder ¶
DeleteOptsBuilder allows extensions to add additional parameters to the Delete request.
type GetResult ¶
type GetResult struct {
// contains filtered or unexported fields
}
GetResult represents the result of a get operation. Call its Extract method to interpret it as a Instance.
type Instance ¶
type Instance struct { // Instance ID ID string `json:"id"` // Instance Name Name string `json:"name"` // Instance Description Description string `json:"description"` // Protection Group ID GroupID string `json:"server_group_id"` // Instance Status Status string `json:"status"` // Instance Progress Progress int `json:"progress"` // Source Server SourceServer string `json:"source_server"` // Target Server TargetServer string `json:"target_server"` // Instance CreatedAt time CreatedAt string `json:"created_at"` // Instance UpdatedAt time UpdatedAt string `json:"updated_at"` // Production site AZ of the protection group containing the protected instance. PriorityStation string `json:"priority_station"` // Attachment Attachment []Attachment `json:"attachment"` // Tags list Tags []Tags `json:"tags"` // Metadata Metadata map[string]string `json:"metadata"` }
func ExtractInstances ¶ added in v0.3.1
func ExtractInstances(r pagination.Page) ([]Instance, error)
ExtractInstances interprets the results of a single page from a List() API call, producing a slice of []Instance structures.
type InstancePage ¶ added in v0.3.1
type InstancePage struct {
pagination.SinglePageBase
}
InstancePage is a struct which can do the page function
func (InstancePage) IsEmpty ¶ added in v0.3.1
func (r InstancePage) IsEmpty() (bool, error)
IsEmpty determines whether or not a InstancePage is empty.
type JobResponse ¶
type JobResponse struct {
JobID string `json:"job_id"`
}
type JobResult ¶
type JobResult struct {
golangsdk.Result
}
func Create ¶
func Create(c *golangsdk.ServiceClient, opts CreateOptsBuilder) (r JobResult)
Create will create a new Instance based on the values in CreateOpts.
func Delete ¶
func Delete(c *golangsdk.ServiceClient, id string, opts DeleteOptsBuilder) (r JobResult)
Delete will permanently delete a particular Instance based on its unique ID.
func (JobResult) ExtractJobResponse ¶
func (r JobResult) ExtractJobResponse() (*JobResponse, error)
func (JobResult) ExtractJobStatus ¶
type JobStatus ¶
type JobStatus struct { Status string `json:"status"` Entities JobEntity `json:"entities"` JobID string `json:"job_id"` JobType string `json:"job_type"` BeginTime string `json:"begin_time"` EndTime string `json:"end_time"` ErrorCode string `json:"error_code"` FailReason string `json:"fail_reason"` Message string `json:"message"` Code string `json:"code"` }
type ListOpts ¶ added in v0.3.1
type ListOpts struct { ServerGroupID string `q:"server_group_id"` ServerGroupIDs []string `q:"server_group_ids"` ProtectedInstanceIDs []string `q:"protected_instance_ids"` Limit int `q:"limit"` Offset int `q:"offset"` Status string `q:"status"` Name string `q:"name"` QueryType string `q:"query_type"` AvailabilityZone string `q:"availability_zone"` }
func (ListOpts) ToInstanceListQuery ¶ added in v0.3.1
type ListOptsBuilder ¶ added in v0.3.1
type SubJob ¶ added in v0.3.1
type SubJob struct { // Specifies the task ID. ID string `json:"job_id"` // Task type. Type string `json:"job_type"` // Specifies the task status. Status string `json:"status"` // Specifies the time when the task started. BeginTime string `json:"begin_time"` // Specifies the time when the task finished. EndTime string `json:"end_time"` // Specifies the returned error code when the task execution fails. ErrorCode string `json:"error_code"` // Specifies the cause of the task execution failure. FailReason string `json:"fail_reason"` // Specifies the object of the task. Entities map[string]string `json:"entities"` }
type UpdateOpts ¶
type UpdateOpts struct { // Instance name Name string `json:"name" required:"true"` }
UpdateOpts contains all the values needed to update an Instance.
func (UpdateOpts) ToInstanceUpdateMap ¶
func (opts UpdateOpts) ToInstanceUpdateMap() (map[string]interface{}, error)
ToInstanceUpdateMap builds a update request body from UpdateOpts.
type UpdateOptsBuilder ¶
UpdateOptsBuilder allows extensions to add additional parameters to the Update request.
type UpdateResult ¶
type UpdateResult struct {
// contains filtered or unexported fields
}
UpdateResult represents the result of a update operation. Call its Extract method to interpret it as a Instance.
func Update ¶
func Update(c *golangsdk.ServiceClient, id string, opts UpdateOptsBuilder) (r UpdateResult)
Update accepts a UpdateOpts struct and uses the values to update an Instance.The response code from api is 200