diff --git a/CHANGELOG.md b/CHANGELOG.md index a10b2dc55f..e291edb6d7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,8 @@ - **Breaking Change:** Renamed `GetInstanceResponse` to `InstanceResponse`. This affects the return type of the `GetInstance` method. - `mongodbflex`: [v1.4.0](services/mongodbflex/CHANGELOG.md#v140) - **Breaking Change:** The region is no longer specified within the client configuration. Instead, the region must be passed as a parameter to any region-specific request. +- `loadbalancer`: [v1.5.0](services/loadbalancer/CHANGELOG.md#v150) + - **Feature:** Add new `LoadBalancerSecurityGroup` field to `CreateLoadBalancerPayload`, `LoadBalancer`, and `UpdateLoadBalancerPayload` models ## Release (2025-07-07) diff --git a/services/loadbalancer/CHANGELOG.md b/services/loadbalancer/CHANGELOG.md index 4d45c48e97..798f015a1b 100644 --- a/services/loadbalancer/CHANGELOG.md +++ b/services/loadbalancer/CHANGELOG.md @@ -1,3 +1,6 @@ +## v1.5.0 +- **Feature:** Add new `LoadBalancerSecurityGroup` field to `CreateLoadBalancerPayload`, `LoadBalancer`, and `UpdateLoadBalancerPayload` models + ## v1.4.0 (2025-06-12) - **Feature:** Add new field `DisableTargetSecurityGroupAssignment` in `LoadBalancer` Model diff --git a/services/loadbalancer/VERSION b/services/loadbalancer/VERSION index ec7b967829..76864c1c20 100644 --- a/services/loadbalancer/VERSION +++ b/services/loadbalancer/VERSION @@ -1 +1 @@ -v1.4.0 \ No newline at end of file +v1.5.0 \ No newline at end of file diff --git a/services/loadbalancer/model_create_load_balancer_payload.go b/services/loadbalancer/model_create_load_balancer_payload.go index f1fc77cfef..11ddb91d46 100644 --- a/services/loadbalancer/model_create_load_balancer_payload.go +++ b/services/loadbalancer/model_create_load_balancer_payload.go @@ -99,6 +99,26 @@ func setCreateLoadBalancerPayloadGetListenersAttributeType(arg *CreateLoadBalanc *arg = &val } +/* + types and functions for loadBalancerSecurityGroup +*/ + +// isModel +type CreateLoadBalancerPayloadGetLoadBalancerSecurityGroupAttributeType = *CreateLoadBalancerPayloadLoadBalancerSecurityGroup +type CreateLoadBalancerPayloadGetLoadBalancerSecurityGroupArgType = CreateLoadBalancerPayloadLoadBalancerSecurityGroup +type CreateLoadBalancerPayloadGetLoadBalancerSecurityGroupRetType = CreateLoadBalancerPayloadLoadBalancerSecurityGroup + +func getCreateLoadBalancerPayloadGetLoadBalancerSecurityGroupAttributeTypeOk(arg CreateLoadBalancerPayloadGetLoadBalancerSecurityGroupAttributeType) (ret CreateLoadBalancerPayloadGetLoadBalancerSecurityGroupRetType, ok bool) { + if arg == nil { + return ret, false + } + return *arg, true +} + +func setCreateLoadBalancerPayloadGetLoadBalancerSecurityGroupAttributeType(arg *CreateLoadBalancerPayloadGetLoadBalancerSecurityGroupAttributeType, val CreateLoadBalancerPayloadGetLoadBalancerSecurityGroupRetType) { + *arg = &val +} + /* types and functions for name */ @@ -423,7 +443,8 @@ type CreateLoadBalancerPayload struct { // External load balancer IP address where this load balancer is exposed. Not changeable after creation. ExternalAddress CreateLoadBalancerPayloadGetExternalAddressAttributeType `json:"externalAddress,omitempty"` // There is a maximum listener count of 20. Port and protocol limitations: - UDP listeners cannot have the same port. - TCP-derived listeners cannot have the same port. A TCP-derived listener is any listener that listens on a TCP port. As of now those are: TCP, TCP_PROXY, and PROTOCOL_TLS_PASSTHROUGH. The only exception is, if all listeners for the same port are PROTOCOL_TLS_PASSTHROUGH. - PROTOCOL_TLS_PASSTHROUGH listeners cannot have the same port and at least one common domain name. - PROTOCOL_TLS_PASSTHROUGH listeners can have the same domain name and different ports though (e.g. ports 443 and 8443 for domain example.com). - PROTOCOL_TLS_PASSTHROUGH listeners without a domain name serve as a default listener and you can have only one default listener. - Listeners CreateLoadBalancerPayloadGetListenersAttributeType `json:"listeners,omitempty"` + Listeners CreateLoadBalancerPayloadGetListenersAttributeType `json:"listeners,omitempty"` + LoadBalancerSecurityGroup CreateLoadBalancerPayloadGetLoadBalancerSecurityGroupAttributeType `json:"loadBalancerSecurityGroup,omitempty"` // Load balancer name. Not changeable after creation. Name CreateLoadBalancerPayloadGetNameAttributeType `json:"name,omitempty"` // List of networks that listeners and targets reside in. Currently limited to one. Not changeable after creation. @@ -552,6 +573,29 @@ func (o *CreateLoadBalancerPayload) SetListeners(v CreateLoadBalancerPayloadGetL setCreateLoadBalancerPayloadGetListenersAttributeType(&o.Listeners, v) } +// GetLoadBalancerSecurityGroup returns the LoadBalancerSecurityGroup field value if set, zero value otherwise. +func (o *CreateLoadBalancerPayload) GetLoadBalancerSecurityGroup() (res CreateLoadBalancerPayloadGetLoadBalancerSecurityGroupRetType) { + res, _ = o.GetLoadBalancerSecurityGroupOk() + return +} + +// GetLoadBalancerSecurityGroupOk returns a tuple with the LoadBalancerSecurityGroup field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *CreateLoadBalancerPayload) GetLoadBalancerSecurityGroupOk() (ret CreateLoadBalancerPayloadGetLoadBalancerSecurityGroupRetType, ok bool) { + return getCreateLoadBalancerPayloadGetLoadBalancerSecurityGroupAttributeTypeOk(o.LoadBalancerSecurityGroup) +} + +// HasLoadBalancerSecurityGroup returns a boolean if a field has been set. +func (o *CreateLoadBalancerPayload) HasLoadBalancerSecurityGroup() bool { + _, ok := o.GetLoadBalancerSecurityGroupOk() + return ok +} + +// SetLoadBalancerSecurityGroup gets a reference to the given CreateLoadBalancerPayloadLoadBalancerSecurityGroup and assigns it to the LoadBalancerSecurityGroup field. +func (o *CreateLoadBalancerPayload) SetLoadBalancerSecurityGroup(v CreateLoadBalancerPayloadGetLoadBalancerSecurityGroupRetType) { + setCreateLoadBalancerPayloadGetLoadBalancerSecurityGroupAttributeType(&o.LoadBalancerSecurityGroup, v) +} + // GetName returns the Name field value if set, zero value otherwise. func (o *CreateLoadBalancerPayload) GetName() (res CreateLoadBalancerPayloadGetNameRetType) { res, _ = o.GetNameOk() @@ -796,6 +840,9 @@ func (o CreateLoadBalancerPayload) ToMap() (map[string]interface{}, error) { if val, ok := getCreateLoadBalancerPayloadGetListenersAttributeTypeOk(o.Listeners); ok { toSerialize["Listeners"] = val } + if val, ok := getCreateLoadBalancerPayloadGetLoadBalancerSecurityGroupAttributeTypeOk(o.LoadBalancerSecurityGroup); ok { + toSerialize["LoadBalancerSecurityGroup"] = val + } if val, ok := getCreateLoadBalancerPayloadGetNameAttributeTypeOk(o.Name); ok { toSerialize["Name"] = val } diff --git a/services/loadbalancer/model_create_load_balancer_payload_load_balancer_security_group.go b/services/loadbalancer/model_create_load_balancer_payload_load_balancer_security_group.go new file mode 100644 index 0000000000..dc2c813897 --- /dev/null +++ b/services/loadbalancer/model_create_load_balancer_payload_load_balancer_security_group.go @@ -0,0 +1,178 @@ +/* +Load Balancer API + +This API offers an interface to provision and manage load balancing servers in your STACKIT project. It also has the possibility of pooling target servers for load balancing purposes. For each load balancer provided, two VMs are deployed in your OpenStack project subject to a fee. + +API version: 2.0.0 +*/ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package loadbalancer + +import ( + "encoding/json" +) + +// checks if the CreateLoadBalancerPayloadLoadBalancerSecurityGroup type satisfies the MappedNullable interface at compile time +var _ MappedNullable = &CreateLoadBalancerPayloadLoadBalancerSecurityGroup{} + +/* + types and functions for id +*/ + +// isNotNullableString +type CreateLoadBalancerPayloadLoadBalancerSecurityGroupGetIdAttributeType = *string + +func getCreateLoadBalancerPayloadLoadBalancerSecurityGroupGetIdAttributeTypeOk(arg CreateLoadBalancerPayloadLoadBalancerSecurityGroupGetIdAttributeType) (ret CreateLoadBalancerPayloadLoadBalancerSecurityGroupGetIdRetType, ok bool) { + if arg == nil { + return ret, false + } + return *arg, true +} + +func setCreateLoadBalancerPayloadLoadBalancerSecurityGroupGetIdAttributeType(arg *CreateLoadBalancerPayloadLoadBalancerSecurityGroupGetIdAttributeType, val CreateLoadBalancerPayloadLoadBalancerSecurityGroupGetIdRetType) { + *arg = &val +} + +type CreateLoadBalancerPayloadLoadBalancerSecurityGroupGetIdArgType = string +type CreateLoadBalancerPayloadLoadBalancerSecurityGroupGetIdRetType = string + +/* + types and functions for name +*/ + +// isNotNullableString +type CreateLoadBalancerPayloadLoadBalancerSecurityGroupGetNameAttributeType = *string + +func getCreateLoadBalancerPayloadLoadBalancerSecurityGroupGetNameAttributeTypeOk(arg CreateLoadBalancerPayloadLoadBalancerSecurityGroupGetNameAttributeType) (ret CreateLoadBalancerPayloadLoadBalancerSecurityGroupGetNameRetType, ok bool) { + if arg == nil { + return ret, false + } + return *arg, true +} + +func setCreateLoadBalancerPayloadLoadBalancerSecurityGroupGetNameAttributeType(arg *CreateLoadBalancerPayloadLoadBalancerSecurityGroupGetNameAttributeType, val CreateLoadBalancerPayloadLoadBalancerSecurityGroupGetNameRetType) { + *arg = &val +} + +type CreateLoadBalancerPayloadLoadBalancerSecurityGroupGetNameArgType = string +type CreateLoadBalancerPayloadLoadBalancerSecurityGroupGetNameRetType = string + +// CreateLoadBalancerPayloadLoadBalancerSecurityGroup Security Group permitting network traffic from the LoadBalancer to the targets. Useful when disableTargetSecurityGroupAssignment=true to manually assign target security groups to targets. +type CreateLoadBalancerPayloadLoadBalancerSecurityGroup struct { + // ID of the security Group + Id CreateLoadBalancerPayloadLoadBalancerSecurityGroupGetIdAttributeType `json:"id,omitempty"` + // Name of the security Group + Name CreateLoadBalancerPayloadLoadBalancerSecurityGroupGetNameAttributeType `json:"name,omitempty"` +} + +// NewCreateLoadBalancerPayloadLoadBalancerSecurityGroup instantiates a new CreateLoadBalancerPayloadLoadBalancerSecurityGroup object +// This constructor will assign default values to properties that have it defined, +// and makes sure properties required by API are set, but the set of arguments +// will change when the set of required properties is changed +func NewCreateLoadBalancerPayloadLoadBalancerSecurityGroup() *CreateLoadBalancerPayloadLoadBalancerSecurityGroup { + this := CreateLoadBalancerPayloadLoadBalancerSecurityGroup{} + return &this +} + +// NewCreateLoadBalancerPayloadLoadBalancerSecurityGroupWithDefaults instantiates a new CreateLoadBalancerPayloadLoadBalancerSecurityGroup object +// This constructor will only assign default values to properties that have it defined, +// but it doesn't guarantee that properties required by API are set +func NewCreateLoadBalancerPayloadLoadBalancerSecurityGroupWithDefaults() *CreateLoadBalancerPayloadLoadBalancerSecurityGroup { + this := CreateLoadBalancerPayloadLoadBalancerSecurityGroup{} + return &this +} + +// GetId returns the Id field value if set, zero value otherwise. +func (o *CreateLoadBalancerPayloadLoadBalancerSecurityGroup) GetId() (res CreateLoadBalancerPayloadLoadBalancerSecurityGroupGetIdRetType) { + res, _ = o.GetIdOk() + return +} + +// GetIdOk returns a tuple with the Id field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *CreateLoadBalancerPayloadLoadBalancerSecurityGroup) GetIdOk() (ret CreateLoadBalancerPayloadLoadBalancerSecurityGroupGetIdRetType, ok bool) { + return getCreateLoadBalancerPayloadLoadBalancerSecurityGroupGetIdAttributeTypeOk(o.Id) +} + +// HasId returns a boolean if a field has been set. +func (o *CreateLoadBalancerPayloadLoadBalancerSecurityGroup) HasId() bool { + _, ok := o.GetIdOk() + return ok +} + +// SetId gets a reference to the given string and assigns it to the Id field. +func (o *CreateLoadBalancerPayloadLoadBalancerSecurityGroup) SetId(v CreateLoadBalancerPayloadLoadBalancerSecurityGroupGetIdRetType) { + setCreateLoadBalancerPayloadLoadBalancerSecurityGroupGetIdAttributeType(&o.Id, v) +} + +// GetName returns the Name field value if set, zero value otherwise. +func (o *CreateLoadBalancerPayloadLoadBalancerSecurityGroup) GetName() (res CreateLoadBalancerPayloadLoadBalancerSecurityGroupGetNameRetType) { + res, _ = o.GetNameOk() + return +} + +// GetNameOk returns a tuple with the Name field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *CreateLoadBalancerPayloadLoadBalancerSecurityGroup) GetNameOk() (ret CreateLoadBalancerPayloadLoadBalancerSecurityGroupGetNameRetType, ok bool) { + return getCreateLoadBalancerPayloadLoadBalancerSecurityGroupGetNameAttributeTypeOk(o.Name) +} + +// HasName returns a boolean if a field has been set. +func (o *CreateLoadBalancerPayloadLoadBalancerSecurityGroup) HasName() bool { + _, ok := o.GetNameOk() + return ok +} + +// SetName gets a reference to the given string and assigns it to the Name field. +func (o *CreateLoadBalancerPayloadLoadBalancerSecurityGroup) SetName(v CreateLoadBalancerPayloadLoadBalancerSecurityGroupGetNameRetType) { + setCreateLoadBalancerPayloadLoadBalancerSecurityGroupGetNameAttributeType(&o.Name, v) +} + +func (o CreateLoadBalancerPayloadLoadBalancerSecurityGroup) ToMap() (map[string]interface{}, error) { + toSerialize := map[string]interface{}{} + if val, ok := getCreateLoadBalancerPayloadLoadBalancerSecurityGroupGetIdAttributeTypeOk(o.Id); ok { + toSerialize["Id"] = val + } + if val, ok := getCreateLoadBalancerPayloadLoadBalancerSecurityGroupGetNameAttributeTypeOk(o.Name); ok { + toSerialize["Name"] = val + } + return toSerialize, nil +} + +type NullableCreateLoadBalancerPayloadLoadBalancerSecurityGroup struct { + value *CreateLoadBalancerPayloadLoadBalancerSecurityGroup + isSet bool +} + +func (v NullableCreateLoadBalancerPayloadLoadBalancerSecurityGroup) Get() *CreateLoadBalancerPayloadLoadBalancerSecurityGroup { + return v.value +} + +func (v *NullableCreateLoadBalancerPayloadLoadBalancerSecurityGroup) Set(val *CreateLoadBalancerPayloadLoadBalancerSecurityGroup) { + v.value = val + v.isSet = true +} + +func (v NullableCreateLoadBalancerPayloadLoadBalancerSecurityGroup) IsSet() bool { + return v.isSet +} + +func (v *NullableCreateLoadBalancerPayloadLoadBalancerSecurityGroup) Unset() { + v.value = nil + v.isSet = false +} + +func NewNullableCreateLoadBalancerPayloadLoadBalancerSecurityGroup(val *CreateLoadBalancerPayloadLoadBalancerSecurityGroup) *NullableCreateLoadBalancerPayloadLoadBalancerSecurityGroup { + return &NullableCreateLoadBalancerPayloadLoadBalancerSecurityGroup{value: val, isSet: true} +} + +func (v NullableCreateLoadBalancerPayloadLoadBalancerSecurityGroup) MarshalJSON() ([]byte, error) { + return json.Marshal(v.value) +} + +func (v *NullableCreateLoadBalancerPayloadLoadBalancerSecurityGroup) UnmarshalJSON(src []byte) error { + v.isSet = true + return json.Unmarshal(src, &v.value) +} diff --git a/services/loadbalancer/model_create_load_balancer_payload_load_balancer_security_group_test.go b/services/loadbalancer/model_create_load_balancer_payload_load_balancer_security_group_test.go new file mode 100644 index 0000000000..681adf7afe --- /dev/null +++ b/services/loadbalancer/model_create_load_balancer_payload_load_balancer_security_group_test.go @@ -0,0 +1,11 @@ +/* +Load Balancer API + +This API offers an interface to provision and manage load balancing servers in your STACKIT project. It also has the possibility of pooling target servers for load balancing purposes. For each load balancer provided, two VMs are deployed in your OpenStack project subject to a fee. + +API version: 2.0.0 +*/ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package loadbalancer diff --git a/services/loadbalancer/model_create_load_balancer_payload_target_security_group.go b/services/loadbalancer/model_create_load_balancer_payload_target_security_group.go index ecdc9a726f..85d3547472 100644 --- a/services/loadbalancer/model_create_load_balancer_payload_target_security_group.go +++ b/services/loadbalancer/model_create_load_balancer_payload_target_security_group.go @@ -59,7 +59,7 @@ func setCreateLoadBalancerPayloadTargetSecurityGroupGetNameAttributeType(arg *Cr type CreateLoadBalancerPayloadTargetSecurityGroupGetNameArgType = string type CreateLoadBalancerPayloadTargetSecurityGroupGetNameRetType = string -// CreateLoadBalancerPayloadTargetSecurityGroup Security Group permitting network traffic from the LoadBalancer to the targets. Useful when disableTargetSecurityGroupAssignment=true to manually assign target security groups to targets. +// CreateLoadBalancerPayloadTargetSecurityGroup Security Group that allows the targets to receive traffic from the LoadBalancer. Useful when disableTargetSecurityGroupAssignment=true to manually assign target security groups to targets. type CreateLoadBalancerPayloadTargetSecurityGroup struct { // ID of the security Group Id CreateLoadBalancerPayloadTargetSecurityGroupGetIdAttributeType `json:"id,omitempty"` diff --git a/services/loadbalancer/model_load_balancer.go b/services/loadbalancer/model_load_balancer.go index 818e72c409..7c3436ce20 100644 --- a/services/loadbalancer/model_load_balancer.go +++ b/services/loadbalancer/model_load_balancer.go @@ -99,6 +99,26 @@ func setLoadBalancerGetListenersAttributeType(arg *LoadBalancerGetListenersAttri *arg = &val } +/* + types and functions for loadBalancerSecurityGroup +*/ + +// isModel +type LoadBalancerGetLoadBalancerSecurityGroupAttributeType = *CreateLoadBalancerPayloadLoadBalancerSecurityGroup +type LoadBalancerGetLoadBalancerSecurityGroupArgType = CreateLoadBalancerPayloadLoadBalancerSecurityGroup +type LoadBalancerGetLoadBalancerSecurityGroupRetType = CreateLoadBalancerPayloadLoadBalancerSecurityGroup + +func getLoadBalancerGetLoadBalancerSecurityGroupAttributeTypeOk(arg LoadBalancerGetLoadBalancerSecurityGroupAttributeType) (ret LoadBalancerGetLoadBalancerSecurityGroupRetType, ok bool) { + if arg == nil { + return ret, false + } + return *arg, true +} + +func setLoadBalancerGetLoadBalancerSecurityGroupAttributeType(arg *LoadBalancerGetLoadBalancerSecurityGroupAttributeType, val LoadBalancerGetLoadBalancerSecurityGroupRetType) { + *arg = &val +} + /* types and functions for name */ @@ -423,7 +443,8 @@ type LoadBalancer struct { // External load balancer IP address where this load balancer is exposed. Not changeable after creation. ExternalAddress LoadBalancerGetExternalAddressAttributeType `json:"externalAddress,omitempty"` // There is a maximum listener count of 20. Port and protocol limitations: - UDP listeners cannot have the same port. - TCP-derived listeners cannot have the same port. A TCP-derived listener is any listener that listens on a TCP port. As of now those are: TCP, TCP_PROXY, and PROTOCOL_TLS_PASSTHROUGH. The only exception is, if all listeners for the same port are PROTOCOL_TLS_PASSTHROUGH. - PROTOCOL_TLS_PASSTHROUGH listeners cannot have the same port and at least one common domain name. - PROTOCOL_TLS_PASSTHROUGH listeners can have the same domain name and different ports though (e.g. ports 443 and 8443 for domain example.com). - PROTOCOL_TLS_PASSTHROUGH listeners without a domain name serve as a default listener and you can have only one default listener. - Listeners LoadBalancerGetListenersAttributeType `json:"listeners,omitempty"` + Listeners LoadBalancerGetListenersAttributeType `json:"listeners,omitempty"` + LoadBalancerSecurityGroup LoadBalancerGetLoadBalancerSecurityGroupAttributeType `json:"loadBalancerSecurityGroup,omitempty"` // Load balancer name. Not changeable after creation. Name LoadBalancerGetNameAttributeType `json:"name,omitempty"` // List of networks that listeners and targets reside in. Currently limited to one. Not changeable after creation. @@ -552,6 +573,29 @@ func (o *LoadBalancer) SetListeners(v LoadBalancerGetListenersRetType) { setLoadBalancerGetListenersAttributeType(&o.Listeners, v) } +// GetLoadBalancerSecurityGroup returns the LoadBalancerSecurityGroup field value if set, zero value otherwise. +func (o *LoadBalancer) GetLoadBalancerSecurityGroup() (res LoadBalancerGetLoadBalancerSecurityGroupRetType) { + res, _ = o.GetLoadBalancerSecurityGroupOk() + return +} + +// GetLoadBalancerSecurityGroupOk returns a tuple with the LoadBalancerSecurityGroup field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *LoadBalancer) GetLoadBalancerSecurityGroupOk() (ret LoadBalancerGetLoadBalancerSecurityGroupRetType, ok bool) { + return getLoadBalancerGetLoadBalancerSecurityGroupAttributeTypeOk(o.LoadBalancerSecurityGroup) +} + +// HasLoadBalancerSecurityGroup returns a boolean if a field has been set. +func (o *LoadBalancer) HasLoadBalancerSecurityGroup() bool { + _, ok := o.GetLoadBalancerSecurityGroupOk() + return ok +} + +// SetLoadBalancerSecurityGroup gets a reference to the given CreateLoadBalancerPayloadLoadBalancerSecurityGroup and assigns it to the LoadBalancerSecurityGroup field. +func (o *LoadBalancer) SetLoadBalancerSecurityGroup(v LoadBalancerGetLoadBalancerSecurityGroupRetType) { + setLoadBalancerGetLoadBalancerSecurityGroupAttributeType(&o.LoadBalancerSecurityGroup, v) +} + // GetName returns the Name field value if set, zero value otherwise. func (o *LoadBalancer) GetName() (res LoadBalancerGetNameRetType) { res, _ = o.GetNameOk() @@ -796,6 +840,9 @@ func (o LoadBalancer) ToMap() (map[string]interface{}, error) { if val, ok := getLoadBalancerGetListenersAttributeTypeOk(o.Listeners); ok { toSerialize["Listeners"] = val } + if val, ok := getLoadBalancerGetLoadBalancerSecurityGroupAttributeTypeOk(o.LoadBalancerSecurityGroup); ok { + toSerialize["LoadBalancerSecurityGroup"] = val + } if val, ok := getLoadBalancerGetNameAttributeTypeOk(o.Name); ok { toSerialize["Name"] = val } diff --git a/services/loadbalancer/model_update_load_balancer_payload.go b/services/loadbalancer/model_update_load_balancer_payload.go index af566e086a..d2f9895206 100644 --- a/services/loadbalancer/model_update_load_balancer_payload.go +++ b/services/loadbalancer/model_update_load_balancer_payload.go @@ -99,6 +99,26 @@ func setUpdateLoadBalancerPayloadGetListenersAttributeType(arg *UpdateLoadBalanc *arg = &val } +/* + types and functions for loadBalancerSecurityGroup +*/ + +// isModel +type UpdateLoadBalancerPayloadGetLoadBalancerSecurityGroupAttributeType = *CreateLoadBalancerPayloadLoadBalancerSecurityGroup +type UpdateLoadBalancerPayloadGetLoadBalancerSecurityGroupArgType = CreateLoadBalancerPayloadLoadBalancerSecurityGroup +type UpdateLoadBalancerPayloadGetLoadBalancerSecurityGroupRetType = CreateLoadBalancerPayloadLoadBalancerSecurityGroup + +func getUpdateLoadBalancerPayloadGetLoadBalancerSecurityGroupAttributeTypeOk(arg UpdateLoadBalancerPayloadGetLoadBalancerSecurityGroupAttributeType) (ret UpdateLoadBalancerPayloadGetLoadBalancerSecurityGroupRetType, ok bool) { + if arg == nil { + return ret, false + } + return *arg, true +} + +func setUpdateLoadBalancerPayloadGetLoadBalancerSecurityGroupAttributeType(arg *UpdateLoadBalancerPayloadGetLoadBalancerSecurityGroupAttributeType, val UpdateLoadBalancerPayloadGetLoadBalancerSecurityGroupRetType) { + *arg = &val +} + /* types and functions for name */ @@ -423,7 +443,8 @@ type UpdateLoadBalancerPayload struct { // External load balancer IP address where this load balancer is exposed. Not changeable after creation. ExternalAddress UpdateLoadBalancerPayloadGetExternalAddressAttributeType `json:"externalAddress,omitempty"` // There is a maximum listener count of 20. Port and protocol limitations: - UDP listeners cannot have the same port. - TCP-derived listeners cannot have the same port. A TCP-derived listener is any listener that listens on a TCP port. As of now those are: TCP, TCP_PROXY, and PROTOCOL_TLS_PASSTHROUGH. The only exception is, if all listeners for the same port are PROTOCOL_TLS_PASSTHROUGH. - PROTOCOL_TLS_PASSTHROUGH listeners cannot have the same port and at least one common domain name. - PROTOCOL_TLS_PASSTHROUGH listeners can have the same domain name and different ports though (e.g. ports 443 and 8443 for domain example.com). - PROTOCOL_TLS_PASSTHROUGH listeners without a domain name serve as a default listener and you can have only one default listener. - Listeners UpdateLoadBalancerPayloadGetListenersAttributeType `json:"listeners,omitempty"` + Listeners UpdateLoadBalancerPayloadGetListenersAttributeType `json:"listeners,omitempty"` + LoadBalancerSecurityGroup UpdateLoadBalancerPayloadGetLoadBalancerSecurityGroupAttributeType `json:"loadBalancerSecurityGroup,omitempty"` // Load balancer name. Not changeable after creation. Name UpdateLoadBalancerPayloadGetNameAttributeType `json:"name,omitempty"` // List of networks that listeners and targets reside in. Currently limited to one. Not changeable after creation. @@ -552,6 +573,29 @@ func (o *UpdateLoadBalancerPayload) SetListeners(v UpdateLoadBalancerPayloadGetL setUpdateLoadBalancerPayloadGetListenersAttributeType(&o.Listeners, v) } +// GetLoadBalancerSecurityGroup returns the LoadBalancerSecurityGroup field value if set, zero value otherwise. +func (o *UpdateLoadBalancerPayload) GetLoadBalancerSecurityGroup() (res UpdateLoadBalancerPayloadGetLoadBalancerSecurityGroupRetType) { + res, _ = o.GetLoadBalancerSecurityGroupOk() + return +} + +// GetLoadBalancerSecurityGroupOk returns a tuple with the LoadBalancerSecurityGroup field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *UpdateLoadBalancerPayload) GetLoadBalancerSecurityGroupOk() (ret UpdateLoadBalancerPayloadGetLoadBalancerSecurityGroupRetType, ok bool) { + return getUpdateLoadBalancerPayloadGetLoadBalancerSecurityGroupAttributeTypeOk(o.LoadBalancerSecurityGroup) +} + +// HasLoadBalancerSecurityGroup returns a boolean if a field has been set. +func (o *UpdateLoadBalancerPayload) HasLoadBalancerSecurityGroup() bool { + _, ok := o.GetLoadBalancerSecurityGroupOk() + return ok +} + +// SetLoadBalancerSecurityGroup gets a reference to the given CreateLoadBalancerPayloadLoadBalancerSecurityGroup and assigns it to the LoadBalancerSecurityGroup field. +func (o *UpdateLoadBalancerPayload) SetLoadBalancerSecurityGroup(v UpdateLoadBalancerPayloadGetLoadBalancerSecurityGroupRetType) { + setUpdateLoadBalancerPayloadGetLoadBalancerSecurityGroupAttributeType(&o.LoadBalancerSecurityGroup, v) +} + // GetName returns the Name field value if set, zero value otherwise. func (o *UpdateLoadBalancerPayload) GetName() (res UpdateLoadBalancerPayloadGetNameRetType) { res, _ = o.GetNameOk() @@ -796,6 +840,9 @@ func (o UpdateLoadBalancerPayload) ToMap() (map[string]interface{}, error) { if val, ok := getUpdateLoadBalancerPayloadGetListenersAttributeTypeOk(o.Listeners); ok { toSerialize["Listeners"] = val } + if val, ok := getUpdateLoadBalancerPayloadGetLoadBalancerSecurityGroupAttributeTypeOk(o.LoadBalancerSecurityGroup); ok { + toSerialize["LoadBalancerSecurityGroup"] = val + } if val, ok := getUpdateLoadBalancerPayloadGetNameAttributeTypeOk(o.Name); ok { toSerialize["Name"] = val }