protectiongroups

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: 3 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var RequestOpts golangsdk.RequestOpts = golangsdk.RequestOpts{
	MoreHeaders: map[string]string{"Content-Type": "application/json", "X-Language": "en-us"},
}

Functions

func GetJobEntity

func GetJobEntity(client *golangsdk.ServiceClient, jobId string, label string) (interface{}, error)

func WaitForJobSuccess

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

Types

type CreateOpts

type CreateOpts struct {
	//Group Name
	Name string `json:"name" required:"true"`
	//Group Description
	Description string `json:"description,omitempty"`
	//The source AZ of a protection group
	SourceAZ string `json:"source_availability_zone" required:"true"`
	//The target AZ of a protection group
	TargetAZ string `json:"target_availability_zone" required:"true"`
	//An active-active domain
	DomainID string `json:"domain_id" required:"true"`
	//ID of the source VPC
	SourceVpcID string `json:"source_vpc_id" required:"true"`
	//Deployment model
	DrType string `json:"dr_type,omitempty"`
}

CreateOpts contains all the values needed to create a new group.

func (CreateOpts) ToGroupCreateMap

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

ToGroupCreateMap builds a create request body from CreateOpts.

type CreateOptsBuilder

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

CreateOptsBuilder allows extensions to add additional parameters to the Create request.

type DisableOpts

type DisableOpts struct {
}

DisableOpts contains all the values needed to disable protection for a Group.

func (DisableOpts) ToGroupDisableMap

func (opts DisableOpts) ToGroupDisableMap() (map[string]interface{}, error)

ToGroupDisableMap builds a create request body from DisableOpts.

type EnableOpts

type EnableOpts struct {
}

EnableOpts contains all the values needed to enable protection for a Group.

func (EnableOpts) ToGroupEnableMap

func (opts EnableOpts) ToGroupEnableMap() (map[string]interface{}, error)

ToGroupEnableMap builds a create request body from EnableOpts.

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 Group.

func Get

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

Get retrieves a particular Group based on its unique ID.

func (GetResult) Extract

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

Extract is a function that accepts a result and extracts a group.

func (GetResult) ExtractInto

func (r GetResult) ExtractInto(v interface{}) error

type Group

type Group struct {
	//Group ID
	Id string `json:"id"`
	//Group Name
	Name string `json:"name"`
	//Group Description
	Description string `json:"description"`
	//The source AZ of a protection group
	SourceAZ string `json:"source_availability_zone"`
	//The target AZ of a protection group
	TargetAZ string `json:"target_availability_zone"`
	//An active-active domain
	DomainID string `json:"domain_id"`
	//ID of the source VPC
	SourceVpcID string `json:"source_vpc_id"`
	//Deployment model
	DrType string `json:"dr_type"`
}

type JobEntity

type JobEntity struct {
	GroupID string `json:"server_group_id"`
}

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 Group based on the values in CreateOpts.

func Delete

func Delete(c *golangsdk.ServiceClient, id string) (r JobResult)

Delete will permanently delete a particular Group based on its unique ID.

func Disable

func Disable(c *golangsdk.ServiceClient, id string) (r JobResult)

Disable will disable protection for a protection Group.

func Enable

func Enable(c *golangsdk.ServiceClient, id string) (r JobResult)

Enable will enable protection for a protection Group.

func (JobResult) ExtractJobResponse

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

func (JobResult) ExtractJobStatus

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

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"`
}

type UpdateOpts

type UpdateOpts struct {
	//Group name
	Name string `json:"name" required:"true"`
}

UpdateOpts contains all the values needed to update a Group.

func (UpdateOpts) ToGroupUpdateMap

func (opts UpdateOpts) ToGroupUpdateMap() (map[string]interface{}, error)

ToGroupUpdateMap builds a update request body from UpdateOpts.

type UpdateOptsBuilder

type UpdateOptsBuilder interface {
	ToGroupUpdateMap() (map[string]interface{}, error)
}

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 Group.

func Update

func Update(c *golangsdk.ServiceClient, id string, opts UpdateOptsBuilder) (r UpdateResult)

Update accepts a UpdateOpts struct and uses the values to update a Group.The response code from api is 200

func (UpdateResult) Extract

func (r UpdateResult) Extract() (*Group, error)

Extract is a function that accepts a result and extracts a group.

func (UpdateResult) ExtractInto

func (r UpdateResult) ExtractInto(v interface{}) error

Jump to

Keyboard shortcuts

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