policies

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

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Action

type Action struct {
	Operation   string `json:"operation"`
	InstanceNum int    `json:"instance_number"`
}

type ActionOpts

type ActionOpts struct {
	Operation   string `json:"operation,omitempty"`
	InstanceNum int    `json:"instance_number,omitempty"`
}

type CreateOpts

type CreateOpts struct {
	Name           string             `json:"scaling_policy_name" required:"true"`
	ID             string             `json:"scaling_group_id" required:"true"`
	Type           string             `json:"scaling_policy_type" required:"true"`
	AlarmID        string             `json:"alarm_id,omitempty"`
	SchedulePolicy SchedulePolicyOpts `json:"scheduled_policy,omitempty"`
	Action         ActionOpts         `json:"scaling_policy_action,omitempty"`
	CoolDownTime   int                `json:"cool_down_time,omitempty"`
}

CreateOpts is a struct which will be used to create a policy

func (CreateOpts) ToPolicyCreateMap

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

type CreateOptsBuilder

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

CreateOptsBuilder is an interface by which can serialize the create parameters

type CreateResult

type CreateResult struct {
	golangsdk.Result
}

Create Result is a struct which represents the create result of policy

func Create

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

Create is a method which can be able to access to create the policy of autoscaling service.

func (CreateResult) Extract

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

Extract of CreateResult will deserialize the result of Creation

type DeleteResult

type DeleteResult struct {
	golangsdk.ErrResult
}

DeleteResult is a struct which represents the delete result.

func Delete

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

Delete is a method which can be able to access to delete a policy of autoscaling

type GetResult

type GetResult struct {
	golangsdk.Result
}

GetResult is a struct which represents the get result

func Get

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

Get is a method which can be able to access to get a policy detailed information

func (GetResult) Extract

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

type Policy

type Policy struct {
	ID             string         `json:"scaling_group_id"`
	Name           string         `json:"scaling_policy_name"`
	Status         string         `json:"policy_status"`
	Type           string         `json:"scaling_policy_type"`
	AlarmID        string         `json:"alarm_id"`
	SchedulePolicy SchedulePolicy `json:"scheduled_policy"`
	Action         Action         `json:"scaling_policy_action"`
	CoolDownTime   int            `json:"cool_down_time"`
	CreateTime     string         `json:"create_time"`
}

Policy is a struct that represents the result of get policy

type SchedulePolicy

type SchedulePolicy struct {
	LaunchTime      string `json:"launch_time"`
	RecurrenceType  string `json:"recurrence_type"`
	RecurrenceValue string `json:"recurrence_value"`
	StartTime       string `json:"start_time"`
	EndTime         string `json:"end_time"`
}

type SchedulePolicyOpts

type SchedulePolicyOpts struct {
	LaunchTime      string `json:"launch_time" required:"true"`
	RecurrenceType  string `json:"recurrence_type,omitempty"`
	RecurrenceValue string `json:"recurrence_value,omitempty"`
	StartTime       string `json:"start_time,omitempty"`
	EndTime         string `json:"end_time,omitempty"`
}

type UpdateOpts

type UpdateOpts struct {
	Name           string             `json:"scaling_policy_name,omitempty"`
	Type           string             `json:"scaling_policy_type,omitempty"`
	AlarmID        string             `json:"alarm_id,omitempty"`
	SchedulePolicy SchedulePolicyOpts `json:"scheduled_policy,omitempty"`
	Action         ActionOpts         `json:"scaling_policy_action,omitempty"`
	CoolDownTime   int                `json:"cool_down_time,omitempty"`
}

UpdateOpts is a struct which represents the parameters of update function

func (UpdateOpts) ToPolicyUpdateMap

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

type UpdateOptsBuilder

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

UpdateOptsBuilder is an interface which can build the map paramter of update function

type UpdateResult

type UpdateResult struct {
	golangsdk.Result
}

UpdateResult is a struct from which can get the result of udpate 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 policy via accessing to the autoscaling service with Put method and parameters

func (UpdateResult) Extract

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

Extract will deserialize the result to group id with string

Jump to

Keyboard shortcuts

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