Documentation
¶
Overview ¶
API Actor for use external networks
Index ¶
- type ExtNet
- func (e ExtNet) Get(ctx context.Context, req GetRequest) (*RecordExtNet, error)
- func (e ExtNet) GetDefault(ctx context.Context) (uint64, error)
- func (e ExtNet) List(ctx context.Context, req ListRequest) (ListExtNets, error)
- func (e ExtNet) ListComputes(ctx context.Context, req ListComputesRequest) (ListExtNetComputes, error)
- type GetRequest
- type ItemExtNet
- type ItemExtNetCompute
- type ItemExtNetExtend
- type ItemReservation
- type ListComputesRequest
- type ListExtNetComputes
- type ListExtNetExtends
- type ListExtNets
- type ListRequest
- type ListReservations
- type QOS
- type RecordExtNet
- type VNFs
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ExtNet ¶
type ExtNet struct {
// contains filtered or unexported fields
}
Structure for creating request to extnet
func (ExtNet) Get ¶
func (e ExtNet) Get(ctx context.Context, req GetRequest) (*RecordExtNet, error)
Get gets detailed information about external network
func (ExtNet) GetDefault ¶
GetDefault get default external network ID
func (ExtNet) List ¶
func (e ExtNet) List(ctx context.Context, req ListRequest) (ListExtNets, error)
List gets list all available external networks
func (ExtNet) ListComputes ¶
func (e ExtNet) ListComputes(ctx context.Context, req ListComputesRequest) (ListExtNetComputes, error)
ListComputes gets computes from account with extnets
type GetRequest ¶
type GetRequest struct {
// ID of external network
// Required: true
NetID uint64 `url:"net_id" json:"net_id"`
}
Request struct for get detailed information about external network
type ItemExtNet ¶
type ItemExtNet struct {
// ID
ID uint64 `json:"id"`
// IPCIDR
IPCIDR string `json:"ipcidr"`
// Name
Name string `json:"name"`
// Status
Status string `json:"status"`
}
Main information about external network
type ItemExtNetCompute ¶
type ItemExtNetCompute struct {
// Account ID
AccountID uint64 `json:"accountId"`
// Account name
AccountName string `json:"accountName"`
// List of extend information about external network
ExtNets ListExtNetExtends `json:"extnets"`
// ID
ID uint64 `json:"id"`
// Name
Name string `json:"name"`
// Resource group ID
RGID uint64 `json:"rgId"`
// Resource group name
RGName string `json:"rgName"`
}
Main information about compute with external network
type ItemExtNetExtend ¶
type ItemExtNetExtend struct {
// Main information about external network
ItemExtNet
// IP address
IPAddr string `json:"ipaddr"`
}
Extend information about external network
type ItemReservation ¶
type ItemReservation struct {
// ClientType
ClientType string `json:"clientType"`
// Description
Description string `json:"desc"`
// Domain name
DomainName string `json:"domainname"`
// Hostname
Hostname string `json:"hostname"`
// IP
IP string `json:"ip"`
// MAC
MAC string `json:"mac"`
// Type
Type string `json:"type"`
// Virtual machine ID
VMID uint64 `json:"vmId"`
}
Main information about reservations
type ListComputesRequest ¶
type ListComputesRequest struct {
// Filter by account ID
// Required: true
AccountID uint64 `url:"accountId" json:"accountId"`
}
Request struct for get list computes
type ListExtNetComputes ¶
type ListExtNetComputes []ItemExtNetCompute
List of information about computes with external network
type ListExtNetExtends ¶
type ListExtNetExtends []ItemExtNetExtend
List of extend information about external network
type ListRequest ¶
type ListRequest struct {
// Filter by account ID
// Required: false
AccountID uint64 `url:"accountId,omitempty" json:"accountId,omitempty"`
// Page number
// Required: false
Page uint64 `url:"page,omitempty" json:"page,omitempty"`
// Page size
// Required: false
Size uint64 `url:"size,omitempty" json:"size,omitempty"`
}
Request struct for get list external network
type ListReservations ¶
type ListReservations []ItemReservation
List of information about reservations
type QOS ¶
type QOS struct {
// ERate
ERate uint64 `json:"eRate"`
// GUID
GUID string `json:"guid"`
// InBurst
InBurst uint64 `json:"inBurst"`
// InRate
InRate uint64 `json:"inRate"`
}
QOS
type RecordExtNet ¶
type RecordExtNet struct {
// CKey
CKey string `json:"_ckey"`
// Meta
Meta []interface{} `json:"_meta"`
// CheckIPs
CheckIPs []string `json:"checkIPs"`
// CheckIps
CheckIps []string `json:"checkIps"`
// Default
Default bool `json:"default"`
// Default QOS
DefaultQOS QOS `json:"defaultQos"`
// Description
Description string `json:"desc"`
// list of DNS
DNS []string `json:"dns"`
// Excluded
Excluded []string `json:"excluded"`
// Free IPs
FreeIPs uint64 `json:"free_ips"`
// Gateway
Gateway string `json:"gateway"`
// Grid ID
GID uint64 `json:"gid"`
// GUID
GUID uint64 `json:"guid"`
// ID
ID uint64 `json:"id"`
// IPCIDR
IPCIDR string `json:"ipcidr"`
// Milestones
Milestones uint64 `json:"milestones"`
// Name
Name string `json:"name"`
// Network
Network string `json:"network"`
// Network ID
NetworkID uint64 `json:"networkId"`
// OVS Bridge
OVSBridge string `json:"ovsBridge"`
// PreReservation IP num
PreReservationsNum uint64 `json:"preReservationsNum"`
// Prefix
Prefix uint64 `json:"prefix"`
// PriVNFDevID
PriVNFDevID uint64 `json:"priVnfDevId"`
// List reservations
Reservations ListReservations `json:"reservations"`
SharedWith []uint64 `json:"sharedWith"`
// Status
Status string `json:"status"`
// VLAN ID
VLANID uint64 `json:"vlanId"`
// VNFs
VNFs VNFs `json:"vnfs"`
}
Detailed information about external network