Skip to content
This repository was archived by the owner on Aug 31, 2021. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions openstack/autoscaling/v1/groups/requests.go
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ type CreateOpts struct {
MaxInstanceNumber int `json:"max_instance_number,omitempty"`
CoolDownTime int `json:"cool_down_time,omitempty"`
LBListenerID string `json:"lb_listener_id,omitempty"`
LBaaSListeners []LBaaSListenerOpts `json:"lbaas_listeners,omitempty"`
AvailableZones []string `json:"available_zones,omitempty"`
Networks []NetworkOpts `json:"networks" required:"ture"`
SecurityGroup []SecurityGroupOpts `json:"security_groups" required:"ture"`
Expand All @@ -38,6 +39,12 @@ type SecurityGroupOpts struct {
ID string `json:"id,omitempty"`
}

type LBaaSListenerOpts struct {
PoolID string `json:"pool_id" required:"true"`
ProtocolPort int `json:"protocol_port" required:"true"`
Weight int `json:"weight,omitempty"`
}

func (opts CreateOpts) ToGroupCreateMap() (map[string]interface{}, error) {
return golangsdk.BuildRequestBody(opts, "")
}
Expand Down Expand Up @@ -111,6 +118,7 @@ type UpdateOpts struct {
MaxInstanceNumber int `json:"max_instance_number,omitempty"`
CoolDownTime int `json:"cool_down_time,omitempty"`
LBListenerID string `json:"lb_listener_id,omitempty"`
LBaaSListeners []LBaaSListenerOpts `json:"lbaas_listeners,omitempty"`
AvailableZones []string `json:"available_zones,omitempty"`
Networks []NetworkOpts `json:"networks,omitempty"`
SecurityGroup []SecurityGroupOpts `json:"security_groups,omitempty"`
Expand Down
9 changes: 8 additions & 1 deletion openstack/autoscaling/v1/groups/results.go
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ type Group struct {
MaxInstanceNumber int `json:"max_instance_number"`
CoolDownTime int `json:"cool_down_time"`
LBListenerID string `json:"lb_listener_id"`
LBaaSListeners []interface{} `json:"lbaas_listeners"`
LBaaSListeners []LBaaSListener `json:"lbaas_listeners"`
AvailableZones []string `json:"available_zones"`
Networks []Network `json:"networks"`
SecurityGroups []SecurityGroup `json:"security_groups"`
Expand All @@ -73,6 +73,13 @@ type SecurityGroup struct {
ID string `json:"id"`
}

type LBaaSListener struct {
ListenerID string `json:"listener_id"`
PoolID string `json:"pool_id"`
ProtocolPort int `json:"protocol_port"`
Weight int `json:"weight"`
}

type GroupPage struct {
pagination.SinglePageBase
}
Expand Down