-
Notifications
You must be signed in to change notification settings - Fork 90
/
Copy pathnodebalancer_config_vpc.go
28 lines (24 loc) · 1.13 KB
/
nodebalancer_config_vpc.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
package linodego
import (
"context"
)
// NodeBalancerVPCConfig objects represent a VPC config for a NodeBalancer
// s
// NOTE: NodeBalancer VPC support may not currently be available to all users.
type NodeBalancerVPCConfig struct {
ID int `json:"id"`
IPv4Range string `json:"ipv4_range"`
IPv6Range string `json:"ipv6_range,omitempty"`
NodeBalancerID int `json:"nodebalancer_id"`
SubnetID int `json:"subnet_id"`
VPCID int `json:"vpc_id"`
}
// ListNodeBalancerVPCConfigs lists NodeBalancer VPC configs
func (c *Client) ListNodeBalancerVPCConfigs(ctx context.Context, nodebalancerID int, opts *ListOptions) ([]NodeBalancerVPCConfig, error) {
return getPaginatedResults[NodeBalancerVPCConfig](ctx, c, formatAPIPath("nodebalancers/%d/vpcs", nodebalancerID), opts)
}
// GetNodeBalancerVPCConfig gets the NodeBalancer VPC config with the specified id
func (c *Client) GetNodeBalancerVPCConfig(ctx context.Context, nodebalancerID int, vpcID int) (*NodeBalancerVPCConfig, error) {
e := formatAPIPath("nodebalancers/%d/vpcs/%d", nodebalancerID, vpcID)
return doGETRequest[NodeBalancerVPCConfig](ctx, c, e)
}