-
Notifications
You must be signed in to change notification settings - Fork 110
TPT-4126: Add support for NB Front-End IP in VPC-MTC + 40Gbps NB-MTC #978
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from all commits
628a1c3
b352f40
0f4c797
79888a1
7723b38
65ea54e
1a24329
17068fd
52f201e
02e0644
35d0ed3
25bfd3a
7773999
5f40400
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -45,6 +45,9 @@ type NodeBalancer struct { | |
| // NOTE: Locks can only be used with v4beta. | ||
| Locks []LockType `json:"locks"` | ||
|
|
||
| FrontendAddressType NodeBalancerVPCFrontendAddressType `json:"frontend_address_type"` | ||
| FrontendVPCSubnetID *int `json:"frontend_vpc_subnet_id"` | ||
|
|
||
| Created *time.Time `json:"-"` | ||
| Updated *time.Time `json:"-"` | ||
| } | ||
|
|
@@ -66,6 +69,19 @@ type NodeBalancerVPCOptions struct { | |
| IPv4RangeAutoAssign bool `json:"ipv4_range_auto_assign,omitzero"` | ||
| } | ||
|
|
||
| type NodeBalancerBackendVPCOptions struct { | ||
| IPv4Range string `json:"ipv4_range,omitzero"` | ||
| IPv6Range string `json:"ipv6_range,omitzero"` | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Same here |
||
| SubnetID int `json:"subnet_id"` | ||
| IPv4RangeAutoAssign bool `json:"ipv4_range_auto_assign,omitzero"` | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. And here |
||
| } | ||
|
|
||
| type NodeBalancerFrontendVPCOptions struct { | ||
| IPv4Range string `json:"ipv4_range,omitzero"` | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. And here |
||
| IPv6Range string `json:"ipv6_range,omitzero"` | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. And here
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Hi @ezilber-akamai, all the fields you mentioned above ( |
||
| SubnetID int `json:"subnet_id"` | ||
| } | ||
|
|
||
| // NodeBalancerCreateOptions are the options permitted for CreateNodeBalancer | ||
| type NodeBalancerCreateOptions struct { | ||
| Label *string `json:"label,omitzero"` | ||
|
|
@@ -79,8 +95,12 @@ type NodeBalancerCreateOptions struct { | |
| Tags []string `json:"tags"` | ||
| FirewallID int `json:"firewall_id,omitzero"` | ||
| Type NodeBalancerPlanType `json:"type,omitzero"` | ||
| VPCs []NodeBalancerVPCOptions `json:"vpcs,omitzero"` | ||
| IPv4 *string `json:"ipv4,omitzero"` | ||
| // Deprecated: `VPCs` is deprecated in favor of `BackendVPCs`. | ||
| // This field may be removed in a later release. | ||
| VPCs []NodeBalancerVPCOptions `json:"vpcs,omitzero"` | ||
| BackendVPCs []NodeBalancerBackendVPCOptions `json:"backend_vpcs,omitzero"` | ||
| FrontendVPCs []NodeBalancerFrontendVPCOptions `json:"frontend_vpcs,omitzero"` | ||
| IPv4 *string `json:"ipv4,omitzero"` | ||
| } | ||
|
|
||
| // NodeBalancerUpdateOptions are the options permitted for UpdateNodeBalancer | ||
|
|
@@ -115,6 +135,15 @@ const ( | |
| NBTypeCommon NodeBalancerPlanType = "common" | ||
| ) | ||
|
|
||
| // NodeBalancerVPCFrontendAddressType constants start with NodeBalancerVPCFrontendAddressType and include the types of frontend addresses a NodeBalancer VPC can have | ||
| type NodeBalancerVPCFrontendAddressType string | ||
|
|
||
| // NodeBalancerVPCFrontendAddressType constants reflect the types of frontend addresses a NodeBalancer VPC can have | ||
| const ( | ||
| NodeBalancerVPCFrontendAddressTypeVPC NodeBalancerVPCFrontendAddressType = "vpc" | ||
| NodeBalancerVPCFrontendAddressTypePublic NodeBalancerVPCFrontendAddressType = "public" | ||
| ) | ||
|
|
||
| // UnmarshalJSON implements the json.Unmarshaler interface | ||
| func (i *NodeBalancer) UnmarshalJSON(b []byte) error { | ||
| type Mask NodeBalancer | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should this be a pointer?