openstack

package
v4.3.0 Latest Latest
Warning

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

Go to latest
Published: Mar 11, 2022 License: Apache-2.0 Imports: 22 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AllocationPool

type AllocationPool struct {
	Start string `json:"start"`
	End   string `json:"end"`
}

A AllocationPool represent an allocation pool for OpenStack virtual subnetwork

type BlockStorageVolume

type BlockStorageVolume struct {
	Region           string `json:"region"`
	Size             int    `json:"size"`
	Name             string `json:"name,omitempty"`
	Description      string `json:"description,omitempty"`
	AvailabilityZone string `json:"availability_zone,omitempty"`
}

A BlockStorageVolume represent an OpenStack volume (BlockStorage)

type BootVolume

type BootVolume struct {
	UUID                string `json:"uuid,,omitempty"`
	Source              string `json:"source_type"`
	Destination         string `json:"destination_type,omitempty"`
	Size                int    `json:"volume_size,omitempty"`
	VolumeType          string `json:"volume_type,omitempty"`
	DeleteOnTermination bool   `json:"delete_on_termination,omitempty"`
}

BootVolume used by a Compute Instance and its terraform json attributes

type ComputeFloatingIPAssociate

type ComputeFloatingIPAssociate struct {
	Region     string `json:"region"`
	FloatingIP string `json:"floating_ip"`
	InstanceID string `json:"instance_id"`
	FixedIP    string `json:"fixed_ip,omitempty"`
}

A ComputeFloatingIPAssociate associates a floating IP to an instance.

type ComputeInstance

type ComputeInstance struct {
	Region           string            `json:"region"`
	Name             string            `json:"name,omitempty"`
	ImageID          string            `json:"image_id,omitempty"`
	ImageName        string            `json:"image_name,omitempty"`
	BootVolume       *BootVolume       `json:"block_device,omitempty"`
	FlavorID         string            `json:"flavor_id,omitempty"`
	FlavorName       string            `json:"flavor_name,omitempty"`
	FloatingIP       string            `json:"floating_ip,omitempty"`
	SecurityGroups   []string          `json:"security_groups,omitempty"`
	AvailabilityZone string            `json:"availability_zone,omitempty"`
	Networks         []ComputeNetwork  `json:"network,omitempty"`
	KeyPair          string            `json:"key_pair,omitempty"`
	SchedulerHints   SchedulerHints    `json:"scheduler_hints,omitempty"`
	Metadata         map[string]string `json:"metadata,omitempty"`
	UserData         string            `json:"user_data,omitempty"`
	commons.Resource
}

A ComputeInstance represent an OpenStack compute

type ComputeNetwork

type ComputeNetwork struct {
	UUID          string `json:"uuid,omitempty"`
	Name          string `json:"name,omitempty"`
	Port          string `json:"port,omitempty"`
	FixedIPV4     string `json:"fixed_ip_v4,omitempty"`
	AccessNetwork bool   `json:"access_network,omitempty"`
}

A ComputeNetwork represent an OpenStack virtual network bound to a ComputeInstance

type ComputeVolumeAttach

type ComputeVolumeAttach struct {
	Region     string `json:"region"`
	VolumeID   string `json:"volume_id"`
	InstanceID string `json:"instance_id"`
	Device     string `json:"device,omitempty"`
}

A ComputeVolumeAttach attaches a volume to an instance.

type FloatingIP

type FloatingIP struct {
	Pool string `json:"pool,omitempty"`
}

A FloatingIP represent an OpenStack Floating IP pool configuration

type IP

type IP struct {
	Name string
	Pool string
	IsIP bool
}

An IP is... TODO consider refactoring this as it is not clear

type Network

type Network struct {
	Region     string `json:"region,omitempty"`
	Name       string `json:"name,omitempty"`
	Shared     string `json:"shared,omitempty"`
	AdminState string `json:"admin_state_up,omitempty"`
}

A Network represent an OpenStack virtual network

type SchedulerHints

type SchedulerHints struct {
	Group string `json:"group"`
}

SchedulerHints represents a scheduler_hints block for computeInstance

type ServerGroup

type ServerGroup struct {
	Name     string   `json:"name"`
	Policies []string `json:"policies"`
}

ServerGroup represents an OpenStack Server group https://www.terraform.io/docs/providers/openstack/r/compute_servergroup_v2.html

type Subnet

type Subnet struct {
	Region          string          `json:"region"`
	NetworkID       string          `json:"network_id"`
	CIDR            string          `json:"cidr"`
	IPVersion       int             `json:"ip_version,omitempty"`
	Name            string          `json:"name,omitempty"`
	GatewayIP       string          `json:"gateway_ip,omitempty"`
	AllocationPools *AllocationPool `json:"allocation_pools,omitempty"`
	EnableDHCP      bool            `json:"enable_dhcp,omitempty"`
}

A Subnet represent an OpenStack virtual subnetwork

type Volume

type Volume struct {
	VolumeID string `json:"volume_id"`
	Device   string `json:"device,omitempty"`
}

A Volume represent an OpenStack volume (BlockStorage) attachment to a ComputeInstance

Jump to

Keyboard shortcuts

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