Documentation
¶
Index ¶
- Constants
- Variables
- type BucketMounts
- type ClusterComposite
- type ClusterControlplane
- type ClusterDefaults
- type ClusterFeatures
- type ClusterInstalledFeature
- type ClusterNetwork
- type ClusterNode
- type ClusterNodes
- type ClusterState
- type FreeCIDRSlot
- type HostClusterMembership
- type HostDescription
- type HostEffectiveSizing
- type HostFeatures
- type HostInstalledFeature
- type HostLocalMount
- type HostMounts
- type HostNetwork
- type HostRemoteMount
- type HostSecurityGroups
- type HostShare
- type HostShares
- type HostSizing
- type HostSizingRequirements
- type HostSystem
- type HostVolume
- type HostVolumes
- type NetworkDescription
- type NetworkHosts
- type NetworkSecurityGroups
- type NetworkSingleHosts
- type NetworkSubnets
- type SecurityGroupBond
- type SecurityGroupHosts
- type SecurityGroupSubnets
- type SubnetDescription
- type SubnetHosts
- type SubnetSecurityGroups
- type VolumeAttachments
- type VolumeDescription
Constants ¶
const ( // SingleHostsCIDRMaskAddition contains the bits added as network part for single Host CIDR // Note: AWS limits netmask from /8 to /28, hence the 12... SingleHostsCIDRMaskAddition = 12 )
Variables ¶
var ( // SingleHostsMaxCIDRSlotValue contains the max index usable in function lib/utils/net.NthIncludedSubnet() to build CIDR SingleHostsMaxCIDRSlotValue = uint(math.Pow(2, SingleHostsCIDRMaskAddition) - 1) )
Functions ¶
This section is empty.
Types ¶
type BucketMounts ¶
type BucketMounts struct {
ByHostID map[string]string `json:"by_host_id"`
ByHostName map[string]string `json:"by_host_name"`
}
BucketMounts contains information about hosts that have mounted the bucket not FROZEN yet Note: if tagged as FROZEN, must not be changed ever.
Create a new version instead with needed supplemental/overriding fields
func (*BucketMounts) Clone ¶
func (bm *BucketMounts) Clone() (data.Clonable, error)
Clone ... (data.Clonable interface)
func (*BucketMounts) IsNull ¶
func (bm *BucketMounts) IsNull() bool
IsNull ... (data.Clonable interface)
type ClusterComposite ¶
type ClusterComposite struct {
// Array of tenants hosting a multi-tenant cluster (multi starting from 1)
Tenants []string `json:"tenants,omitempty"`
}
ClusterComposite ...
func (ClusterComposite) Clone ¶
func (c ClusterComposite) Clone() (data.Clonable, error)
Clone ... satisfies interface data.Clonable
func (*ClusterComposite) IsNull ¶
func (c *ClusterComposite) IsNull() bool
IsNull ... satisfies interface data.Clonable
type ClusterControlplane ¶
type ClusterControlplane struct {
VirtualIP *abstract.VirtualIP `json:"virtual_ip,omitempty"` // contains the VirtualIP used to contact the control plane when HA is enabled
}
ClusterControlplane contains information used by cluster control plane (when there is one) not FROZEN yet Note: if tagged as FROZEN, must not be changed ever.
Create a new version instead with needed supplemental fields
func (ClusterControlplane) Clone ¶
func (cp ClusterControlplane) Clone() (data.Clonable, error)
Clone ... satisfies interface data.Clonable
func (*ClusterControlplane) IsNull ¶
func (cp *ClusterControlplane) IsNull() bool
IsNull ... satisfies interface data.Clonable
type ClusterDefaults ¶
type ClusterDefaults struct {
// GatewaySizing keeps the default node definition
GatewaySizing abstract.HostEffectiveSizing `json:"gateway_sizing,omitempty"`
// MasterSizing keeps the default node definition
MasterSizing abstract.HostEffectiveSizing `json:"master_sizing,omitempty"`
// NodeSizing keeps the default node definition
NodeSizing abstract.HostEffectiveSizing `json:"node_sizing,omitempty"`
// Image keeps the default Linux image to use
Image string `json:"image,omitempty"`
}
ClusterDefaults contains default information used by the cluster after initial creation !!! FROZEN !!! !!! DEPRECATED !!! superseded by propertiesv2.ClusterDefaults
func (ClusterDefaults) Clone ¶
func (d ClusterDefaults) Clone() (data.Clonable, error)
Clone ... (data.Clonable interface)
func (*ClusterDefaults) IsNull ¶
func (d *ClusterDefaults) IsNull() bool
IsNull ... satisfies interface data.Clonable
type ClusterFeatures ¶
type ClusterFeatures struct {
// Installed ...
Installed map[string]*ClusterInstalledFeature `json:"installed"`
// Disabled keeps track of features normally automatically added with cluster creation,
// but explicitly disabled; if a disabled feature is added, must be removed from this property
Disabled map[string]struct{} `json:"disabled"`
}
ClusterFeatures ... not FROZEN yet
func (ClusterFeatures) Clone ¶
func (f ClusterFeatures) Clone() (data.Clonable, error)
Clone ... satisfies interface data.Clonable
func (*ClusterFeatures) IsNull ¶
func (f *ClusterFeatures) IsNull() bool
IsNull ... satisfies interface data.Clonable
type ClusterInstalledFeature ¶
type ClusterInstalledFeature struct {
Name string `json:"name"` // contains the name of the feature
FileName string `json:"filename"` // contains name of file used
RequiredBy map[string]struct{} `json:"required_by,omitempty"` // tells what feature(s) needs this one
Requires map[string]struct{} `json:"requires,omitempty"` // tells what feature(s) is(are) required by this one
}
ClusterInstalledFeature ... not FROZEN yet Note: if tagged as FROZEN, must not be changed ever.
Create a new version instead with needed supplemental/overriding fields
func NewClusterInstalledFeature ¶
func NewClusterInstalledFeature() *ClusterInstalledFeature
NewClusterInstalledFeature ...
func (ClusterInstalledFeature) Clone ¶
func (cif ClusterInstalledFeature) Clone() (data.Clonable, error)
Clone ... satisfies interface data.Clonable
func (*ClusterInstalledFeature) IsNull ¶
func (cif *ClusterInstalledFeature) IsNull() bool
IsNull ... satisfies interface data.Clonable
type ClusterNetwork ¶
type ClusterNetwork struct {
NetworkID string `json:"network_id,omitempty"` // contains the ID of the network
GatewayID string `json:"gateway_id,omitempty"` // DEPRECATED
GatewayIP string `json:"gateway_ip,omitempty"` // DEPRECATED
PublicIP string `json:"public_ip,omitempty"` // DEPRECATED
CIDR string `json:"cidr,omitempty"` // the network CIDR
}
ClusterNetwork contains network information relative to cluster !!! FROZEN !!! !!! DEPRECATED !!! superseded by propertiesv2.ClusterNetwork
func (ClusterNetwork) Clone ¶
func (n ClusterNetwork) Clone() (data.Clonable, error)
Clone ... satisfies interface data.Clonable
func (*ClusterNetwork) IsNull ¶
func (n *ClusterNetwork) IsNull() bool
IsNull ... satisfies interface data.Clonable
type ClusterNode ¶
type ClusterNode struct {
ID string `json:"id"` // ID of the node
Name string `json:"name"` // GetName of the node
PublicIP string `json:"public_ip"` // public ip of the node
PrivateIP string `json:"private_ip"` // private ip of the node
}
ClusterNode ...
type ClusterNodes ¶
type ClusterNodes struct {
Masters []*ClusterNode `json:"masters,omitempty"` // Masters contains the ID of the masters
PublicNodes []*ClusterNode `json:"public_nodes,omitempty"` // PublicNodes is a slice of IDs of the public cluster nodes
PrivateNodes []*ClusterNode `json:"private_nodes,omitempty"` // PrivateNodes is a slice of IDs of the private cluster nodes
MasterLastIndex int `json:"master_last_index,omitempty"` // MasterLastIndex
PrivateLastIndex int `json:"private_last_index,omitempty"` // PrivateLastIndex
PublicLastIndex int `json:"public_last_index,omitempty"` // PublicLastIndex
}
ClusterNodes ...
func (ClusterNodes) Clone ¶
func (n ClusterNodes) Clone() (data.Clonable, error)
Clone ... (data.Clonable interface)
func (*ClusterNodes) IsNull ¶
func (n *ClusterNodes) IsNull() bool
IsNull ... satisfies interface data.Clonable
type ClusterState ¶
type ClusterState struct {
State clusterstate.Enum `json:"state,omitempty"` // State of the cluster
StateCollectInterval time.Duration `json:"state_collect_interval,omitempty"` // in seconds
}
ClusterState contains the bare minimum information about the state of a cluster
func (ClusterState) Clone ¶
func (s ClusterState) Clone() (data.Clonable, error)
Clone ... satisfies interface data.Clonable
func (*ClusterState) IsNull ¶
func (s *ClusterState) IsNull() bool
IsNull ... satisfies interface data.Clonable
type FreeCIDRSlot ¶
type HostClusterMembership ¶
type HostClusterMembership struct {
Cluster string `json:"cluster,omitempty"` // Cluster is the name of the cluster the host is member of
Type string `json:"node_type,omitempty"` // Tells if host is "node", "master" or "gateway"
}
HostClusterMembership ... not FROZEN yet Note: if tagged as FROZEN, must not be changed ever.
Create a new version instead with needed supplemental fields
func NewHostClusterMembership ¶
func NewHostClusterMembership() *HostClusterMembership
NewHostClusterMembership ...
func (HostClusterMembership) Clone ¶
func (hcm HostClusterMembership) Clone() (data.Clonable, error)
Clone ...
func (*HostClusterMembership) IsNull ¶
func (hcm *HostClusterMembership) IsNull() bool
IsNull ... satisfies interface data.Clonable
func (*HostClusterMembership) Reset ¶
func (hcm *HostClusterMembership) Reset()
Reset resets the content of the property
type HostDescription ¶
type HostDescription struct {
Created time.Time `json:"created,omitempty"` // tells when the host has been created
Creator string `json:"creator,omitempty"` // contains information (forged) about the creator of the host
Updated time.Time `json:"modified,omitempty"` // tells the last time the host has been modified (by SafeScale)
Purpose string `json:"purpose,omitempty"` // contains a description of the use of a host (not set for now)
Tenant string `json:"tenant,omitempty"` // contains the tenant name used to create the host
Domain string `json:"domain,omitempty"` // Contains the domain used to define the FQDN of the host at creation (taken from first network attached to the host)
}
HostDescription contains description information for the host not FROZEN yet Note: if tagged as FROZEN, must not be changed ever.
Create a new version instead with needed supplemental fields
func (HostDescription) Clone ¶
func (hd HostDescription) Clone() (data.Clonable, error)
Clone ... (data.Clonable interface)
func (*HostDescription) IsNull ¶
func (hd *HostDescription) IsNull() bool
IsNull ... satisfies interface data.Clonable
type HostEffectiveSizing ¶
type HostEffectiveSizing struct {
Cores int `json:"cores,omitempty"`
RAMSize float32 `json:"ram_size,omitempty"`
DiskSize int `json:"disk_size,omitempty"`
GPUNumber int `json:"gpu_number,omitempty"`
GPUType string `json:"gpu_type,omitempty"`
CPUFreq float32 `json:"cpu_freq,omitempty"`
}
HostEffectiveSizing represent sizing elements of a host !!! FROZEN !!! Note: if tagged as FROZEN, must not be changed ever.
Create a new version instead with needed supplemental fields
func NewHostEffectiveSizing ¶
func NewHostEffectiveSizing() *HostEffectiveSizing
NewHostEffectiveSizing ...
type HostFeatures ¶
type HostFeatures struct {
Installed map[string]*HostInstalledFeature `json:"installed,omitempty"` // list of installed features, indexed on feature name
}
HostFeatures ... not FROZEN yet Note: if tagged as FROZEN, must not be changed ever.
Create a new version instead with needed supplemental fields
func (HostFeatures) Clone ¶
func (hf HostFeatures) Clone() (data.Clonable, error)
Clone ... (data.Clonable interface)
func (*HostFeatures) IsNull ¶
func (hf *HostFeatures) IsNull() bool
IsNull ... satisfies interface data.Clonable
func (*HostFeatures) Reset ¶
func (hf *HostFeatures) Reset()
Reset resets the content of the property
type HostInstalledFeature ¶
type HostInstalledFeature struct {
HostContext bool `json:"host_context,omitempty"` // tells if the feature has been explicitly installed for host (opposed to for cluster)
RequiredBy map[string]struct{} `json:"required_by,omitempty"` // tells what feature(s) needs this one
Requires map[string]struct{} `json:"requires,omitempty"`
}
HostInstalledFeature ... not FROZEN yet Note: if tagged as FROZEN, must not be changed ever.
Create a new version instead with needed supplemental/overriding fields
func NewHostInstalledFeature ¶
func NewHostInstalledFeature() *HostInstalledFeature
NewHostInstalledFeature ...
func (*HostInstalledFeature) Clone ¶
func (hif *HostInstalledFeature) Clone() (data.Clonable, error)
Clone ... satisfies interface data.Clonable
func (*HostInstalledFeature) IsNull ¶
func (hif *HostInstalledFeature) IsNull() bool
IsNull ... satisfies interface data.Clonable
type HostLocalMount ¶
type HostLocalMount struct {
Device string `json:"device"` // Device is the name of the device (/dev/... for local mount, host:/path for remote mount)
Path string `json:"mountpoint"` // Path is the mount point of the device
FileSystem string `json:"file_system"` // FileSystem tells the filesystem used
Options string `json:"options,omitempty"` // Options contains the mount options
}
HostLocalMount stores information about a device (as an attached volume) mount !!! FROZEN !!! Note: if tagged as FROZEN, must not be changed ever.
Create a new version instead with needed supplemental/overriding fields
func (HostLocalMount) Clone ¶
func (hlm HostLocalMount) Clone() (data.Clonable, error)
Clone ... satisfies interface data.Clonable
func (*HostLocalMount) IsNull ¶
func (hlm *HostLocalMount) IsNull() bool
IsNull ... satisfies interface data.Clonable
type HostMounts ¶
type HostMounts struct {
LocalMountsByDevice map[string]string `json:"local_mounts_by_device,omitempty"` // contains local mount path, indexed by devices
LocalMountsByPath map[string]*HostLocalMount `json:"local_mounts_by_path,omitempty"` // contains HostLocalMount structs, indexed by path
RemoteMountsByExport map[string]string `json:"remote_mounts_by_export,omitempty"` // contains local mount path, indexed by export
RemoteMountsByPath map[string]*HostRemoteMount `json:"remote_mounts_by_path,omitempty"` // contains HostRemoteMount, indexed by path
BucketMounts map[string]string `json:"bucket_mounts,omitempty"` // contains the path where the index (corresponding to Bucket name) is mounted
}
HostMounts contains information about mounts on the host !!! FROZEN !!! Note: if tagged as FROZEN, must not be changed ever.
Create a new version instead with needed supplemental/overriding fields
func (*HostMounts) Clone ¶
func (hm *HostMounts) Clone() (data.Clonable, error)
Clone ... (data.Clonable interface)
func (*HostMounts) IsNull ¶
func (hm *HostMounts) IsNull() bool
IsNull ... (data.Clonable interface)
type HostNetwork ¶
type HostNetwork struct {
IsGateway bool `json:"is_gateway,omitempty"` // Tells if host is a gateway of a network
DefaultGatewayID string `json:"default_gateway_id,omitempty"` // DEPRECATED: contains the ID of the Default getGateway
DefaultGatewayPrivateIP string `json:"default_gateway_private_ip,omitempty"` // DEPRECATED: contains the private IP of the default gateway
DefaultNetworkID string `json:"default_network_id,omitempty"` // contains the ID of the default Networking
NetworksByID map[string]string `json:"networks_by_id,omitempty"` // contains the name of each network bound to the host (indexed by ID)
NetworksByName map[string]string `json:"networks_by_name,omitempty"` // contains the ID of each network bound to the host (indexed by GetName)
PublicIPv4 string `json:"public_ip_v4,omitempty"` // contains the public IPv4 address of the host
PublicIPv6 string `json:"public_ip_v6,omitempty"` // contains the public IPv6 address of the host
IPv4Addresses map[string]string `json:"ipv4_addresses,omitempty"` // contains ipv4 (indexed by Networking ID) allocated to the host
IPv6Addresses map[string]string `json:"ipv6_addresses,omitempty"` // contains ipv6 (indexed by Networking ID) allocated to the host
}
HostNetwork contains network information related to Host !!! FROZEN !!! Note: if tagged as FROZEN, must not be changed ever.
Create a new version instead with needed supplemental fields
func (HostNetwork) Clone ¶
func (hn HostNetwork) Clone() (data.Clonable, error)
Clone ... satisfies interface data.Clonable
func (*HostNetwork) IsNull ¶
func (hn *HostNetwork) IsNull() bool
IsNull tells if the HostNetwork corresponds to a null value
type HostRemoteMount ¶
type HostRemoteMount struct {
Export string `json:"export"` // contains the path of the export (ie: <host>:/data/shared)
Path string `json:"mountpoint"` // Path is the mount point of the device
FileSystem string `json:"file_system"` // FileSystem tells the filesystem used
Options string `json:"options,omitempty"` // Options contains the mount options
}
HostRemoteMount stores information about a remote filesystem mount !!! FROZEN !!! Note: if tagged as FROZEN, must not be changed ever.
Create a new version instead with needed supplemental/overriding fields
type HostSecurityGroups ¶
type HostSecurityGroups struct {
// DefaultID string `json:"default_id,omitempty"` // contains the ID of the Security Group considered as default
ByID map[string]*SecurityGroupBond `json:"by_id,omitempty"` // map of security groups by IDs
ByName map[string]string `json:"by_name,omitempty"` // map of security group IDs by Names
}
HostSecurityGroups contains a list of security groups bound to the host !!! FROZEN !!! Note: if tagged as FROZEN, must not be changed ever.
Create a new version instead with needed supplemental fields
func NewHostSecurityGroups ¶
func NewHostSecurityGroups() *HostSecurityGroups
NewHostSecurityGroups ...
type HostShare ¶
type HostShare struct {
}
HostShare describes a filesystem exported from the host !!! FROZEN !!! Note: if tagged as FROZEN, must not be changed ever.
Create a new version instead with needed supplemental/overriding fields
type HostShares ¶
type HostShares struct {
}
HostShares contains information about the shares of the host !!! FROZEN !!! Note: if tagged as FROZEN, must not be changed ever.
Create a new version instead with needed supplemental/overriding fields
type HostSizing ¶
type HostSizing struct {
RequestedSize *HostSizingRequirements `json:"requested_size,omitempty"`
Template string `json:"template,omitempty"`
AllocatedSize *HostEffectiveSizing `json:"allocated_size,omitempty"`
}
HostSizing contains sizing information about the host !!! FROZEN !!! Note: if tagged as FROZEN, must not be changed ever.
Create a new version instead with needed supplemental fields
func (HostSizing) Clone ¶
func (hs HostSizing) Clone() (data.Clonable, error)
Clone ... (data.Clonable interface)
func (*HostSizing) IsNull ¶
func (hs *HostSizing) IsNull() bool
IsNull ... (data.Clonable interface)
type HostSizingRequirements ¶
type HostSizingRequirements struct {
Cores int `json:"cores,omitempty"`
RAMSize float32 `json:"ram_size,omitempty"`
DiskSize int `json:"disk_size,omitempty"`
GPUNumber int `json:"gpu_number,omitempty"`
GPUType string `json:"gpu_type,omitempty"`
CPUFreq float32 `json:"cpu_freq,omitempty"`
}
HostSizingRequirements describes host sizing requirements to fulfill !!! FROZEN !!! Note: if tagged as FROZEN, must not be changed ever.
Create a new version instead with needed supplemental fields
func NewHostSizingRequirements ¶
func NewHostSizingRequirements() *HostSizingRequirements
NewHostSizingRequirements ...
type HostSystem ¶
type HostSystem struct {
Type string `json:"type,omitempty"` // Type of operating system (ie linux, windows, ... Not normalized yet...)
Flavor string `json:"flavor,omitempty"` // Flavor of operating system (ie 'ubuntu server', 'windows server 2016', ... Not normalized yet...)
Image string `json:"image,omitempty"` // name of the provider's image used
HostName string `json:"hostname,omitempty"` // Hostname on the system
}
HostSystem contains information about the operating system not FROZEN yet Note: if tagged as FROZEN, must not be changed ever.
Create a new version instead with needed supplemental fields
type HostVolume ¶
type HostVolume struct {
AttachID string `json:"attach_id"` // contains the ID of the volume attachment
Device string `json:"device"` // contains the device on the host
}
HostVolume contains information about attached volume not FROZEN yet Note: if tagged as FROZEN, must not be changed ever.
Create a new version instead with needed supplemental fields
type HostVolumes ¶
type HostVolumes struct {
VolumesByID map[string]*HostVolume `json:"volumes_by_id,omitempty"` // contains the information of the attached volume, indexed by volume ID
VolumesByName map[string]string `json:"volumes_by_name,omitempty"` // contains the ID of attached volume, indexed by volume name
VolumesByDevice map[string]string `json:"volumes_by_device,omitempty"` // contains the ID of attached volume, indexed by device
DevicesByID map[string]string `json:"devices_by_id,omitempty"` // contains the device of attached volume, indexed by ID
}
HostVolumes contains information about attached volumes not FROZEN yet Note: if tagged as FROZEN, must not be changed ever.
Create a new version instead with needed supplemental fields
type NetworkDescription ¶
type NetworkDescription struct {
Purpose string `json:"purpose,omitempty"` // contains the purpose of this network
Created time.Time `json:"created,omitempty"` // Contains the date of creation of the network
Domain string `json:"domain,omitempty"` // Deprecated (moved to SubnetDescription): defines the domain to use for host FQDN in this network
}
NetworkDescription contains additional information describing the network, in V1 not FROZEN yet Note: if tagged as FROZEN, must not be changed ever.
Create a new version instead with needed supplemental fields
func NewNetworkDescription ¶
func NewNetworkDescription() *NetworkDescription
NewNetworkDescription ...
func (NetworkDescription) Clone ¶
func (nd NetworkDescription) Clone() (data.Clonable, error)
Clone ... (data.Clonable interface)
func (*NetworkDescription) IsNull ¶
func (nd *NetworkDescription) IsNull() bool
IsNull ... (data.Clonable interface)
type NetworkHosts ¶
type NetworkHosts struct {
ByID map[string]string `json:"by_id,omitempty"` // list of host names, indexed by host id
ByName map[string]string `json:"by_name,omitempty"` // list of host IDs, indexed by host name
}
NetworkHosts contains information about hosts connected to the network
func (NetworkHosts) Clone ¶
func (nh NetworkHosts) Clone() (data.Clonable, error)
Clone ... (data.Clonable interface)
func (*NetworkHosts) IsNull ¶
func (nh *NetworkHosts) IsNull() bool
IsNull ... (data.Clonable interface)
func (*NetworkHosts) Reset ¶
func (nh *NetworkHosts) Reset()
Reset resets the content of the property
type NetworkSecurityGroups ¶
type NetworkSecurityGroups struct {
ByID map[string]string `json:"by_id,omitempty"` // map of security group names indexed by IDs
ByName map[string]string `json:"by_name,omitempty"` // map of security group IDs indexed by names
}
NetworkSecurityGroups contains a list of security groups owned by the Network !!! FROZEN !!! Note: if tagged as FROZEN, must not be changed ever.
Create a new version instead with needed supplemental fields
func NewNetworkSecurityGroups ¶
func NewNetworkSecurityGroups() *NetworkSecurityGroups
NewNetworkSecurityGroups ...
type NetworkSingleHosts ¶
type NetworkSingleHosts struct {
FreeSlots []FreeCIDRSlot `json:"free_slots,omitempty"` // contains a list of free CIDR in Network for single Hosts
}
NetworkSingleHosts contains additional information describing the CIDR used for single Hosts !!! FROZEN !!! Note: if tagged as FROZEN, must not be changed ever.
Create a new version instead with needed supplemental fields
func NewNetworkSingleHosts ¶
func NewNetworkSingleHosts() *NetworkSingleHosts
NewNetworkSingleHosts ...
func (NetworkSingleHosts) Clone ¶
func (nsh NetworkSingleHosts) Clone() (data.Clonable, error)
Clone ... (data.Clonable interface)
func (*NetworkSingleHosts) FreeSlot ¶
func (nsh *NetworkSingleHosts) FreeSlot(index uint)
FreeSlot frees a slot
func (*NetworkSingleHosts) IsNull ¶
func (nsh *NetworkSingleHosts) IsNull() bool
IsNull ... (data.Clonable interface)
func (*NetworkSingleHosts) ReserveSlot ¶
func (nsh *NetworkSingleHosts) ReserveSlot() (index uint)
ReserveSlot returns the first free slot and remove it from list
type NetworkSubnets ¶
type NetworkSubnets struct {
ByID map[string]string `json:"by_id,omitempty"` // contains a list of subnet names indexed by id
ByName map[string]string `json:"by_name,omitempty"` // contains a list of subnet ids index by name
}
NetworkSubnets contains additional information describing the subnets in a network, in V1 !!! FROZEN !!! Note: if tagged as FROZEN, must not be changed ever.
Create a new version instead with needed supplemental fields
func (NetworkSubnets) Clone ¶
func (nd NetworkSubnets) Clone() (data.Clonable, error)
Clone ... (data.Clonable interface)
func (*NetworkSubnets) IsNull ¶
func (nd *NetworkSubnets) IsNull() bool
IsNull ... (data.Clonable interface)
type SecurityGroupBond ¶
type SecurityGroupBond struct {
Name string `json:"name"`
ID string `json:"id"`
Disabled bool `json:"disabled"`
FromSubnet bool `json:"from_subnet"`
}
SecurityGroupBond stores information about a resource bound to the SecurityGroup
func (SecurityGroupBond) Clone ¶
func (sgb SecurityGroupBond) Clone() (data.Clonable, error)
Clone ...
func (*SecurityGroupBond) IsNull ¶
func (sgb *SecurityGroupBond) IsNull() bool
IsNull ... Satisfies interface data.Clonable
type SecurityGroupHosts ¶
type SecurityGroupHosts struct {
DefaultFor string `json:"default_for,omitempty"` // contains the ID of the host for which the SecurityGroup is a default
ByID map[string]*SecurityGroupBond `json:"by_id,omitempty"` // contains the status of a security group (true=active, false=suspended) of hosts using it, indexed on host ID
ByName map[string]string `json:"by_name,omitempty"` // contains the status of a security group (true=active, false=suspended) of hosts using it, indexed on host Name
}
SecurityGroupHosts contains information about attached hosts to a security group not FROZEN yet Note: if tagged as FROZEN, must not be changed ever.
Create a new version instead with needed supplemental fields
func NewSecurityGroupHosts ¶
func NewSecurityGroupHosts() *SecurityGroupHosts
NewSecurityGroupHosts ...
type SecurityGroupSubnets ¶
type SecurityGroupSubnets struct {
DefaultFor string `json:"default_for,omitempty"` // contains the ID of the subnet for which the Security Group is default
ByID map[string]*SecurityGroupBond `json:"by_id,omitempty"` // contains the bonds of a Security Group with Subnets using it, indexed on Subnets' ID
ByName map[string]string `json:"by_name,omitempty"` // contains the Subnets' ID indexed on Subnets' Name
}
SecurityGroupSubnets contains information about attached subnets to a security group not FROZEN yet Note: if tagged as FROZEN, must not be changed ever.
Create a new version instead with needed supplemental fields
func NewSecurityGroupSubnets ¶
func NewSecurityGroupSubnets() *SecurityGroupSubnets
NewSecurityGroupSubnets ...
type SubnetDescription ¶
type SubnetDescription struct {
Purpose string `json:"purpose,omitempty"` // contains the purpose of this network
Created time.Time `json:"created,omitempty"` // Contains the date of creation if the network
Domain string `json:"domain,omitempty"` // Defines the domain to use for host FQDN in this network
}
SubnetDescription contains additional information describing the subnet, in V1 !!! FROZEN !!! Note: if tagged as FROZEN, must not be changed ever.
Create a new version instead with needed supplemental fields
func (SubnetDescription) Clone ¶
func (sd SubnetDescription) Clone() (data.Clonable, error)
Clone ... (data.Clonable interface)
func (*SubnetDescription) IsNull ¶
func (sd *SubnetDescription) IsNull() bool
IsNull ... (data.Clonable interface)
type SubnetHosts ¶
type SubnetHosts struct {
ByID map[string]string `json:"by_id,omitempty"` // list of host names, indexed by host id
ByName map[string]string `json:"by_name,omitempty"` // list of host IDs, indexed by host name
}
SubnetHosts contains information about hosts attached to the subnet
func (SubnetHosts) Clone ¶
func (sh SubnetHosts) Clone() (data.Clonable, error)
Clone ... (data.Clonable interface)
func (*SubnetHosts) IsNull ¶
func (sh *SubnetHosts) IsNull() bool
IsNull ... (data.Clonable interface)
type SubnetSecurityGroups ¶
type SubnetSecurityGroups struct {
DefaultID string `json:"default_id,omitempty"` // Contains the ID of the default security group
ByID map[string]*SecurityGroupBond `json:"by_id,omitempty"` // map of security groups by IDs; if value is true, security group is currently applied
ByName map[string]string `json:"by_name,omitempty"` // map of security group IDs by Names
}
SubnetSecurityGroups contains a list of security groups bound to the network, applied to each host created in it not FROZEN yet Note: if tagged as FROZEN, must not be changed ever.
Create a new version instead with needed supplemental fields
func NewSubnetSecurityGroups ¶
func NewSubnetSecurityGroups() *SubnetSecurityGroups
NewSubnetSecurityGroups ...
type VolumeAttachments ¶
type VolumeAttachments struct {
Hosts map[string]string `json:"hosts,omitempty"` // Contains the name of the hosts mounting the volume, indexed by host ID
}
VolumeAttachments contains host ids where the volume is attached !!!FROZEN!!! Note: if tagged as FROZEN, must not be changed ever.
Create a new version instead with needed supplemental fields
func (VolumeAttachments) Clone ¶
func (va VolumeAttachments) Clone() (data.Clonable, error)
Clone ... (data.Clonable interface)
func (*VolumeAttachments) IsNull ¶
func (va *VolumeAttachments) IsNull() bool
IsNull ... (data.Clonable interface)
type VolumeDescription ¶
type VolumeDescription struct {
// Purpose contains the reason of the existence of the volume
Purpose string `json:"purpose,omitempty"`
// Created contains the time of creation of the volume
Created time.Time `json:"created,omitempty"`
}
VolumeDescription contains additional information describing the volume, in V1 !!!FROZEN!!! Note: if tagged as FROZEN, must not be changed ever.
Create a new version instead with needed supplemental fields
Source Files
¶
- bucketmounts.go
- clustercomposite.go
- clustercontrolplane.go
- clusterdefaults.go
- clusterfeatures.go
- clusternetwork.go
- clusternodes.go
- clusterstate.go
- hostclustermembership.go
- hostdescription.go
- hostfeatures.go
- hostmounts.go
- hostnetwork.go
- hostsecuritygroups.go
- hostshares.go
- hostsizing.go
- hostsystem.go
- hostvolumes.go
- networkdescription.go
- networkhosts.go
- networksecuritygroups.go
- networksinglehosts.go
- networksubnets.go
- securitygroupbond.go
- securitygrouphosts.go
- securitygroupsubnets.go
- subnetdescription.go
- subnethosts.go
- subnetsecuritygroups.go
- volume.go