v1.16.7
This commit is contained in:
dayterr
2026-10-09 16:23:35 +03:00
parent 25e2242360
commit 8cde0e9371
80 changed files with 2303 additions and 606 deletions

View File

@@ -82,6 +82,15 @@ type ExternalNetworkPort struct {
// Floating IP
FloatingIP FloatingIP `json:"floating_ip"`
// ID of external network
ExternalNetworkID string `json:"external_network_id"`
// ID of external network port
ID string `json:"id"`
// ID of version
VersionID uint64 `json:"version_id"`
}
type IPv6Config struct {
@@ -132,7 +141,7 @@ type FloatingIP struct {
CreatedAt time.Time `json:"created_at"`
// External network port
ExternalNetworkPort string `json:"external_network_port"`
ExternalNetworkPort *ExternalNetworkPort `json:"external_network_port"`
// ID of floating IP
ID string `json:"id"`
@@ -146,6 +155,12 @@ type FloatingIP struct {
// Update time
UpdatedAt time.Time `json:"updated_at"`
// ID of the user who created the floating IP
CreatedBy string `json:"created_by"`
// ID of the user who last updated the floating IP
UpdatedBy string `json:"updated_by"`
// ID of version
VersionID uint64 `json:"version_id"`
}
@@ -178,6 +193,9 @@ type LogicalPort struct {
// Whether the logical port is enabled
Enabled bool `json:"enabled"`
// Exclude firewall information
ExcludeFirewall ExcludeFirewall `json:"exclude_firewall"`
// External Network ID
ExternalNetworkID string `json:"external_network_id"`
@@ -187,6 +205,9 @@ type LogicalPort struct {
// User-friendly name for hypervisor
HypervisorDisplayName string `json:"hypervisor_display_name"`
// Labels
Labels Labels `json:"labels"`
// Live Migration Target Hv
LiveMigrationTargetHV string `json:"live_migration_target_hv"`
@@ -206,6 +227,25 @@ type LogicalPort struct {
VersionID uint64 `json:"version_id"`
}
type ExcludeFirewall struct {
// Exclusion reason
ExclusionReason string `json:"exclusion_reason"`
// Whether logical port addresses are excluded from firewall
LogicalPortAddressesExcluded bool `json:"logical_port_addresses_excluded"`
// Whether logical port is excluded from firewall
LogicalPortExcluded bool `json:"logical_port_excluded"`
}
type Labels struct {
// VM ID
VMID string `json:"vm_id"`
// VM name
VMName string `json:"vm_name"`
}
type PortBindings struct {
// Binding ID
ID string `json:"id"`
@@ -222,9 +262,6 @@ type PortBindings struct {
// Address detection
AddressDetection bool `json:"address_detection"`
// Is Exclude From Firewall
IsExcludedFromFirewall bool `json:"is_excluded_from_firewall"`
// ID of version
VersionID uint64 `json:"version_id"`
@@ -319,7 +356,7 @@ type GatewayPort struct {
ExternalL4PortMin int64 `json:"external_l4_port_min"`
// External network port
ExternalNetworkPort interface{} `json:"external_network_port"`
ExternalNetworkPort *ExternalNetworkPort `json:"external_network_port"`
// ID of port
ID string `json:"id"`
@@ -441,6 +478,9 @@ type Segment struct {
// ID of segment
ID string `json:"id"`
// L2 connection port info
L2ConnectionPort *L2ConnectionPort `json:"l2_connection_port,omitempty"`
// Logical ports info
LogicalPortsInfo []EntityInfo `json:"logical_ports_info"`
@@ -456,6 +496,9 @@ type Segment struct {
// IPv6 subnet in CIDR notation
SubnetV6 string `json:"subnet_v6"`
// Type of segment
Type string `json:"type"`
// Update time
UpdatedAt time.Time `json:"updated_at"`
@@ -463,6 +506,69 @@ type Segment struct {
VersionID uint64 `json:"version_id"`
}
// L2ConnectionPort holds information about the L2 connection port of a segment
type L2ConnectionPort struct {
// ID of the L2 connection port
ID string `json:"id"`
// Access group ID
AccessGroupID string `json:"access_group_id"`
// ID of version
VersionID uint64 `json:"version_id"`
// L2 external network details
L2ExternalNetwork L2ExternalNetwork `json:"l2_external_network"`
// Created time
CreatedAt time.Time `json:"created_at"`
// ID of the user who created the port
CreatedBy string `json:"created_by"`
// Updated time
UpdatedAt time.Time `json:"updated_at"`
// ID of the user who last updated the port
UpdatedBy string `json:"updated_by"`
}
// L2ExternalNetwork holds information about an L2 external network
type L2ExternalNetwork struct {
// ID of the network
ID string `json:"id"`
// User-friendly name for the network
DisplayName string `json:"display_name"`
// Detailed description of the network
Description string `json:"description"`
// Bridge network name
BridgeNetworkName string `json:"bridge_network_name"`
// List of hypervisor IDs attached to the network
Hypervisors []string `json:"hypervisors"`
// VLAN tag
VLANTag uint64 `json:"vlan_tag"`
// ID of version
VersionID uint64 `json:"version_id"`
// Created time
CreatedAt time.Time `json:"created_at"`
// ID of the user who created the network
CreatedBy string `json:"created_by"`
// Updated time
UpdatedAt time.Time `json:"updated_at"`
// ID of the user who last updated the network
UpdatedBy string `json:"updated_by"`
}
type DHCPv4Config struct {
// DNS
DNS []string `json:"dns"`
@@ -518,16 +624,19 @@ type EntityInfo struct {
}
type Status struct {
// Common
Common string `json:"common"`
// Operation status
OperationStatus string `json:"operation_status"`
// Hypervisors status
Hypervisors []HypervisorStatus `json:"hypervisors"`
// Hypervisor status
HypervisorStatus string `json:"hypervisor_status"`
}
type HypervisorStatus struct {
// Status
Status string `json:"status"`
// Operation status
OperationStatus string `json:"operation_status"`
// Name of hypervisor
Name string `json:"name"`