dbtypes

package
v0.0.0-...-9c779f9 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 31, 2023 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ACLNB

type ACLNB struct {
	Action      *string      `json:"action"`
	Direction   *string      `json:"direction"`
	ExternalIds OVSMapString `json:"external_ids"`
	Label       *int         `json:"label"`
	Log         *bool        `json:"log"`
	Match       *string      `json:"match"`
	Meter       *string      `json:"meter,omitempty"`
	Name        *string      `json:"name,omitempty"`
	Options     OVSMapString `json:"options"`
	Priority    *int         `json:"priority"`
	Severity    *string      `json:"severity,omitempty"`
}

ACL

type AclAction

type AclAction int
const (
	AllowStateless AclAction = iota
	Allow
	AllowRelated
	Drop
	Reject
)

func (AclAction) MarshalJSON

func (s AclAction) MarshalJSON() ([]byte, error)

MarshalJSON marshals the enum as a quoted json string

func (AclAction) String

func (s AclAction) String() string

func (*AclAction) UnmarshalJSON

func (s *AclAction) UnmarshalJSON(b []byte) error

UnmarshalJSON unmashals a quoted json string to the enum value

type AclDirection

type AclDirection int
const (
	FromLPort AclDirection = iota
	ToLPort
)

func (AclDirection) MarshalJSON

func (s AclDirection) MarshalJSON() ([]byte, error)

MarshalJSON marshals the enum as a quoted json string

func (AclDirection) String

func (s AclDirection) String() string

func (*AclDirection) UnmarshalJSON

func (s *AclDirection) UnmarshalJSON(b []byte) error

UnmarshalJSON unmashals a quoted json string to the enum value

type AddressSetNB

type AddressSetNB struct {
	Addresses   OVSSet[string] `json:"addresses"`
	ExternalIds OVSMapString   `json:"external_ids"`
	Name        *string        `json:"name"`
}

Address_Set

type AddressSetSB

type AddressSetSB struct {
	Addresses OVSSet[string] `json:"addresses"`
	Name      *string        `json:"name"`
}

Address_Set

type BFDNB

type BFDNB struct {
	DetectMult  *int         `json:"detect_mult,omitempty"`
	DstIp       *string      `json:"dst_ip"`
	ExternalIds OVSMapString `json:"external_ids"`
	LogicalPort *string      `json:"logical_port"`
	MinRx       *int         `json:"min_rx,omitempty"`
	MinTx       *int         `json:"min_tx,omitempty"`
	Options     OVSMapString `json:"options"`
	Status      *string      `json:"status,omitempty"`
}

BFD

type BFDSB

type BFDSB struct {
	DetectMult  *int         `json:"detect_mult"`
	Disc        *int         `json:"disc"`
	DstIp       *string      `json:"dst_ip"`
	ExternalIds OVSMapString `json:"external_ids"`
	LogicalPort *string      `json:"logical_port"`
	MinRx       *int         `json:"min_rx"`
	MinTx       *int         `json:"min_tx"`
	Options     OVSMapString `json:"options"`
	SrcPort     *int         `json:"src_port"`
	Status      *string      `json:"status"`
}

BFD

type ChassisPrivateSB

type ChassisPrivateSB struct {
	Chassis        *UUID        `json:"chassis,omitempty"` //  Chassis
	ExternalIds    OVSMapString `json:"external_ids"`
	Name           *string      `json:"name"`
	NbCfg          *int         `json:"nb_cfg"`
	NbCfgTimestamp *int         `json:"nb_cfg_timestamp"`
}

Chassis_Private

type ChassisSB

type ChassisSB struct {
	Encaps              OVSSet[UUID]   `json:"encaps"` //  Encap
	ExternalIds         OVSMapString   `json:"external_ids"`
	Hostname            *string        `json:"hostname"`
	Name                *string        `json:"name"`
	NbCfg               *int           `json:"nb_cfg"`
	OtherConfig         OVSMapString   `json:"other_config"`
	TransportZones      OVSSet[string] `json:"transport_zones"`
	VtepLogicalSwitches OVSSet[string] `json:"vtep_logical_switches"`
}

Chassis

type ConnectionNB

type ConnectionNB struct {
	ExternalIds     OVSMapString `json:"external_ids"`
	InactivityProbe *int         `json:"inactivity_probe,omitempty"`
	IsConnected     *bool        `json:"is_connected"`
	MaxBackoff      *int         `json:"max_backoff,omitempty"`
	OtherConfig     OVSMapString `json:"other_config"`
	Status          OVSMapString `json:"status"`
	Target          *string      `json:"target"`
}

Connection

type ConnectionSB

type ConnectionSB struct {
	ExternalIds     OVSMapString `json:"external_ids"`
	InactivityProbe *int         `json:"inactivity_probe,omitempty"`
	IsConnected     *bool        `json:"is_connected"`
	MaxBackoff      *int         `json:"max_backoff,omitempty"`
	OtherConfig     OVSMapString `json:"other_config"`
	ReadOnly        *bool        `json:"read_only"`
	Role            *string      `json:"role"`
	Status          OVSMapString `json:"status"`
	Target          *string      `json:"target"`
}

Connection

type ControllerEventSB

type ControllerEventSB struct {
	Chassis   *UUID        `json:"chassis,omitempty"` //  Chassis
	EventInfo OVSMapString `json:"event_info"`
	EventType *string      `json:"event_type"`
	SeqNum    *int         `json:"seq_num"`
}

Controller_Event

type CoppNB

type CoppNB struct {
	Meters OVSMapString `json:"meters"`
}

Copp

type DHCPOptionsNB

type DHCPOptionsNB struct {
	Cidr        *string      `json:"cidr"`
	ExternalIds OVSMapString `json:"external_ids"`
	Options     OVSMapString `json:"options"`
}

DHCP_Options

type DHCPOptionsSB

type DHCPOptionsSB struct {
	Code *int    `json:"code"`
	Name *string `json:"name"`
	Type *string `json:"type"`
}

DHCP_Options

type DHCPv6OptionsSB

type DHCPv6OptionsSB struct {
	Code *int    `json:"code"`
	Name *string `json:"name"`
	Type *string `json:"type"`
}

DHCPv6_Options

type DNSNB

type DNSNB struct {
	ExternalIds OVSMapString `json:"external_ids"`
	Records     OVSMapString `json:"records"`
}

DNS

type DNSSB

type DNSSB struct {
	Datapaths   OVSSet[UUID] `json:"datapaths"` //  Datapath_Binding
	ExternalIds OVSMapString `json:"external_ids"`
	Records     OVSMapString `json:"records"`
}

DNS

type DatapathBindingSB

type DatapathBindingSB struct {
	ExternalIds   OVSMapString `json:"external_ids"`
	LoadBalancers OVSSet[UUID] `json:"load_balancers"`
	TunnelKey     *int         `json:"tunnel_key"`
}

Datapath_Binding

type EncapSB

type EncapSB struct {
	ChassisName *string      `json:"chassis_name"`
	Ip          *string      `json:"ip"`
	Options     OVSMapString `json:"options"`
	Type        *string      `json:"type"`
}

Encap

type FDBSB

type FDBSB struct {
	DpKey   *int    `json:"dp_key"`
	Mac     *string `json:"mac"`
	PortKey *int    `json:"port_key"`
}

FDB

type ForwardingGroupNB

type ForwardingGroupNB struct {
	ChildPort   OVSSet[string] `json:"child_port"`
	ExternalIds OVSMapString   `json:"external_ids"`
	Liveness    *bool          `json:"liveness"`
	Name        *string        `json:"name"`
	Vip         *string        `json:"vip"`
	Vmac        *string        `json:"vmac"`
}

Forwarding_Group

type GatewayChassisNB

type GatewayChassisNB struct {
	ChassisName *string      `json:"chassis_name"`
	ExternalIds OVSMapString `json:"external_ids"`
	Name        *string      `json:"name"`
	Options     OVSMapString `json:"options"`
	Priority    *int         `json:"priority"`
}

Gateway_Chassis

type GatewayChassisSB

type GatewayChassisSB struct {
	Chassis     *UUID        `json:"chassis,omitempty"` //  Chassis
	ExternalIds OVSMapString `json:"external_ids"`
	Name        *string      `json:"name"`
	Options     OVSMapString `json:"options"`
	Priority    *int         `json:"priority"`
}

Gateway_Chassis

type HAChassisGroupNB

type HAChassisGroupNB struct {
	ExternalIds OVSMapString `json:"external_ids"`
	HaChassis   OVSSet[UUID] `json:"ha_chassis"` //  HA_Chassis
	Name        *string      `json:"name"`
}

HA_Chassis_Group

type HAChassisGroupSB

type HAChassisGroupSB struct {
	ExternalIds OVSMapString `json:"external_ids"`
	HaChassis   OVSSet[UUID] `json:"ha_chassis"` //  HA_Chassis
	Name        *string      `json:"name"`
	RefChassis  OVSSet[UUID] `json:"ref_chassis"` //  Chassis
}

HA_Chassis_Group

type HAChassisNB

type HAChassisNB struct {
	ChassisName *string      `json:"chassis_name"`
	ExternalIds OVSMapString `json:"external_ids"`
	Priority    *int         `json:"priority"`
}

HA_Chassis

type HAChassisSB

type HAChassisSB struct {
	Chassis     *UUID        `json:"chassis,omitempty"` //  Chassis
	ExternalIds OVSMapString `json:"external_ids"`
	Priority    *int         `json:"priority"`
}

HA_Chassis

type IGMPGroupSB

type IGMPGroupSB struct {
	Address  *string      `json:"address"`
	Chassis  *UUID        `json:"chassis,omitempty"`  //  Chassis
	Datapath *UUID        `json:"datapath,omitempty"` //  Datapath_Binding
	Ports    OVSSet[UUID] `json:"ports"`              //  Port_Binding
}

IGMP_Group

type IPMulticastSB

type IPMulticastSB struct {
	Datapath      *UUID   `json:"datapath"` //  Datapath_Binding
	Enabled       *bool   `json:"enabled,omitempty"`
	EthSrc        *string `json:"eth_src"`
	IdleTimeout   *int    `json:"idle_timeout,omitempty"`
	Ip4Src        *string `json:"ip4_src"`
	Ip6Src        *string `json:"ip6_src"`
	Querier       *bool   `json:"querier,omitempty"`
	QueryInterval *int    `json:"query_interval,omitempty"`
	QueryMaxResp  *int    `json:"query_max_resp,omitempty"`
	SeqNo         *int    `json:"seq_no"`
	TableSize     *int    `json:"table_size,omitempty"`
}

IP_Multicast

type LoadBalancerGroupNB

type LoadBalancerGroupNB struct {
	LoadBalancer OVSSet[UUID] `json:"load_balancer"` //  Load_Balancer
	Name         *string      `json:"name"`
}

Load_Balancer_Group

type LoadBalancerHealthCheckNB

type LoadBalancerHealthCheckNB struct {
	ExternalIds OVSMapString `json:"external_ids"`
	Options     OVSMapString `json:"options"`
	Vip         *string      `json:"vip"`
}

Load_Balancer_Health_Check

type LoadBalancerNB

type LoadBalancerNB struct {
	ExternalIds     OVSMapString   `json:"external_ids"`
	HealthCheck     OVSSet[UUID]   `json:"health_check"` //  Load_Balancer_Health_Check
	IpPortMappings  OVSMapString   `json:"ip_port_mappings"`
	Name            *string        `json:"name"`
	Options         OVSMapString   `json:"options"`
	Protocol        *string        `json:"protocol,omitempty"`
	SelectionFields OVSSet[string] `json:"selection_fields"`
	Vips            OVSMapString   `json:"vips"`
}

Load_Balancer

type LoadBalancerSB

type LoadBalancerSB struct {
	Datapaths   OVSSet[UUID] `json:"datapaths"` //  Datapath_Binding
	ExternalIds OVSMapString `json:"external_ids"`
	Name        *string      `json:"name"`
	Options     OVSMapString `json:"options"`
	Protocol    *string      `json:"protocol,omitempty"`
	Vips        OVSMapString `json:"vips"`
}

Load_Balancer

type LogFlow

type LogFlow LogicalFlowSB

func (*LogFlow) Decode

func (b *LogFlow) Decode(ptr unsafe.Pointer, iter *jsoniter.Iterator)

type LogicalDPGroupSB

type LogicalDPGroupSB struct {
	Datapaths OVSSet[UUID] `json:"datapaths"` //  Datapath_Binding
}

Logical_DP_Group

type LogicalFlowSB

type LogicalFlowSB struct {
	Actions         *string      `json:"actions"`
	ControllerMeter *string      `json:"controller_meter,omitempty"`
	ExternalIds     OVSMapString `json:"external_ids"`
	LogicalDatapath *UUID        `json:"logical_datapath,omitempty"` //  Datapath_Binding
	LogicalDpGroup  *UUID        `json:"logical_dp_group,omitempty"` //  Logical_DP_Group
	Match           *string      `json:"match"`
	Pipeline        *string      `json:"pipeline"`
	Priority        *int         `json:"priority"`
	TableId         *int         `json:"table_id"`
	Tags            OVSMapString `json:"tags"`
}

Logical_Flow

func (*LogicalFlowSB) UnmarshalJSON

func (b *LogicalFlowSB) UnmarshalJSON(data []byte) error

type LogicalRouterNB

type LogicalRouterNB struct {
	Copp              *UUID        `json:"copp,omitempty"` //  Copp
	Enabled           *bool        `json:"enabled,omitempty"`
	ExternalIds       OVSMapString `json:"external_ids"`
	LoadBalancer      OVSSet[UUID] `json:"load_balancer"`       //  Load_Balancer
	LoadBalancerGroup OVSSet[UUID] `json:"load_balancer_group"` //  Load_Balancer_Group
	Name              *string      `json:"name"`
	Nat               OVSSet[UUID] `json:"nat"` //  NAT
	Options           OVSMapString `json:"options"`
	Policies          OVSSet[UUID] `json:"policies"`      //  Logical_Router_Policy
	Ports             OVSSet[UUID] `json:"ports"`         //  Logical_Router_Port
	StaticRoutes      OVSSet[UUID] `json:"static_routes"` //  Logical_Router_Static_Route
}

Logical_Router

type LogicalRouterPolicyNB

type LogicalRouterPolicyNB struct {
	Action      *string        `json:"action"`
	ExternalIds OVSMapString   `json:"external_ids"`
	Match       *string        `json:"match"`
	Nexthop     *string        `json:"nexthop,omitempty"`
	Nexthops    OVSSet[string] `json:"nexthops"`
	Options     OVSMapString   `json:"options"`
	Priority    *int           `json:"priority"`
}

Logical_Router_Policy

type LogicalRouterPortNB

type LogicalRouterPortNB struct {
	Enabled        *bool          `json:"enabled,omitempty"`
	ExternalIds    OVSMapString   `json:"external_ids"`
	GatewayChassis OVSSet[UUID]   `json:"gateway_chassis"`            //  Gateway_Chassis
	HaChassisGroup *UUID          `json:"ha_chassis_group,omitempty"` //  HA_Chassis_Group
	Ipv6Prefix     OVSSet[string] `json:"ipv6_prefix"`
	Ipv6RaConfigs  OVSMapString   `json:"ipv6_ra_configs"`
	Mac            *string        `json:"mac"`
	Name           *string        `json:"name"`
	Networks       OVSSet[string] `json:"networks"`
	Options        OVSMapString   `json:"options"`
	Peer           *string        `json:"peer,omitempty"`
}

Logical_Router_Port

type LogicalRouterStaticRouteNB

type LogicalRouterStaticRouteNB struct {
	Bfd         *UUID        `json:"bfd,omitempty"` //  BFD
	ExternalIds OVSMapString `json:"external_ids"`
	IpPrefix    *string      `json:"ip_prefix"`
	Nexthop     *string      `json:"nexthop"`
	Options     OVSMapString `json:"options"`
	OutputPort  *string      `json:"output_port,omitempty"`
	Policy      *string      `json:"policy,omitempty"`
	RouteTable  *string      `json:"route_table"`
}

Logical_Router_Static_Route

type LogicalSwitchNB

type LogicalSwitchNB struct {
	Acls              OVSSet[UUID] `json:"acls"`           //  ACL
	Copp              *UUID        `json:"copp,omitempty"` //  Copp
	DnsRecords        OVSSet[UUID] `json:"dns_records"`    //  DNS
	ExternalIds       OVSMapString `json:"external_ids"`
	ForwardingGroups  OVSSet[UUID] `json:"forwarding_groups"`   //  Forwarding_Group
	LoadBalancer      OVSSet[UUID] `json:"load_balancer"`       //  Load_Balancer
	LoadBalancerGroup OVSSet[UUID] `json:"load_balancer_group"` //  Load_Balancer_Group
	Name              *string      `json:"name"`
	OtherConfig       OVSMapString `json:"other_config"`
	Ports             OVSSet[UUID] `json:"ports"`     //  Logical_Switch_Port
	QosRules          OVSSet[UUID] `json:"qos_rules"` //  QoS
}

Logical_Switch

type LogicalSwitchPortNB

type LogicalSwitchPortNB struct {
	Addresses        OVSSet[string] `json:"addresses"`
	Dhcpv4Options    *UUID          `json:"dhcpv4_options,omitempty"` //  DHCP_Options
	Dhcpv6Options    *UUID          `json:"dhcpv6_options,omitempty"` //  DHCP_Options
	DynamicAddresses *string        `json:"dynamic_addresses,omitempty"`
	Enabled          *bool          `json:"enabled,omitempty"`
	ExternalIds      OVSMapString   `json:"external_ids"`
	HaChassisGroup   *UUID          `json:"ha_chassis_group,omitempty"` //  HA_Chassis_Group
	Name             *string        `json:"name"`
	Options          OVSMapString   `json:"options"`
	ParentName       *string        `json:"parent_name,omitempty"`
	PortSecurity     OVSSet[string] `json:"port_security"`
	Tag              *int           `json:"tag,omitempty"`
	TagRequest       *int           `json:"tag_request,omitempty"`
	Type             *string        `json:"type"`
	Up               *bool          `json:"up,omitempty"`
}

Logical_Switch_Port

type MACBindingSB

type MACBindingSB struct {
	Datapath    *UUID   `json:"datapath"` //  Datapath_Binding
	Ip          *string `json:"ip"`
	LogicalPort *string `json:"logical_port"`
	Mac         *string `json:"mac"`
}

MAC_Binding

type MeterBandNB

type MeterBandNB struct {
	Action      *string      `json:"action"`
	BurstSize   *int         `json:"burst_size"`
	ExternalIds OVSMapString `json:"external_ids"`
	Rate        *int         `json:"rate"`
}

Meter_Band

type MeterBandSB

type MeterBandSB struct {
	Action    *string `json:"action"`
	BurstSize *int    `json:"burst_size"`
	Rate      *int    `json:"rate"`
}

Meter_Band

type MeterNB

type MeterNB struct {
	Bands       OVSSet[UUID] `json:"bands"` //  Meter_Band
	ExternalIds OVSMapString `json:"external_ids"`
	Fair        *bool        `json:"fair,omitempty"`
	Name        *string      `json:"name"`
	Unit        *string      `json:"unit"`
}

Meter

type MeterSB

type MeterSB struct {
	Bands OVSSet[UUID] `json:"bands"` //  Meter_Band
	Name  *string      `json:"name"`
	Unit  *string      `json:"unit"`
}

Meter

type MulticastGroupSB

type MulticastGroupSB struct {
	Datapath  *UUID        `json:"datapath"` //  Datapath_Binding
	Name      *string      `json:"name"`
	Ports     OVSSet[UUID] `json:"ports"` //  Port_Binding
	TunnelKey *int         `json:"tunnel_key"`
}

Multicast_Group

type NATNB

type NATNB struct {
	AllowedExtIps     *UUID        `json:"allowed_ext_ips,omitempty"`  //  Address_Set
	ExemptedExtIps    *UUID        `json:"exempted_ext_ips,omitempty"` //  Address_Set
	ExternalIds       OVSMapString `json:"external_ids"`
	ExternalIp        *string      `json:"external_ip"`
	ExternalMac       *string      `json:"external_mac,omitempty"`
	ExternalPortRange *string      `json:"external_port_range"`
	LogicalIp         *string      `json:"logical_ip"`
	LogicalPort       *string      `json:"logical_port,omitempty"`
	Options           OVSMapString `json:"options"`
	Type              *string      `json:"type"`
}

NAT

type NBGlobalNB

type NBGlobalNB struct {
	Connections    OVSSet[UUID] `json:"connections"` //  Connection
	ExternalIds    OVSMapString `json:"external_ids"`
	HvCfg          *int         `json:"hv_cfg"`
	HvCfgTimestamp *int         `json:"hv_cfg_timestamp"`
	Ipsec          *bool        `json:"ipsec"`
	Name           *string      `json:"name"`
	NbCfg          *int         `json:"nb_cfg"`
	NbCfgTimestamp *int         `json:"nb_cfg_timestamp"`
	Options        OVSMapString `json:"options"`
	SbCfg          *int         `json:"sb_cfg"`
	SbCfgTimestamp *int         `json:"sb_cfg_timestamp"`
	Ssl            *UUID        `json:"ssl,omitempty"` //  SSL
}

NB_Global

type NatType

type NatType int
const (
	Dnat NatType = iota
	DnatAndSnat
	Snat
)

func (NatType) MarshalJSON

func (s NatType) MarshalJSON() ([]byte, error)

MarshalJSON marshals the enum as a quoted json string

func (NatType) String

func (s NatType) String() string

func (*NatType) UnmarshalJSON

func (s *NatType) UnmarshalJSON(b []byte) error

UnmarshalJSON unmashals a quoted json string to the enum value

type OVNNorthbound

type OVNNorthbound struct {
	Date                     Time                                  `json:"_date"`
	Comment                  string                                `json:"_comment"`
	IsDiff                   bool                                  `json:"_is_diff"`
	ACL                      map[string]ACLNB                      `json:"ACL"`
	AddressSet               map[string]AddressSetNB               `json:"Address_Set"`
	BFD                      map[string]BFDNB                      `json:"BFD"`
	Connection               map[string]ConnectionNB               `json:"Connection"`
	Copp                     map[string]CoppNB                     `json:"Copp"`
	DHCPOptions              map[string]DHCPOptionsNB              `json:"DHCP_Options"`
	DNS                      map[string]DNSNB                      `json:"DNS"`
	ForwardingGroup          map[string]ForwardingGroupNB          `json:"Forwarding_Group"`
	GatewayChassis           map[string]GatewayChassisNB           `json:"Gateway_Chassis"`
	HAChassis                map[string]HAChassisNB                `json:"HA_Chassis"`
	HAChassisGroup           map[string]HAChassisGroupNB           `json:"HA_Chassis_Group"`
	LoadBalancer             map[string]LoadBalancerNB             `json:"Load_Balancer"`
	LoadBalancerGroup        map[string]LoadBalancerGroupNB        `json:"Load_Balancer_Group"`
	LoadBalancerHealthCheck  map[string]LoadBalancerHealthCheckNB  `json:"Load_Balancer_Health_Check"`
	LogicalRouter            map[string]LogicalRouterNB            `json:"Logical_Router"`
	LogicalRouterPolicy      map[string]LogicalRouterPolicyNB      `json:"Logical_Router_Policy"`
	LogicalRouterPort        map[string]LogicalRouterPortNB        `json:"Logical_Router_Port"`
	LogicalRouterStaticRoute map[string]LogicalRouterStaticRouteNB `json:"Logical_Router_Static_Route"`
	LogicalSwitch            map[string]LogicalSwitchNB            `json:"Logical_Switch"`
	LogicalSwitchPort        map[string]LogicalSwitchPortNB        `json:"Logical_Switch_Port"`
	Meter                    map[string]MeterNB                    `json:"Meter"`
	MeterBand                map[string]MeterBandNB                `json:"Meter_Band"`
	NAT                      map[string]NATNB                      `json:"NAT"`
	NBGlobal                 map[string]NBGlobalNB                 `json:"NB_Global"`
	PortGroup                map[string]PortGroupNB                `json:"Port_Group"`
	QoS                      map[string]QoSNB                      `json:"QoS"`
	SSL                      map[string]SSLNB                      `json:"SSL"`
}

func (OVNNorthbound) IsValid

func (nb OVNNorthbound) IsValid() bool

type OVNSouthbound

type OVNSouthbound struct {
	Date            Time                         `json:"_date"`
	Comment         string                       `json:"_comment"`
	IsDiff          bool                         `json:"_is_diff"`
	AddressSet      map[string]AddressSetSB      `json:"Address_Set"`
	BFD             map[string]BFDSB             `json:"BFD"`
	Chassis         map[string]ChassisSB         `json:"Chassis"`
	ChassisPrivate  map[string]ChassisPrivateSB  `json:"Chassis_Private"`
	Connection      map[string]ConnectionSB      `json:"Connection"`
	ControllerEvent map[string]ControllerEventSB `json:"Controller_Event"`
	DHCPOptions     map[string]DHCPOptionsSB     `json:"DHCP_Options"`
	DHCPv6Options   map[string]DHCPv6OptionsSB   `json:"DHCPv6_Options"`
	DNS             map[string]DNSSB             `json:"DNS"`
	DatapathBinding map[string]DatapathBindingSB `json:"Datapath_Binding"`
	Encap           map[string]EncapSB           `json:"Encap"`
	FDB             map[string]FDBSB             `json:"FDB"`
	GatewayChassis  map[string]GatewayChassisSB  `json:"Gateway_Chassis"`
	HAChassis       map[string]HAChassisSB       `json:"HA_Chassis"`
	HAChassisGroup  map[string]HAChassisGroupSB  `json:"HA_Chassis_Group"`
	IGMPGroup       map[string]IGMPGroupSB       `json:"IGMP_Group"`
	IPMulticast     map[string]IPMulticastSB     `json:"IP_Multicast"`
	LoadBalancer    map[string]LoadBalancerSB    `json:"Load_Balancer"`
	LogicalDPGroup  map[string]LogicalDPGroupSB  `json:"Logical_DP_Group"`
	LogicalFlow     map[string]LogicalFlowSB     `json:"Logical_Flow"`
	MACBinding      map[string]MACBindingSB      `json:"MAC_Binding"`
	Meter           map[string]MeterSB           `json:"Meter"`
	MeterBand       map[string]MeterBandSB       `json:"Meter_Band"`
	MulticastGroup  map[string]MulticastGroupSB  `json:"Multicast_Group"`
	PortBinding     map[string]PortBindingSB     `json:"Port_Binding"`
	PortGroup       map[string]PortGroupSB       `json:"Port_Group"`
	RBACPermission  map[string]RBACPermissionSB  `json:"RBAC_Permission"`
	RBACRole        map[string]RBACRoleSB        `json:"RBAC_Role"`
	SBGlobal        map[string]SBGlobalSB        `json:"SB_Global"`
	SSL             map[string]SSLSB             `json:"SSL"`
	ServiceMonitor  map[string]ServiceMonitorSB  `json:"Service_Monitor"`
}

func (OVNSouthbound) IsValid

func (sb OVNSouthbound) IsValid() bool

type OVSMapInt

type OVSMapInt map[string]int

func (*OVSMapInt) UnmarshalJSON

func (b *OVSMapInt) UnmarshalJSON(data []byte) error

type OVSMapString

type OVSMapString map[string]string

func (*OVSMapString) UnmarshalJSON

func (b *OVSMapString) UnmarshalJSON(data []byte) error

type OVSMapUUID

type OVSMapUUID map[string]UUID

func (*OVSMapUUID) UnmarshalJSON

func (b *OVSMapUUID) UnmarshalJSON(data []byte) error

type OVSSet

type OVSSet[T string | int | UUID] []T

func (*OVSSet[T]) UnmarshalJSON

func (b *OVSSet[T]) UnmarshalJSON(data []byte) error

type PortBindingSB

type PortBindingSB struct {
	Chassis          *UUID          `json:"chassis,omitempty"` //  Chassis
	Datapath         *UUID          `json:"datapath"`          //  Datapath_Binding
	Encap            *UUID          `json:"encap,omitempty"`   //  Encap
	ExternalIds      OVSMapString   `json:"external_ids"`
	GatewayChassis   OVSSet[UUID]   `json:"gateway_chassis"`            //  Gateway_Chassis
	HaChassisGroup   *UUID          `json:"ha_chassis_group,omitempty"` //  HA_Chassis_Group
	LogicalPort      *string        `json:"logical_port"`
	Mac              OVSSet[string] `json:"mac"`
	NatAddresses     OVSSet[string] `json:"nat_addresses"`
	Options          OVSMapString   `json:"options"`
	ParentPort       *string        `json:"parent_port,omitempty"`
	RequestedChassis *UUID          `json:"requested_chassis,omitempty"` //  Chassis
	Tag              *int           `json:"tag,omitempty"`
	TunnelKey        *int           `json:"tunnel_key"`
	Type             *string        `json:"type"`
	Up               *bool          `json:"up,omitempty"`
	VirtualParent    *StringSet     `json:"virtual_parent,omitempty"`
}

Port_Binding

type PortGroupNB

type PortGroupNB struct {
	Acls        OVSSet[UUID] `json:"acls"` //  ACL
	ExternalIds OVSMapString `json:"external_ids"`
	Name        *string      `json:"name"`
	Ports       OVSSet[UUID] `json:"ports"` //  Logical_Switch_Port
}

Port_Group

type PortGroupSB

type PortGroupSB struct {
	Name  *string        `json:"name"`
	Ports OVSSet[string] `json:"ports"`
}

Port_Group

type QoSNB

type QoSNB struct {
	Action      OVSMapInt    `json:"action"`
	Bandwidth   OVSMapInt    `json:"bandwidth"`
	Direction   *string      `json:"direction"`
	ExternalIds OVSMapString `json:"external_ids"`
	Match       *string      `json:"match"`
	Priority    *int         `json:"priority"`
}

QoS

type RBACPermissionSB

type RBACPermissionSB struct {
	Authorization OVSSet[string] `json:"authorization"`
	InsertDelete  *bool          `json:"insert_delete"`
	Table         *string        `json:"table"`
	Update        OVSSet[string] `json:"update"`
}

RBAC_Permission

type RBACRoleSB

type RBACRoleSB struct {
	Name *string `json:"name"`
}

RBAC_Role

type SBGlobalSB

type SBGlobalSB struct {
	Connections OVSSet[UUID] `json:"connections"` //  Connection
	ExternalIds OVSMapString `json:"external_ids"`
	Ipsec       *bool        `json:"ipsec"`
	NbCfg       *int         `json:"nb_cfg"`
	Options     OVSMapString `json:"options"`
	Ssl         *UUID        `json:"ssl,omitempty"` //  SSL
}

SB_Global

type SSLNB

type SSLNB struct {
	BootstrapCaCert *bool        `json:"bootstrap_ca_cert"`
	CaCert          *string      `json:"ca_cert"`
	Certificate     *string      `json:"certificate"`
	ExternalIds     OVSMapString `json:"external_ids"`
	PrivateKey      *string      `json:"private_key"`
	SslCiphers      *string      `json:"ssl_ciphers"`
	SslProtocols    *string      `json:"ssl_protocols"`
}

SSL

type SSLSB

type SSLSB struct {
	BootstrapCaCert *bool        `json:"bootstrap_ca_cert"`
	CaCert          *string      `json:"ca_cert"`
	Certificate     *string      `json:"certificate"`
	ExternalIds     OVSMapString `json:"external_ids"`
	PrivateKey      *string      `json:"private_key"`
	SslCiphers      *string      `json:"ssl_ciphers"`
	SslProtocols    *string      `json:"ssl_protocols"`
}

SSL

type ServiceMonitorSB

type ServiceMonitorSB struct {
	ExternalIds OVSMapString `json:"external_ids"`
	Ip          *string      `json:"ip"`
	LogicalPort *string      `json:"logical_port"`
	Options     OVSMapString `json:"options"`
	Port        *int         `json:"port"`
	Protocol    *string      `json:"protocol,omitempty"`
	SrcIp       *string      `json:"src_ip"`
	SrcMac      *string      `json:"src_mac"`
	Status      *string      `json:"status,omitempty"`
}

Service_Monitor

type StringSet

type StringSet string

func (StringSet) String

func (b StringSet) String() string

func (*StringSet) UnmarshalJSON

func (b *StringSet) UnmarshalJSON(data []byte) error

type Time

type Time time.Time

Time defines a timestamp encoded as epoch seconds in JSON

func (Time) MarshalJSON

func (t Time) MarshalJSON() ([]byte, error)

MarshalJSON is used to convert the timestamp to JSON

func (Time) String

func (t Time) String() string

String returns t as a formatted string

func (Time) Time

func (t Time) Time() time.Time

Time returns the JSON time as a time.Time instance in UTC

func (Time) Unix

func (t Time) Unix() int64

Unix returns t as a Unix time, the number of seconds elapsed since January 1, 1970 UTC. The result does not depend on the location associated with t.

func (*Time) UnmarshalJSON

func (t *Time) UnmarshalJSON(s []byte) (err error)

UnmarshalJSON is used to convert the timestamp from JSON

type UUID

type UUID string

func (UUID) String

func (b UUID) String() string

func (*UUID) UnmarshalJSON

func (b *UUID) UnmarshalJSON(data []byte) error

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL