Documentation
¶
Index ¶
- type Client
- func (c *Client) Create(ctx context.Context, req *CreateRequest) (*CreateResponse, error)
- func (c *Client) Delete(ctx context.Context, req *DeleteRequest) (*DeleteResponse, error)
- func (c *Client) Find(ctx context.Context, req *FindRequest) (*FindResponse, error)
- func (c *Client) Index(ctx context.Context, req *IndexRequest) (*IndexResponse, error)
- func (c *Client) Update(ctx context.Context, req *UpdateRequest) (*UpdateResponse, error)
- type CreateRequest
- type CreateResponse
- type DeleteRequest
- type DeleteResponse
- type FindRequest
- type FindResponse
- type HTTPClient
- type IndexRequest
- type IndexResponse
- type UpdateRequest
- type UpdateResponse
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
func New ¶
func New(c HTTPClient) *Client
func (*Client) Create ¶
func (c *Client) Create(ctx context.Context, req *CreateRequest) (*CreateResponse, error)
Create Create a new sdn zone object.
func (*Client) Delete ¶
func (c *Client) Delete(ctx context.Context, req *DeleteRequest) (*DeleteResponse, error)
Delete Delete sdn zone object configuration.
func (*Client) Find ¶
func (c *Client) Find(ctx context.Context, req *FindRequest) (*FindResponse, error)
Find Read sdn zone configuration.
func (*Client) Index ¶
func (c *Client) Index(ctx context.Context, req *IndexRequest) (*IndexResponse, error)
Index SDN zones index.
func (*Client) Update ¶
func (c *Client) Update(ctx context.Context, req *UpdateRequest) (*UpdateResponse, error)
Update Update sdn zone object configuration.
type CreateRequest ¶
type CreateRequest struct {
Type string `url:"type" json:"type"` // Plugin type.
Zone string `url:"zone" json:"zone"` // The SDN zone object identifier.
// The following parameters are optional
AdvertiseSubnets *util.SpecialBool `url:"advertise-subnets,omitempty" json:"advertise-subnets,omitempty"` // Advertise evpn subnets if you have silent hosts
Bridge *string `url:"bridge,omitempty" json:"bridge,omitempty"`
BridgeDisableMacLearning *util.SpecialBool `url:"bridge-disable-mac-learning,omitempty" json:"bridge-disable-mac-learning,omitempty"` // Disable auto mac learning.
Controller *string `url:"controller,omitempty" json:"controller,omitempty"` // Frr router name
DisableArpNdSuppression *util.SpecialBool `url:"disable-arp-nd-suppression,omitempty" json:"disable-arp-nd-suppression,omitempty"` // Disable ipv4 arp && ipv6 neighbour discovery suppression
Dns *string `url:"dns,omitempty" json:"dns,omitempty"` // dns api server
Dnszone *string `url:"dnszone,omitempty" json:"dnszone,omitempty"` // dns domain zone ex: mydomain.com
DpId *int `url:"dp-id,omitempty" json:"dp-id,omitempty"` // Faucet dataplane id
Exitnodes *string `url:"exitnodes,omitempty" json:"exitnodes,omitempty"` // List of cluster node names.
ExitnodesLocalRouting *util.SpecialBool `url:"exitnodes-local-routing,omitempty" json:"exitnodes-local-routing,omitempty"` // Allow exitnodes to connect to evpn guests
ExitnodesPrimary *string `url:"exitnodes-primary,omitempty" json:"exitnodes-primary,omitempty"` // Force traffic to this exitnode first.
Ipam *string `url:"ipam,omitempty" json:"ipam,omitempty"` // use a specific ipam
Mac *string `url:"mac,omitempty" json:"mac,omitempty"` // Anycast logical router mac address
Mtu *int `url:"mtu,omitempty" json:"mtu,omitempty"` // MTU
Nodes *string `url:"nodes,omitempty" json:"nodes,omitempty"` // List of cluster node names.
Peers *string `url:"peers,omitempty" json:"peers,omitempty"` // peers address list.
Reversedns *string `url:"reversedns,omitempty" json:"reversedns,omitempty"` // reverse dns api server
RtImport *string `url:"rt-import,omitempty" json:"rt-import,omitempty"` // Route-Target import
Tag *int `url:"tag,omitempty" json:"tag,omitempty"` // Service-VLAN Tag
VlanProtocol *string `url:"vlan-protocol,omitempty" json:"vlan-protocol,omitempty"`
VrfVxlan *int `url:"vrf-vxlan,omitempty" json:"vrf-vxlan,omitempty"` // l3vni.
}
type CreateResponse ¶
type CreateResponse map[string]interface{}
type DeleteRequest ¶
type DeleteRequest struct {
Zone string `url:"zone" json:"zone"` // The SDN zone object identifier.
}
type DeleteResponse ¶
type DeleteResponse map[string]interface{}
type FindRequest ¶
type FindRequest struct {
Zone string `url:"zone" json:"zone"` // The SDN zone object identifier.
// The following parameters are optional
Pending *util.SpecialBool `url:"pending,omitempty" json:"pending,omitempty"` // Display pending config.
Running *util.SpecialBool `url:"running,omitempty" json:"running,omitempty"` // Display running config.
}
type FindResponse ¶
type FindResponse map[string]interface{}
type HTTPClient ¶
type IndexRequest ¶
type IndexRequest struct {
// The following parameters are optional
Pending *util.SpecialBool `url:"pending,omitempty" json:"pending,omitempty"` // Display pending config.
Running *util.SpecialBool `url:"running,omitempty" json:"running,omitempty"` // Display running config.
Type *string `url:"type,omitempty" json:"type,omitempty"` // Only list SDN zones of specific type
}
type IndexResponse ¶
type IndexResponse []*struct {
Type string `url:"type" json:"type"`
Zone string `url:"zone" json:"zone"`
// The following parameters are optional
Dns *string `url:"dns,omitempty" json:"dns,omitempty"`
Dnszone *string `url:"dnszone,omitempty" json:"dnszone,omitempty"`
Ipam *string `url:"ipam,omitempty" json:"ipam,omitempty"`
Mtu *int `url:"mtu,omitempty" json:"mtu,omitempty"`
Nodes *string `url:"nodes,omitempty" json:"nodes,omitempty"`
Reversedns *string `url:"reversedns,omitempty" json:"reversedns,omitempty"`
State *string `url:"state,omitempty" json:"state,omitempty"`
}
type UpdateRequest ¶
type UpdateRequest struct {
Zone string `url:"zone" json:"zone"` // The SDN zone object identifier.
// The following parameters are optional
AdvertiseSubnets *util.SpecialBool `url:"advertise-subnets,omitempty" json:"advertise-subnets,omitempty"` // Advertise evpn subnets if you have silent hosts
Bridge *string `url:"bridge,omitempty" json:"bridge,omitempty"`
BridgeDisableMacLearning *util.SpecialBool `url:"bridge-disable-mac-learning,omitempty" json:"bridge-disable-mac-learning,omitempty"` // Disable auto mac learning.
Controller *string `url:"controller,omitempty" json:"controller,omitempty"` // Frr router name
Delete *string `url:"delete,omitempty" json:"delete,omitempty"` // A list of settings you want to delete.
Digest *string `url:"digest,omitempty" json:"digest,omitempty"` // Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.
DisableArpNdSuppression *util.SpecialBool `url:"disable-arp-nd-suppression,omitempty" json:"disable-arp-nd-suppression,omitempty"` // Disable ipv4 arp && ipv6 neighbour discovery suppression
Dns *string `url:"dns,omitempty" json:"dns,omitempty"` // dns api server
Dnszone *string `url:"dnszone,omitempty" json:"dnszone,omitempty"` // dns domain zone ex: mydomain.com
DpId *int `url:"dp-id,omitempty" json:"dp-id,omitempty"` // Faucet dataplane id
Exitnodes *string `url:"exitnodes,omitempty" json:"exitnodes,omitempty"` // List of cluster node names.
ExitnodesLocalRouting *util.SpecialBool `url:"exitnodes-local-routing,omitempty" json:"exitnodes-local-routing,omitempty"` // Allow exitnodes to connect to evpn guests
ExitnodesPrimary *string `url:"exitnodes-primary,omitempty" json:"exitnodes-primary,omitempty"` // Force traffic to this exitnode first.
Ipam *string `url:"ipam,omitempty" json:"ipam,omitempty"` // use a specific ipam
Mac *string `url:"mac,omitempty" json:"mac,omitempty"` // Anycast logical router mac address
Mtu *int `url:"mtu,omitempty" json:"mtu,omitempty"` // MTU
Nodes *string `url:"nodes,omitempty" json:"nodes,omitempty"` // List of cluster node names.
Peers *string `url:"peers,omitempty" json:"peers,omitempty"` // peers address list.
Reversedns *string `url:"reversedns,omitempty" json:"reversedns,omitempty"` // reverse dns api server
RtImport *string `url:"rt-import,omitempty" json:"rt-import,omitempty"` // Route-Target import
Tag *int `url:"tag,omitempty" json:"tag,omitempty"` // Service-VLAN Tag
VlanProtocol *string `url:"vlan-protocol,omitempty" json:"vlan-protocol,omitempty"`
VrfVxlan *int `url:"vrf-vxlan,omitempty" json:"vrf-vxlan,omitempty"` // l3vni.
}
type UpdateResponse ¶
type UpdateResponse map[string]interface{}
Click to show internal directories.
Click to hide internal directories.