diff --git a/openstack/elb/v3/loadbalancers/requests.go b/openstack/elb/v3/loadbalancers/requests.go index e3b7fc81..fb38e666 100644 --- a/openstack/elb/v3/loadbalancers/requests.go +++ b/openstack/elb/v3/loadbalancers/requests.go @@ -54,13 +54,13 @@ type CreateOpts struct { L7Flavor string `json:"l7_flavor_id,omitempty"` // IPv6 Bandwidth. - IPV6Bandwidth BandwidthRef `json:"ipv6_bandwidth,omitempty"` + IPV6Bandwidth *BandwidthRef `json:"ipv6_bandwidth,omitempty"` // Public IP IDs. PublicIPIds []string `json:"publicip_ids,omitempty"` // Public IP. - PublicIP PublicIP `json:"publicip,omitempty"` + PublicIP *PublicIP `json:"publicip,omitempty"` // ELB VirSubnet IDs. ElbSubnetIds []string `json:"elb_virsubnet_ids,omitempty"` @@ -78,6 +78,12 @@ type BandwidthRef struct { ID string `json:"id" required:"true"` } +// UBandwidthRef +type UBandwidthRef struct { + // Share Bandwidth ID + ID *string `json:"id"` +} + // PublicIP type PublicIP struct { // IP Version. @@ -170,10 +176,10 @@ type UpdateOpts struct { VipAddress string `json:"vip_address,omitempty"` // The network on which to allocate the Loadbalancer's address. - VipSubnetID string `json:"vip_subnet_cidr_id,omitempty"` + VipSubnetID *string `json:"vip_subnet_cidr_id"` // The V6 network on which to allocate the Loadbalancer's address. - IpV6VipSubnetID string `json:"ipv6_vip_virsubnet_id,omitempty"` + IpV6VipSubnetID *string `json:"ipv6_vip_virsubnet_id"` // The UUID of a l4 flavor. L4Flavor string `json:"l4_flavor_id,omitempty"` @@ -182,7 +188,7 @@ type UpdateOpts struct { L7Flavor string `json:"l7_flavor_id,omitempty"` // IPv6 Bandwidth. - IPV6Bandwidth BandwidthRef `json:"ipv6_bandwidth,omitempty"` + IPV6Bandwidth *UBandwidthRef `json:"ipv6_bandwidth,omitempty"` // ELB VirSubnet IDs. ElbSubnetIds []string `json:"elb_virsubnet_ids,omitempty"` diff --git a/openstack/elb/v3/loadbalancers/results.go b/openstack/elb/v3/loadbalancers/results.go index bb9c3322..18410f87 100644 --- a/openstack/elb/v3/loadbalancers/results.go +++ b/openstack/elb/v3/loadbalancers/results.go @@ -120,6 +120,8 @@ type EipInfo struct { EipID string `json:"eip_id"` // Eip Address EipAddress string `json:"eip_address"` + // Eip Address + IpVersion int `json:"ip_version"` } // PoolRef @@ -139,7 +141,7 @@ type PublicIpInfo struct { // Public IP Address PublicIpAddress string `json:"publicip_address"` // IP Version - IpVersion string `json:"ip_version"` + IpVersion int `json:"ip_version"` } // StatusTree represents the status of a loadbalancer.