openstack

package
v0.2.7 Latest Latest
Warning

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

Go to latest
Published: Mar 30, 2021 License: Apache-2.0 Imports: 18 Imported by: 14

Documentation

Overview

Package openstack contains resources for the individual OpenStack projects supported in Gophercloud. It also includes functions to authenticate to an OpenStack cloud and for provisioning various service-level clients.

Example of Creating a Service Client

ao, err := openstack.AuthOptionsFromEnv()
provider, err := openstack.AuthenticatedClient(ao)
client, err := openstack.NewNetworkV2(client, golangsdk.EndpointOpts{
	Region: utils.GetRegion(ao),
})

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AuthOptionsFromEnv

func AuthOptionsFromEnv(envs ...*env) (golangsdk.AuthOptions, error)

AuthOptionsFromEnv fills out an identity.AuthOptions structure with the settings found on the various OpenStack OS_* environment variables.

The following variables provide sources of truth: OS_AUTH_URL, OS_USERNAME, OS_PASSWORD, OS_TENANT_ID, and OS_TENANT_NAME.

Of these, OS_USERNAME, OS_PASSWORD, and OS_AUTH_URL must have settings, or an error will result. OS_TENANT_ID, OS_TENANT_NAME, OS_PROJECT_ID, and OS_PROJECT_NAME are optional.

OS_TENANT_ID and OS_TENANT_NAME are mutually exclusive to OS_PROJECT_ID and OS_PROJECT_NAME. If OS_PROJECT_ID and OS_PROJECT_NAME are set, they will still be referred as "tenant" in Gophercloud.

To use this function, first set the OS_* environment variables (for example, by sourcing an `openrc` file), then:

opts, err := openstack.AuthOptionsFromEnv()
provider, err := openstack.AuthenticatedClient(opts)

func AuthOptionsFromInfo added in v0.0.9

func AuthOptionsFromInfo(authInfo *AuthInfo, authType AuthType) (golangsdk.AuthOptionsProvider, error)

AuthOptionsFromInfo builds auth options from auth info and type. Returns either AuthOptions or AKSKAuthOptions

func Authenticate

func Authenticate(client *golangsdk.ProviderClient, options golangsdk.AuthOptionsProvider) error

Authenticate or re-authenticate against the most recent identity service supported at the provided endpoint.

func AuthenticateV3

func AuthenticateV3(client *golangsdk.ProviderClient, options tokens3.AuthOptionsBuilder, eo golangsdk.EndpointOpts) error

AuthenticateV3 explicitly authenticates against the identity v3 service.

func AuthenticatedClient

func AuthenticatedClient(options golangsdk.AuthOptionsProvider) (*golangsdk.ProviderClient, error)

AuthenticatedClient logs in to an OpenStack cloud found at the identity endpoint specified by the options, acquires a token, and returns a Provider Client instance that's ready to operate.

If the full path to a versioned identity endpoint was specified (example: http://example.com:5000/v3), that path will be used as the endpoint to query.

If a versionless endpoint was specified (example: http://example.com:5000/), the endpoint will be queried to determine which versions of the identity service are available, then chooses the most recent or most supported version.

Example:

ao, err := openstack.AuthOptionsFromEnv()
provider, err := openstack.AuthenticatedClient(ao)
client, err := openstack.NewNetworkV2(client, golangsdk.EndpointOpts{
	Region: utils.GetRegion(ao),
})

func AuthenticatedClientFromCloud added in v0.0.9

func AuthenticatedClientFromCloud(cloud *Cloud) (*golangsdk.ProviderClient, error)

AuthenticatedClientFromCloud create new authenticated client for given cloud config

func ContainsProjectId

func ContainsProjectId(endpointUrl string) bool

ContainsProjectId detects whether or not the encpoint url contains a projectid

func NewAntiDDoSV1

NewAntiDDoSV1 creates a ServiceClient that may be used with the v1 Anti DDoS Service package.

func NewAutoScalingV1

NewAutoScalingV1 creates a ServiceClient that may be used to access the auto-scaling service of OpenTelekomCloud public cloud

func NewBlockStorageV1

func NewBlockStorageV1(client *golangsdk.ProviderClient, eo golangsdk.EndpointOpts) (*golangsdk.ServiceClient, error)

NewBlockStorageV1 creates a ServiceClient that may be used to access the v1 block storage service.

func NewBlockStorageV2

func NewBlockStorageV2(client *golangsdk.ProviderClient, eo golangsdk.EndpointOpts) (*golangsdk.ServiceClient, error)

NewBlockStorageV2 creates a ServiceClient that may be used to access the v2 block storage service.

func NewBlockStorageV3

func NewBlockStorageV3(client *golangsdk.ProviderClient, eo golangsdk.EndpointOpts) (*golangsdk.ServiceClient, error)

NewBlockStorageV3 creates a ServiceClient that may be used to access the v3 block storage service.

func NewCBRService added in v0.2.1

NewCBRService create a ServiceClient that can be used to access the Cloud Backup and Recovery service.

func NewCCE

NewCCE creates a ServiceClient that may be used to access the CCE service.

func NewCSBSService

NewCSBSService creates a ServiceClient that can be used to access the Cloud Server Backup service.

func NewCSSService added in v0.2.1

NewCSSService creates a ServiceClient that can be used to access the Cloud Search service.

func NewCTSService

NewCTSService creates a ServiceClient that can be used to access the Cloud Trace service.

func NewClient

func NewClient(endpoint string) (*golangsdk.ProviderClient, error)

NewClient prepares an unauthenticated ProviderClient instance. Most users will probably prefer using the AuthenticatedClient function instead.

This is useful if you wish to explicitly control the version of the identity service that's used for authentication explicitly, for example.

A basic example of using this would be:

ao, err := openstack.AuthOptionsFromEnv()
provider, err := openstack.NewClient(ao.IdentityEndpoint)
client, err := openstack.NewIdentityV3(provider, golangsdk.EndpointOpts{})

func NewComputeV1

NewComputeV1 creates a ServiceClient that may be used with the v1 compute package.

func NewComputeV2

NewComputeV2 creates a ServiceClient that may be used with the v2 compute package.

func NewDCSServiceV1

NewDCSServiceV1 creates a ServiceClient that may be used to access the v1 Distributed Cache Service.

func NewDDSServiceV3 added in v0.2.0

NewDDSServiceV3 creates a ServiceClient that may be used to access the Document Database Service.

func NewDMSServiceV1

NewDMSServiceV1 creates a ServiceClient that may be used to access the v1 Distributed Message Service.

func NewDNSV2

NewDNSV2 creates a ServiceClient that may be used to access the v2 DNS service.

func NewDeHServiceV1

NewDeHServiceV1 creates a ServiceClient that may be used to access the v1 Dedicated Hosts service.

func NewELBV1

NewELBV1 creates a ServiceClient that may be used to access the ELB service.

func NewElbV1

NewOtcV1 creates a ServiceClient that may be used with the v1 network package.

func NewIdentityV3

NewIdentityV3 creates a ServiceClient that may be used to access the v3 identity service.

func NewImageServiceV1

func NewImageServiceV1(client *golangsdk.ProviderClient, eo golangsdk.EndpointOpts) (*golangsdk.ServiceClient, error)

NewImageServiceV1 creates a ServiceClient that may be used to access the v1 image service.

func NewImageServiceV2

func NewImageServiceV2(client *golangsdk.ProviderClient, eo golangsdk.EndpointOpts) (*golangsdk.ServiceClient, error)

NewImageServiceV2 creates a ServiceClient that may be used to access the v2 image service.

func NewKMSV1

NewKMSV1 creates a ServiceClient that may be used to access the KMS service.

func NewLTSV2

NewLTSV2 creates a ServiceClient that may be used to access the LTS service.

func NewMapReduceV1

NewMapReduceV1 creates a ServiceClient that may be used with the v1 MapReduce service.

func NewNatV2

NewNatV2 creates a ServiceClient that may be used with the v2 nat package.

func NewNetworkV1

NewNetworkV1 creates a ServiceClient that may be used with the v1 network package.

func NewNetworkV2

NewNetworkV2 creates a ServiceClient that may be used with the v2 network package.

func NewOBSService

NewOBSService creates a ServiceClient that may be used to access the Object Storage Service.

func NewObjectStorageV1

func NewObjectStorageV1(client *golangsdk.ProviderClient, eo golangsdk.EndpointOpts) (*golangsdk.ServiceClient, error)

NewObjectStorageV1 creates a ServiceClient that may be used with the v1 object storage package.

func NewOrchestrationV1

func NewOrchestrationV1(client *golangsdk.ProviderClient, eo golangsdk.EndpointOpts) (*golangsdk.ServiceClient, error)

NewOrchestrationV1 creates a ServiceClient that may be used to access the v1 orchestration service.

func NewRDSV1

NewRDSV1 creates a ServiceClient that may be used to access the RDS service.

func NewRDSV3

NewRDSV3 creates a ServiceClient that may be used to access the RDS service.

func NewSMNV2

NewSMNV2 creates a ServiceClient that may be used to access the SMN service.

func NewSharedFileSystemTurboV1 added in v0.2.7

func NewSharedFileSystemTurboV1(client *golangsdk.ProviderClient, eo golangsdk.EndpointOpts) (*golangsdk.ServiceClient, error)

NewSharedFileSystemTurboV1 creates a ServiceClient that may be used to access the v2 shared file system turbo service.

func NewSharedFileSystemV2

func NewSharedFileSystemV2(client *golangsdk.ProviderClient, eo golangsdk.EndpointOpts) (*golangsdk.ServiceClient, error)

NewSharedFileSystemV2 creates a ServiceClient that may be used to access the v2 shared file system service.

func NewVBS

NewVBS creates a service client that is used for VBS.

func NewVBSServiceV2 added in v0.2.7

func NewWAFV1

NewWAF creates a ServiceClient that may be used to access the WAF service.

func SDRSV1

SDRSV1 creates a ServiceClient that may be used with the v1 SDRS service.

func StdRequestOpts added in v0.0.6

func StdRequestOpts() *golangsdk.RequestOpts

func V3EndpointURL

func V3EndpointURL(catalog *tokens3.ServiceCatalog, opts golangsdk.EndpointOpts) (string, error)

V3EndpointURL discovers the endpoint URL for a specific service from a Catalog acquired during the v3 identity service.

The specified EndpointOpts are used to identify a unique, unambiguous endpoint to return. It's an error both when multiple endpoints match the provided criteria and when none do. The minimum that can be specified is a Type, but you will also often need to specify a Name and/or a Region depending on what's available on your OpenStack deployment.

Types

type AuthInfo added in v0.0.9

type AuthInfo struct {
	// AuthURL is the keystone/identity endpoint URL.
	AuthURL string `yaml:"auth_url,omitempty" json:"auth_url,omitempty"`

	// Token is a pre-generated authentication token.
	Token string `yaml:"token,omitempty" json:"token,omitempty"`

	// Username is the username of the user.
	Username string `yaml:"username,omitempty" json:"username,omitempty"`

	// UserID is the unique ID of a user.
	UserID string `yaml:"user_id,omitempty" json:"user_id,omitempty"`

	// Password is the password of the user.
	Password string `yaml:"password,omitempty" json:"password,omitempty"`

	// ProjectName is the common/human-readable name of a project.
	// Users can be scoped to a project.
	// ProjectName on its own is not enough to ensure a unique scope. It must
	// also be combined with either a ProjectDomainName or ProjectDomainID.
	// ProjectName cannot be combined with ProjectID in a scope.
	ProjectName string `yaml:"project_name,omitempty" json:"project_name,omitempty"`

	// ProjectID is the unique ID of a project.
	// It can be used to scope a user to a specific project.
	ProjectID string `yaml:"project_id,omitempty" json:"project_id,omitempty"`

	// UserDomainName is the name of the domain where a user resides.
	// It is used to identify the source domain of a user.
	UserDomainName string `yaml:"user_domain_name,omitempty" json:"user_domain_name,omitempty"`

	// UserDomainID is the unique ID of the domain where a user resides.
	// It is used to identify the source domain of a user.
	UserDomainID string `yaml:"user_domain_id,omitempty" json:"user_domain_id,omitempty"`

	// ProjectDomainName is the name of the domain where a project resides.
	// It is used to identify the source domain of a project.
	// ProjectDomainName can be used in addition to a ProjectName when scoping
	// a user to a specific project.
	ProjectDomainName string `yaml:"project_domain_name,omitempty" json:"project_domain_name,omitempty"`

	// ProjectDomainID is the name of the domain where a project resides.
	// It is used to identify the source domain of a project.
	// ProjectDomainID can be used in addition to a ProjectName when scoping
	// a user to a specific project.
	ProjectDomainID string `yaml:"project_domain_id,omitempty" json:"project_domain_id,omitempty"`

	// DomainName is the name of a domain which can be used to identify the
	// source domain of either a user or a project.
	// If UserDomainName and ProjectDomainName are not specified, then DomainName
	// is used as a default choice.
	// It can also be used be used to specify a domain-only scope.
	DomainName string `yaml:"domain_name,omitempty" json:"domain_name,omitempty"`

	// DomainID is the unique ID of a domain which can be used to identify the
	// source domain of either a user or a project.
	// If UserDomainID and ProjectDomainID are not specified, then DomainID is
	// used as a default choice.
	// It can also be used be used to specify a domain-only scope.
	DomainID string `yaml:"domain_id,omitempty" json:"domain_id,omitempty"`

	// DefaultDomain is the domain ID to fall back on if no other domain has
	// been specified and a domain is required for scope.
	DefaultDomain string `yaml:"default_domain,omitempty" json:"default_domain,omitempty"`

	// AK/SK auth means
	AccessKey string `yaml:"ak,omitempty" json:"ak,omitempty"`
	SecretKey string `yaml:"sk,omitempty" json:"sk,omitempty"`

	// OTC Agency config
	AgencyName string `yaml:"target_agency_name,omitempty" json:"agency_name,omitempty"`
	// AgencyDomainName is the name of domain who created the agency
	AgencyDomainName string `yaml:"target_domain_id,omitempty" json:"target_domain_id,omitempty"`
	// DelegatedProject is the name of delegated project
	DelegatedProject string `yaml:"target_project_name,omitempty" json:"target_project_name,omitempty"`
}

AuthInfo represents the auth section of a cloud entry

type AuthType added in v0.0.2

type AuthType string

AuthType represents a valid method of authentication: `password`, `token`, `aksk` or `agency`

type Cloud added in v0.0.2

type Cloud struct {
	Cloud      string        `yaml:"cloud,omitempty" json:"cloud,omitempty"`
	Profile    string        `yaml:"profile,omitempty" json:"profile,omitempty"`
	AuthType   AuthType      `yaml:"auth_type,omitempty" json:"auth_type,omitempty"`
	AuthInfo   AuthInfo      `yaml:"auth,omitempty" json:"auth,omitempty"`
	RegionName string        `yaml:"region_name,omitempty" json:"region_name,omitempty"`
	Regions    []interface{} `yaml:"regions,omitempty" json:"regions,omitempty"`

	// EndpointType and Interface both specify whether to use the public, internal,
	// or admin interface of a service. They should be considered synonymous, but
	// EndpointType will take precedence when both are specified.
	EndpointType string `yaml:"endpoint_type,omitempty" json:"endpoint_type,omitempty"`
	Interface    string `yaml:"interface,omitempty" json:"interface,omitempty"`

	// API Version overrides.
	IdentityAPIVersion string `yaml:"identity_api_version,omitempty" json:"identity_api_version,omitempty"`
	VolumeAPIVersion   string `yaml:"volume_api_version,omitempty" json:"volume_api_version,omitempty"`

	// Verify whether or not SSL API requests should be verified.
	Verify *bool `yaml:"verify,omitempty" json:"verify,omitempty"`

	// CACertFile a path to a CA Cert bundle that can be used as part of
	// verifying SSL API requests.
	CACertFile string `yaml:"cacert,omitempty" json:"cacert,omitempty"`

	// ClientCertFile a path to a client certificate to use as part of the SSL
	// transaction.
	ClientCertFile string `yaml:"cert,omitempty" json:"cert,omitempty"`

	// ClientKeyFile a path to a client key to use as part of the SSL
	// transaction.
	ClientKeyFile string `yaml:"key,omitempty" json:"key,omitempty"`
}

Cloud represents an entry in a clouds.yaml/public-clouds.yaml/secure.yaml file.

type Config added in v0.0.2

type Config struct {
	DefaultCloud string           `yaml:"-" json:"-"`
	Clouds       map[string]Cloud `yaml:"clouds" json:"clouds"`
}

Config represents a collection of Cloud entries in a clouds.yaml file. The format of clouds.yaml is documented at https://docs.openstack.org/os-client-config/latest/user/configuration.html.

type Env added in v0.0.2

type Env interface {
	// GetEnv finds first non-empty <prefixed> env variable to be used
	GetEnv(keys ...string) string
	// GetPrefix returns used prefix
	Prefix() string
	// Cloud returns full cloud configuration
	Cloud(name ...string) (*Cloud, error)
	// AuthenticatedClient is the main meaning on `Env`, providing prefix-based
	// way to get authenticated client
	AuthenticatedClient(cloudName ...string) (*golangsdk.ProviderClient, error)
	// contains filtered or unexported methods
}

This is helper for env-prefixed loading

func NewEnv added in v0.0.2

func NewEnv(prefix string, lazy ...bool) Env

NewEnv create new <prefixed> env loader, lazy by default

type ErrEndpointNotFound

type ErrEndpointNotFound struct{ golangsdk.BaseError }

ErrEndpointNotFound is the error when no suitable endpoint can be found in the user's catalog

func (ErrEndpointNotFound) Error

func (e ErrEndpointNotFound) Error() string

type ErrInvalidAvailabilityProvided

type ErrInvalidAvailabilityProvided struct{ golangsdk.ErrInvalidInput }

ErrInvalidAvailabilityProvided is the error when an invalid endpoint availability is provided

func (ErrInvalidAvailabilityProvided) Error

type ErrMultipleMatchingEndpointsV3

type ErrMultipleMatchingEndpointsV3 struct {
	golangsdk.BaseError
	Endpoints []tokens3.Endpoint
}

ErrMultipleMatchingEndpointsV3 is the error when more than one endpoint for the given options is found in the v3 catalog

func (ErrMultipleMatchingEndpointsV3) Error

type ErrNoAuthURL

type ErrNoAuthURL struct{ golangsdk.ErrInvalidInput }

ErrNoAuthURL is the error when the OS_AUTH_URL environment variable is not found

func (ErrNoAuthURL) Error

func (e ErrNoAuthURL) Error() string

type ErrNoPassword

type ErrNoPassword struct{ golangsdk.ErrInvalidInput }

ErrNoPassword is the error when the OS_PASSWORD environment variable is not found

func (ErrNoPassword) Error

func (e ErrNoPassword) Error() string

type ErrNoUsername

type ErrNoUsername struct{ golangsdk.ErrInvalidInput }

ErrNoUsername is the error when the OS_USERNAME environment variable is not found

func (ErrNoUsername) Error

func (e ErrNoUsername) Error() string

type VendorConfig added in v0.0.2

type VendorConfig struct {
	Clouds map[string]Cloud `yaml:"public-clouds" json:"public-clouds"`
}

VendorConfig represents a collection of PublicCloud entries in clouds-public.yaml file. The format of the clouds-public.yml is documented at https://docs.openstack.org/python-openstackclient/latest/configuration/

Directories

Path Synopsis
antiddos
v1/antiddos
The Anti-DDoS traffic cleaning service (Anti-DDoS for short) defends resources (Elastic Cloud Servers (ECSs), Elastic Load Balance (ELB) instances, and Bare Metal Servers (BMSs)) on OpenTelekomCloud against network- and application-layer distributed denial of service (DDoS) attacks and sends alarms immediately when detecting an attack.
The Anti-DDoS traffic cleaning service (Anti-DDoS for short) defends resources (Elastic Cloud Servers (ECSs), Elastic Load Balance (ELB) instances, and Bare Metal Servers (BMSs)) on OpenTelekomCloud against network- and application-layer distributed denial of service (DDoS) attacks and sends alarms immediately when detecting an attack.
autoscaling
blockstorage
extensions/quotasets
Package quotasets enables retrieving and managing Block Storage quotas.
Package quotasets enables retrieving and managing Block Storage quotas.
extensions/quotasets/testing
quotasets unit tests
quotasets unit tests
extensions/schedulerstats
Package schedulerstats returns information about block storage pool capacity and utilisation.
Package schedulerstats returns information about block storage pool capacity and utilisation.
extensions/volumeactions
Package volumeactions provides information and interaction with volumes in the OpenStack Block Storage service.
Package volumeactions provides information and interaction with volumes in the OpenStack Block Storage service.
extensions/volumeactions/testing
volumeactions unit tests
volumeactions unit tests
extensions/volumetenants
Package volumetenants provides the ability to extend a volume result with tenant/project information.
Package volumetenants provides the ability to extend a volume result with tenant/project information.
noauth
Package noauth creates a "noauth" *golangsdk.ServiceClient for use in Cinder environments configured with the noauth authentication middleware.
Package noauth creates a "noauth" *golangsdk.ServiceClient for use in Cinder environments configured with the noauth authentication middleware.
noauth/testing
noauth unit tests
noauth unit tests
v1/apiversions
Package apiversions provides information and interaction with the different API versions for the OpenStack Block Storage service, code-named Cinder.
Package apiversions provides information and interaction with the different API versions for the OpenStack Block Storage service, code-named Cinder.
v1/apiversions/testing
apiversions_v1
apiversions_v1
v1/snapshots
Package snapshots provides information and interaction with snapshots in the OpenStack Block Storage service.
Package snapshots provides information and interaction with snapshots in the OpenStack Block Storage service.
v1/snapshots/testing
snapshots_v1
snapshots_v1
v1/volumes
Package volumes provides information and interaction with volumes in the OpenStack Block Storage service.
Package volumes provides information and interaction with volumes in the OpenStack Block Storage service.
v1/volumes/testing
volumes_v1
volumes_v1
v1/volumetypes
Package volumetypes provides information and interaction with volume types in the OpenStack Block Storage service.
Package volumetypes provides information and interaction with volume types in the OpenStack Block Storage service.
v1/volumetypes/testing
volumetypes_v1
volumetypes_v1
v2/snapshots
Package snapshots provides information and interaction with snapshots in the OpenStack Block Storage service.
Package snapshots provides information and interaction with snapshots in the OpenStack Block Storage service.
v2/snapshots/testing
snapshots_v2
snapshots_v2
v2/volumes
Package volumes provides information and interaction with volumes in the OpenStack Block Storage service.
Package volumes provides information and interaction with volumes in the OpenStack Block Storage service.
v2/volumes/testing
volumes_v2
volumes_v2
v3/snapshots
Package snapshots provides information and interaction with snapshots in the OpenStack Block Storage service.
Package snapshots provides information and interaction with snapshots in the OpenStack Block Storage service.
v3/snapshots/testing
snapshots_v3
snapshots_v3
v3/volumes
Package volumes provides information and interaction with volumes in the OpenStack Block Storage service.
Package volumes provides information and interaction with volumes in the OpenStack Block Storage service.
v3/volumes/testing
volumes_v3
volumes_v3
v3/volumetypes/testing
volume_types
volume_types
bms
v2/flavors
Package flavors enables management and retrieval of Flavors BMS service.
Package flavors enables management and retrieval of Flavors BMS service.
v2/keypairs
Package keypairs provides the ability to manage key pairs as well as create bms with a specified key pair.
Package keypairs provides the ability to manage key pairs as well as create bms with a specified key pair.
v2/nics
Package nics enables management and retrieval of NICs BMS service.
Package nics enables management and retrieval of NICs BMS service.
v2/servers
Package servers enables management and retrieval of Servers BMS service.
Package servers enables management and retrieval of Servers BMS service.
v2/tags
Package tags enables management and retrieval of Tags BMS service.
Package tags enables management and retrieval of Tags BMS service.
cbr
cce
v3/clusters
Package Clusters enables management and retrieval of Clusters CCE service.
Package Clusters enables management and retrieval of Clusters CCE service.
v3/clusters/testing
cluster unit tests
cluster unit tests
v3/nodes/testing
node unit tests
node unit tests
ces
cloudeyeservice
common
extensions
Package extensions provides information and interaction with the different extensions available for an OpenStack service.
Package extensions provides information and interaction with the different extensions available for an OpenStack service.
extensions/testing
common extensions unit tests
common extensions unit tests
compute
v2/extensions
Package extensions provides information and interaction with the different extensions available for the OpenStack Compute service.
Package extensions provides information and interaction with the different extensions available for the OpenStack Compute service.
v2/extensions/aggregates
Package aggregates manages information about the host aggregates in the OpenStack cloud.
Package aggregates manages information about the host aggregates in the OpenStack cloud.
v2/extensions/attachinterfaces
Package attachinterfaces provides the ability to retrieve and manage network interfaces through Nova.
Package attachinterfaces provides the ability to retrieve and manage network interfaces through Nova.
v2/extensions/attachinterfaces/testing
attachinterfaces unit tests
attachinterfaces unit tests
v2/extensions/availabilityzones
Package availabilityzones provides the ability to get lists and detailed availability zone information and to extend a server result with availability zone information.
Package availabilityzones provides the ability to get lists and detailed availability zone information and to extend a server result with availability zone information.
v2/extensions/availabilityzones/testing
availabilityzones unittests
availabilityzones unittests
v2/extensions/bootfromvolume
Package bootfromvolume extends a server create request with the ability to specify block device options.
Package bootfromvolume extends a server create request with the ability to specify block device options.
v2/extensions/bootfromvolume/testing
bootfromvolume unit tests
bootfromvolume unit tests
v2/extensions/defsecrules
Package defsecrules enables management of default security group rules.
Package defsecrules enables management of default security group rules.
v2/extensions/defsecrules/testing
defsecrules unit tests
defsecrules unit tests
v2/extensions/diskconfig
Package diskconfig provides information and interaction with the Disk Config extension that works with the OpenStack Compute service.
Package diskconfig provides information and interaction with the Disk Config extension that works with the OpenStack Compute service.
v2/extensions/diskconfig/testing
diskconfig unit tests
diskconfig unit tests
v2/extensions/evacuate
Package evacuate provides functionality to evacuates servers that have been provisioned by the OpenStack Compute service from a failed host to a new host.
Package evacuate provides functionality to evacuates servers that have been provisioned by the OpenStack Compute service from a failed host to a new host.
v2/extensions/evacuate/testing
compute_extensions_evacuate_v2
compute_extensions_evacuate_v2
v2/extensions/extendedserverattributes
Package extendedserverattributes provides the ability to extend a server result with the extended usage information.
Package extendedserverattributes provides the ability to extend a server result with the extended usage information.
v2/extensions/extendedstatus
Package extendedstatus provides the ability to extend a server result with the extended status information.
Package extendedstatus provides the ability to extend a server result with the extended status information.
v2/extensions/floatingips
Package floatingips provides the ability to manage floating ips through the Nova API.
Package floatingips provides the ability to manage floating ips through the Nova API.
v2/extensions/floatingips/testing
floatingips unit tests
floatingips unit tests
v2/extensions/hypervisors
Package hypervisors returns details about list of hypervisors, shows details for a hypervisor and shows summary statistics for all hypervisors over all compute nodes in the OpenStack cloud.
Package hypervisors returns details about list of hypervisors, shows details for a hypervisor and shows summary statistics for all hypervisors over all compute nodes in the OpenStack cloud.
v2/extensions/keypairs
Package keypairs provides the ability to manage key pairs as well as create servers with a specified key pair.
Package keypairs provides the ability to manage key pairs as well as create servers with a specified key pair.
v2/extensions/keypairs/testing
keypairs unit tests
keypairs unit tests
v2/extensions/limits
Package limits shows rate and limit information for a tenant/project.
Package limits shows rate and limit information for a tenant/project.
v2/extensions/lockunlock
Package lockunlock provides functionality to lock and unlock servers that have been provisioned by the OpenStack Compute service.
Package lockunlock provides functionality to lock and unlock servers that have been provisioned by the OpenStack Compute service.
v2/extensions/lockunlock/testing
unlocklock unit tests
unlocklock unit tests
v2/extensions/migrate
Package migrate provides functionality to migrate servers that have been provisioned by the OpenStack Compute service.
Package migrate provides functionality to migrate servers that have been provisioned by the OpenStack Compute service.
v2/extensions/migrate/testing
compute_extensions_startstop_v2
compute_extensions_startstop_v2
v2/extensions/networks
Package networks provides the ability to create and manage networks in cloud environments using nova-network.
Package networks provides the ability to create and manage networks in cloud environments using nova-network.
v2/extensions/networks/testing
networks unit tests
networks unit tests
v2/extensions/pauseunpause
Package pauseunpause provides functionality to pause and unpause servers that have been provisioned by the OpenStack Compute service.
Package pauseunpause provides functionality to pause and unpause servers that have been provisioned by the OpenStack Compute service.
v2/extensions/pauseunpause/testing
pauseunpause unit tests
pauseunpause unit tests
v2/extensions/quotasets
Package quotasets enables retrieving and managing Compute quotas.
Package quotasets enables retrieving and managing Compute quotas.
v2/extensions/quotasets/testing
quotasets unit tests
quotasets unit tests
v2/extensions/rescueunrescue
Package rescueunrescue provides the ability to place a server into rescue mode and to return it back.
Package rescueunrescue provides the ability to place a server into rescue mode and to return it back.
v2/extensions/resetstate
Package resetstate provides functionality to reset the state of a server that has been provisioned by the OpenStack Compute service.
Package resetstate provides functionality to reset the state of a server that has been provisioned by the OpenStack Compute service.
v2/extensions/schedulerhints
Package schedulerhints extends the server create request with the ability to specify additional parameters which determine where the server will be created in the OpenStack cloud.
Package schedulerhints extends the server create request with the ability to specify additional parameters which determine where the server will be created in the OpenStack cloud.
v2/extensions/schedulerhints/testing
schedulerhints unit tests
schedulerhints unit tests
v2/extensions/secgroups
Package secgroups provides the ability to manage security groups through the Nova API.
Package secgroups provides the ability to manage security groups through the Nova API.
v2/extensions/secgroups/testing
secgroups unit tests
secgroups unit tests
v2/extensions/servergroups
Package servergroups provides the ability to manage server groups.
Package servergroups provides the ability to manage server groups.
v2/extensions/servergroups/testing
servergroups unit tests
servergroups unit tests
v2/extensions/serverusage
Package serverusage provides the ability the ability to extend a server result with the extended usage information.
Package serverusage provides the ability the ability to extend a server result with the extended usage information.
v2/extensions/startstop
Package startstop provides functionality to start and stop servers that have been provisioned by the OpenStack Compute service.
Package startstop provides functionality to start and stop servers that have been provisioned by the OpenStack Compute service.
v2/extensions/startstop/testing
startstop unit tests
startstop unit tests
v2/extensions/suspendresume
Package suspendresume provides functionality to suspend and resume servers that have been provisioned by the OpenStack Compute service.
Package suspendresume provides functionality to suspend and resume servers that have been provisioned by the OpenStack Compute service.
v2/extensions/suspendresume/testing
suspendresume unit tests
suspendresume unit tests
v2/extensions/tenantnetworks
Package tenantnetworks provides the ability for tenants to see information about the networks they have access to.
Package tenantnetworks provides the ability for tenants to see information about the networks they have access to.
v2/extensions/tenantnetworks/testing
tenantnetworks unit tests
tenantnetworks unit tests
v2/extensions/testing
extensions unit tests
extensions unit tests
v2/extensions/usage
Package usage provides information and interaction with the SimpleTenantUsage extension for the OpenStack Compute service.
Package usage provides information and interaction with the SimpleTenantUsage extension for the OpenStack Compute service.
v2/extensions/usage/testing
simple tenant usage unit tests
simple tenant usage unit tests
v2/extensions/volumeattach
Package volumeattach provides the ability to attach and detach volumes from servers.
Package volumeattach provides the ability to attach and detach volumes from servers.
v2/extensions/volumeattach/testing
volumeattach unit tests
volumeattach unit tests
v2/flavors
Package flavors provides information and interaction with the flavor API in the OpenStack Compute service.
Package flavors provides information and interaction with the flavor API in the OpenStack Compute service.
v2/flavors/testing
flavors unit tests
flavors unit tests
v2/images
Package images provides information and interaction with the images through the OpenStack Compute service.
Package images provides information and interaction with the images through the OpenStack Compute service.
v2/images/testing
images unit tests
images unit tests
v2/servers
Package servers provides information and interaction with the server API resource in the OpenStack Compute service.
Package servers provides information and interaction with the server API resource in the OpenStack Compute service.
v2/servers/testing
servers unit tests
servers unit tests
csbs
v1/backup
Package backup enables management and retrieval of back up resources.
Package backup enables management and retrieval of back up resources.
v1/policies
Package backup policies enables management and retrieval of backup servers periodically.
Package backup policies enables management and retrieval of backup servers periodically.
css
cts
v1/tracker
Package tracker provides operation records for cloud service resources.
Package tracker provides operation records for cloud service resources.
dcs
dds
deh
dms
dns
v2/recordsets
Package recordsets provides information and interaction with the zone API resource for the OpenStack DNS service.
Package recordsets provides information and interaction with the zone API resource for the OpenStack DNS service.
v2/recordsets/testing
recordsets unit tests
recordsets unit tests
v2/zones
Package zones provides information and interaction with the zone API resource for the OpenStack DNS service.
Package zones provides information and interaction with the zone API resource for the OpenStack DNS service.
v2/zones/testing
zones unit tests
zones unit tests
ecs
evs
identity
v3/domains
Package domains manages and retrieves Domains in the OpenStack Identity Service.
Package domains manages and retrieves Domains in the OpenStack Identity Service.
v3/endpoints
Package endpoints provides information and interaction with the service endpoints API resource in the OpenStack Identity service.
Package endpoints provides information and interaction with the service endpoints API resource in the OpenStack Identity service.
v3/endpoints/testing
endpoints unit tests
endpoints unit tests
v3/extensions/trusts
Package trusts enables management of OpenStack Identity Trusts.
Package trusts enables management of OpenStack Identity Trusts.
v3/extensions/trusts/testing
trusts unit tests
trusts unit tests
v3/groups
Package groups manages and retrieves Groups in the OpenStack Identity Service.
Package groups manages and retrieves Groups in the OpenStack Identity Service.
v3/projects
Package projects manages and retrieves Projects in the OpenStack Identity Service.
Package projects manages and retrieves Projects in the OpenStack Identity Service.
v3/regions
Package regions manages and retrieves Regions in the OpenStack Identity Service.
Package regions manages and retrieves Regions in the OpenStack Identity Service.
v3/roles
Package roles provides information and interaction with the roles API resource for the OpenStack Identity service.
Package roles provides information and interaction with the roles API resource for the OpenStack Identity service.
v3/roles/testing
roles unit tests
roles unit tests
v3/services
Package services provides information and interaction with the services API resource for the OpenStack Identity service.
Package services provides information and interaction with the services API resource for the OpenStack Identity service.
v3/services/testing
services unit tests
services unit tests
v3/tokens
Package tokens provides information and interaction with the token API resource for the OpenStack Identity service.
Package tokens provides information and interaction with the token API resource for the OpenStack Identity service.
v3/tokens/testing
tokens unit tests
tokens unit tests
v3/users
Package users manages and retrieves Users in the OpenStack Identity Service.
Package users manages and retrieves Users in the OpenStack Identity Service.
imageservice
v2/imagedata
Package imagedata enables management of image data.
Package imagedata enables management of image data.
v2/imagedata/testing
imagedata unit tests
imagedata unit tests
v2/imageimport
Package imageimport enables management of images import and retrieval of the Imageservice Import API information.
Package imageimport enables management of images import and retrieval of the Imageservice Import API information.
v2/images
Package images enables management and retrieval of images from the OpenStack Image Service.
Package images enables management and retrieval of images from the OpenStack Image Service.
v2/images/testing
images unit tests
images unit tests
v2/members
Package members enables management and retrieval of image members.
Package members enables management and retrieval of image members.
v2/members/testing
members unit tests
members unit tests
v2/tasks
Package tasks enables management and retrieval of tasks from the OpenStack Imageservice.
Package tasks enables management and retrieval of tasks from the OpenStack Imageservice.
v2/tasks/testing
tasks unit tests
tasks unit tests
ims
kms
v1/keys
Package keys provides information and interaction with keys in the Key Management Service service.
Package keys provides information and interaction with keys in the Key Management Service service.
lts
mrs
networking
v1/subnets
Package Subnets enables management and retrieval of Subnets Example to List Vpcs listOpts := subnets.ListOpts{} allSubnets, err := subnets.List(subnetClient, listOpts) if err != nil { panic(err) } for _, subnet := range allSubnets { fmt.Printf("%+v\n", subnet) } Example to Create a Vpc createOpts := subnets.CreateOpts{ Name: "test_subnets", CIDR: "192.168.0.0/16" GatewayIP: "192.168.0.1" PRIMARY_DNS: "8.8.8.8" SECONDARY_DNS: "8.8.4.4" AvailabilityZone:"eu-de-02" VPC_ID:"3b9740a0-b44d-48f0-84ee-42eb166e54f7" } vpc, err := subnets.Create(subnetClient, createOpts).Extract() if err != nil { panic(err) } Example to Update a Vpc subnetID := "4e8e5957-649f-477b-9e5b-f1f75b21c03c" updateOpts := subnets.UpdateOpts{ Name: "testsubnet", } subnet, err := subnets.Update(subnetClient, subnetID, updateOpts).Extract() if err != nil { panic(err) } Example to Delete a Vpc subnetID := "4e8e5957-649f-477b-9e5b-f1f75b21c03c" err := subnets.Delete(subnetClient, subnetID).ExtractErr() if err != nil { panic(err) }
Package Subnets enables management and retrieval of Subnets Example to List Vpcs listOpts := subnets.ListOpts{} allSubnets, err := subnets.List(subnetClient, listOpts) if err != nil { panic(err) } for _, subnet := range allSubnets { fmt.Printf("%+v\n", subnet) } Example to Create a Vpc createOpts := subnets.CreateOpts{ Name: "test_subnets", CIDR: "192.168.0.0/16" GatewayIP: "192.168.0.1" PRIMARY_DNS: "8.8.8.8" SECONDARY_DNS: "8.8.4.4" AvailabilityZone:"eu-de-02" VPC_ID:"3b9740a0-b44d-48f0-84ee-42eb166e54f7" } vpc, err := subnets.Create(subnetClient, createOpts).Extract() if err != nil { panic(err) } Example to Update a Vpc subnetID := "4e8e5957-649f-477b-9e5b-f1f75b21c03c" updateOpts := subnets.UpdateOpts{ Name: "testsubnet", } subnet, err := subnets.Update(subnetClient, subnetID, updateOpts).Extract() if err != nil { panic(err) } Example to Delete a Vpc subnetID := "4e8e5957-649f-477b-9e5b-f1f75b21c03c" err := subnets.Delete(subnetClient, subnetID).ExtractErr() if err != nil { panic(err) }
v1/subnets/testing
vpcs unit tests
vpcs unit tests
v1/vpcs
Package vpcs enables management and retrieval of Vpcs VPC service.
Package vpcs enables management and retrieval of Vpcs VPC service.
v1/vpcs/testing
vpcs unit tests
vpcs unit tests
v2/apiversions
Package apiversions provides information and interaction with the different API versions for the OpenStack Neutron service.
Package apiversions provides information and interaction with the different API versions for the OpenStack Neutron service.
v2/apiversions/testing
apiversions unit tests
apiversions unit tests
v2/extensions/elbaas
Package lbaas_v2 provides information and interaction with the Load Balancer as a Service v2 extension for the OpenStack Networking service.
Package lbaas_v2 provides information and interaction with the Load Balancer as a Service v2 extension for the OpenStack Networking service.
v2/extensions/external
Package external provides information and interaction with the external extension for the OpenStack Networking service.
Package external provides information and interaction with the external extension for the OpenStack Networking service.
v2/extensions/external/testing
external unit tests
external unit tests
v2/extensions/extradhcpopts
Package extradhcpopts allow to work with extra DHCP functionality of Neutron ports.
Package extradhcpopts allow to work with extra DHCP functionality of Neutron ports.
v2/extensions/fwaas
Package fwaas provides information and interaction with the Firewall as a Service extension for the OpenStack Networking service.
Package fwaas provides information and interaction with the Firewall as a Service extension for the OpenStack Networking service.
v2/extensions/fwaas/firewalls
Package firewalls allows management and retrieval of firewalls from the OpenStack Networking Service.
Package firewalls allows management and retrieval of firewalls from the OpenStack Networking Service.
firewalls unit tests
v2/extensions/fwaas/policies
Package policies allows management and retrieval of Firewall Policies in the OpenStack Networking Service.
Package policies allows management and retrieval of Firewall Policies in the OpenStack Networking Service.
policies unit tests
v2/extensions/fwaas/routerinsertion
Package routerinsertion implements the fwaasrouterinsertion Firewall extension.
Package routerinsertion implements the fwaasrouterinsertion Firewall extension.
v2/extensions/fwaas/routerinsertion/testing
routerinsertion unit tests
routerinsertion unit tests
v2/extensions/fwaas/rules
Package rules enables management and retrieval of Firewall Rules in the OpenStack Networking Service.
Package rules enables management and retrieval of Firewall Rules in the OpenStack Networking Service.
rules unit tests
v2/extensions/fwaas_v2
Package fwaas provides information and interaction with the Firewall as a Service extension for the OpenStack Networking service.
Package fwaas provides information and interaction with the Firewall as a Service extension for the OpenStack Networking service.
v2/extensions/fwaas_v2/routerinsertion
Package routerinsertion implements the fwaasrouterinsertion FWaaS extension.
Package routerinsertion implements the fwaasrouterinsertion FWaaS extension.
v2/extensions/layer3
Package layer3 provides access to the Layer-3 networking extension for the OpenStack Neutron service.
Package layer3 provides access to the Layer-3 networking extension for the OpenStack Neutron service.
v2/extensions/layer3/floatingips
package floatingips enables management and retrieval of Floating IPs from the OpenStack Networking service.
package floatingips enables management and retrieval of Floating IPs from the OpenStack Networking service.
floatingips unit tests
v2/extensions/layer3/routers
Package routers enables management and retrieval of Routers from the OpenStack Networking service.
Package routers enables management and retrieval of Routers from the OpenStack Networking service.
routers unit tests
v2/extensions/lbaas
Package lbaas provides information and interaction with the Load Balancer as a Service extension for the OpenStack Networking service.
Package lbaas provides information and interaction with the Load Balancer as a Service extension for the OpenStack Networking service.
v2/extensions/lbaas/members
Package members provides information and interaction with Members of the Load Balancer as a Service extension for the OpenStack Networking service.
Package members provides information and interaction with Members of the Load Balancer as a Service extension for the OpenStack Networking service.
members unit tests
v2/extensions/lbaas/monitors
Package monitors provides information and interaction with the Monitors of the Load Balancer as a Service extension for the OpenStack Networking Service.
Package monitors provides information and interaction with the Monitors of the Load Balancer as a Service extension for the OpenStack Networking Service.
monitors unit tests
v2/extensions/lbaas/pools
Package pools provides information and interaction with the Pools of the Load Balancing as a Service extension for the OpenStack Networking service.
Package pools provides information and interaction with the Pools of the Load Balancing as a Service extension for the OpenStack Networking service.
pools unit tests
v2/extensions/lbaas/vips
Package vips provides information and interaction with the Virtual IPs of the Load Balancing as a Service extension for the OpenStack Networking service.
Package vips provides information and interaction with the Virtual IPs of the Load Balancing as a Service extension for the OpenStack Networking service.
vips unit tests
v2/extensions/lbaas_v2
Package lbaas_v2 provides information and interaction with the Load Balancer as a Service v2 extension for the OpenStack Networking service.
Package lbaas_v2 provides information and interaction with the Load Balancer as a Service v2 extension for the OpenStack Networking service.
v2/extensions/lbaas_v2/l7policies
Package l7policies provides information and interaction with L7Policies and Rules of the LBaaS v2 extension for the OpenStack Networking service.
Package l7policies provides information and interaction with L7Policies and Rules of the LBaaS v2 extension for the OpenStack Networking service.
l7policies unit tests
v2/extensions/lbaas_v2/listeners
Package listeners provides information and interaction with Listeners of the LBaaS v2 extension for the OpenStack Networking service.
Package listeners provides information and interaction with Listeners of the LBaaS v2 extension for the OpenStack Networking service.
listeners unit tests
v2/extensions/lbaas_v2/loadbalancers
Package loadbalancers provides information and interaction with Load Balancers of the LBaaS v2 extension for the OpenStack Networking service.
Package loadbalancers provides information and interaction with Load Balancers of the LBaaS v2 extension for the OpenStack Networking service.
loadbalancers unit tests
v2/extensions/lbaas_v2/monitors
Package monitors provides information and interaction with Monitors of the LBaaS v2 extension for the OpenStack Networking service.
Package monitors provides information and interaction with Monitors of the LBaaS v2 extension for the OpenStack Networking service.
monitors unit tests
v2/extensions/lbaas_v2/pools
Package pools provides information and interaction with Pools and Members of the LBaaS v2 extension for the OpenStack Networking service.
Package pools provides information and interaction with Pools and Members of the LBaaS v2 extension for the OpenStack Networking service.
pools unit tests
v2/extensions/networkipavailabilities
Package networkipavailabilities provides the ability to retrieve and manage networkipavailabilities through the Neutron API.
Package networkipavailabilities provides the ability to retrieve and manage networkipavailabilities through the Neutron API.
v2/extensions/networkipavailabilities/testing
networkipavailabilities unit tests
networkipavailabilities unit tests
v2/extensions/portsbinding
Package portsbinding provides information and interaction with the port binding extension for the OpenStack Networking service.
Package portsbinding provides information and interaction with the port binding extension for the OpenStack Networking service.
v2/extensions/portsbinding/testing
portsbindings unit tests
portsbindings unit tests
v2/extensions/portsecurity
Package portsecurity provides information and interaction with the port security extension for the OpenStack Networking service.
Package portsecurity provides information and interaction with the port security extension for the OpenStack Networking service.
v2/extensions/provider
Package provider gives access to the provider Neutron plugin, allowing network extended attributes.
Package provider gives access to the provider Neutron plugin, allowing network extended attributes.
v2/extensions/provider/testing
provider unit tests
provider unit tests
v2/extensions/qos/ruletypes
Package ruletypes contains functionality for working with Neutron 'quality of service' rule-type resources.
Package ruletypes contains functionality for working with Neutron 'quality of service' rule-type resources.
qos unit tests
v2/extensions/rbacpolicies
Package rbacpolicies contains functionality for working with Neutron RBAC Policies.
Package rbacpolicies contains functionality for working with Neutron RBAC Policies.
v2/extensions/rbacpolicies/testing
Package testing includes rbac unit tests
Package testing includes rbac unit tests
v2/extensions/security
Package security contains functionality to work with security group and security group rules Neutron resources.
Package security contains functionality to work with security group and security group rules Neutron resources.
v2/extensions/security/groups
Package groups provides information and interaction with Security Groups for the OpenStack Networking service.
Package groups provides information and interaction with Security Groups for the OpenStack Networking service.
groups unit tests
v2/extensions/security/rules
Package rules provides information and interaction with Security Group Rules for the OpenStack Networking service.
Package rules provides information and interaction with Security Group Rules for the OpenStack Networking service.
rules unit tests
v2/extensions/subnetpools
Package subnetpools provides the ability to retrieve and manage subnetpools through the Neutron API.
Package subnetpools provides the ability to retrieve and manage subnetpools through the Neutron API.
v2/extensions/subnetpools/testing
subnetpools unit tests
subnetpools unit tests
v2/extensions/testing
extensions unit tests
extensions unit tests
v2/extensions/vpnaas/endpointgroups
Package endpointgroups allows management of endpoint groups in the Openstack Network Service Example to create an Endpoint Group createOpts := endpointgroups.CreateOpts{ Name: groupName, Type: endpointgroups.TypeCIDR, Endpoints: []string{ "10.2.0.0/24", "10.3.0.0/24", }, } group, err := endpointgroups.Create(client, createOpts).Extract() if err != nil { return group, err } Example to retrieve an Endpoint Group group, err := endpointgroups.Get(client, "6ecd9cf3-ca64-46c7-863f-f2eb1b9e838a").Extract() if err != nil { panic(err) } Example to Delete an Endpoint Group err := endpointgroups.Delete(client, "5291b189-fd84-46e5-84bd-78f40c05d69c").ExtractErr() if err != nil { panic(err) } Example to List Endpoint groups allPages, err := endpointgroups.List(client, nil).AllPages() if err != nil { panic(err) } allGroups, err := endpointgroups.ExtractEndpointGroups(allPages) if err != nil { panic(err) } Example to Update an endpoint group name := "updatedname" description := "updated description" updateOpts := endpointgroups.UpdateOpts{ Name: &name, Description: &description, } updatedPolicy, err := endpointgroups.Update(client, "5c561d9d-eaea-45f6-ae3e-08d1a7080828", updateOpts).Extract() if err != nil { panic(err) }
Package endpointgroups allows management of endpoint groups in the Openstack Network Service Example to create an Endpoint Group createOpts := endpointgroups.CreateOpts{ Name: groupName, Type: endpointgroups.TypeCIDR, Endpoints: []string{ "10.2.0.0/24", "10.3.0.0/24", }, } group, err := endpointgroups.Create(client, createOpts).Extract() if err != nil { return group, err } Example to retrieve an Endpoint Group group, err := endpointgroups.Get(client, "6ecd9cf3-ca64-46c7-863f-f2eb1b9e838a").Extract() if err != nil { panic(err) } Example to Delete an Endpoint Group err := endpointgroups.Delete(client, "5291b189-fd84-46e5-84bd-78f40c05d69c").ExtractErr() if err != nil { panic(err) } Example to List Endpoint groups allPages, err := endpointgroups.List(client, nil).AllPages() if err != nil { panic(err) } allGroups, err := endpointgroups.ExtractEndpointGroups(allPages) if err != nil { panic(err) } Example to Update an endpoint group name := "updatedname" description := "updated description" updateOpts := endpointgroups.UpdateOpts{ Name: &name, Description: &description, } updatedPolicy, err := endpointgroups.Update(client, "5c561d9d-eaea-45f6-ae3e-08d1a7080828", updateOpts).Extract() if err != nil { panic(err) }
v2/extensions/vpnaas/ikepolicies
Package ikepolicies allows management and retrieval of IKE policies in the OpenStack Networking Service.
Package ikepolicies allows management and retrieval of IKE policies in the OpenStack Networking Service.
v2/extensions/vpnaas/ipsecpolicies
Package ipsecpolicies allows management and retrieval of IPSec Policies in the OpenStack Networking Service.
Package ipsecpolicies allows management and retrieval of IPSec Policies in the OpenStack Networking Service.
v2/extensions/vpnaas/services
Package services allows management and retrieval of VPN services in the OpenStack Networking Service.
Package services allows management and retrieval of VPN services in the OpenStack Networking Service.
v2/extensions/vpnaas/siteconnections
Package siteconnections allows management and retrieval of IPSec site connections in the OpenStack Networking Service.
Package siteconnections allows management and retrieval of IPSec site connections in the OpenStack Networking Service.
v2/networks
Package networks contains functionality for working with Neutron network resources.
Package networks contains functionality for working with Neutron network resources.
v2/networks/testing
networks unit tests
networks unit tests
v2/peerings
Package peerings enables management and retrieval of vpc peering connections Example to List a Vpc Peering Connections listOpts:=peerings.ListOpts{} peering,err :=peerings.List(client,sub).AllPages() peerings,err:=peerings.ExtractPeerings(peering) if err != nil{ fmt.Println(err) } Example to Get a Vpc Peering Connection peeringID := "6bbacb0f-9f94-4fe8-a6b6-1818bdccb2a3" peering,err :=peerings.Get(client,peeringID).Extract() if err != nil{ fmt.Println(err) } Example to Accept a Vpc Peering Connection Request // Note:- The TenantId should be of accepter peeringID := "6bbacb0f-9f94-4fe8-a6b6-1818bdccb2a3" peering,err:=peerings.Accept(client,peeringID).ExtractResult() if err != nil{ fmt.Println(err) } Example to Reject a Vpc Peering Connection Request // Note:- The TenantId should be of accepter peeringID := "6bbacb0f-9f94-4fe8-a6b6-1818bdccb2a3" peering,err:=peerings.Reject(client,peeringID).ExtractResult() if err != nil{ fmt.Println(err) } Example to Create a Vpc Peering Connection RequestVpcInfo:=peerings.VpcInfo{VpcId:"3127e30b-5f8e-42d1-a3cc-fdadf412c5bf"} AcceptVpcInfo:=peerings.VpcInfo{"c6efbdb7-dca4-4178-b3ec-692f125c1e25","17fbda95add24720a4038ba4b1c705ed"} opt:=peerings.CreateOpts{"C2C_test",RequestVpcInfo,AcceptVpcInfo} peering,err:=peerings.Create(client,opt).Extract() if err != nil{ fmt.Println(err) } Example to Update a VpcPeeringConnection peeringID := "6bbacb0f-9f94-4fe8-a6b6-1818bdccb2a3" updateOpts:=peerings.UpdateOpts{"C2C_tes1"} peering,err:=peerings.Update(client,peeringID,updateOpts).Extract() if err != nil{ fmt.Println(err) } Example to Delete a VpcPeeringConnection peeringID := "6bbacb0f-9f94-4fe8-a6b6-1818bdccb2a3" err := peerings.Delete(client,"6bbacb0f-9f94-4fe8-a6b6-1818bdccb2a3") if err != nil { panic(err) }
Package peerings enables management and retrieval of vpc peering connections Example to List a Vpc Peering Connections listOpts:=peerings.ListOpts{} peering,err :=peerings.List(client,sub).AllPages() peerings,err:=peerings.ExtractPeerings(peering) if err != nil{ fmt.Println(err) } Example to Get a Vpc Peering Connection peeringID := "6bbacb0f-9f94-4fe8-a6b6-1818bdccb2a3" peering,err :=peerings.Get(client,peeringID).Extract() if err != nil{ fmt.Println(err) } Example to Accept a Vpc Peering Connection Request // Note:- The TenantId should be of accepter peeringID := "6bbacb0f-9f94-4fe8-a6b6-1818bdccb2a3" peering,err:=peerings.Accept(client,peeringID).ExtractResult() if err != nil{ fmt.Println(err) } Example to Reject a Vpc Peering Connection Request // Note:- The TenantId should be of accepter peeringID := "6bbacb0f-9f94-4fe8-a6b6-1818bdccb2a3" peering,err:=peerings.Reject(client,peeringID).ExtractResult() if err != nil{ fmt.Println(err) } Example to Create a Vpc Peering Connection RequestVpcInfo:=peerings.VpcInfo{VpcId:"3127e30b-5f8e-42d1-a3cc-fdadf412c5bf"} AcceptVpcInfo:=peerings.VpcInfo{"c6efbdb7-dca4-4178-b3ec-692f125c1e25","17fbda95add24720a4038ba4b1c705ed"} opt:=peerings.CreateOpts{"C2C_test",RequestVpcInfo,AcceptVpcInfo} peering,err:=peerings.Create(client,opt).Extract() if err != nil{ fmt.Println(err) } Example to Update a VpcPeeringConnection peeringID := "6bbacb0f-9f94-4fe8-a6b6-1818bdccb2a3" updateOpts:=peerings.UpdateOpts{"C2C_tes1"} peering,err:=peerings.Update(client,peeringID,updateOpts).Extract() if err != nil{ fmt.Println(err) } Example to Delete a VpcPeeringConnection peeringID := "6bbacb0f-9f94-4fe8-a6b6-1818bdccb2a3" err := peerings.Delete(client,"6bbacb0f-9f94-4fe8-a6b6-1818bdccb2a3") if err != nil { panic(err) }
v2/peerings/testing
peerings unit tests
peerings unit tests
v2/ports
Package ports contains functionality for working with Neutron port resources.
Package ports contains functionality for working with Neutron port resources.
v2/ports/testing
ports unit tests
ports unit tests
v2/routes
Package routes enables management and retrieval of Routes Route service.
Package routes enables management and retrieval of Routes Route service.
v2/subnets
Package subnets contains functionality for working with Neutron subnet resources.
Package subnets contains functionality for working with Neutron subnet resources.
v2/subnets/testing
subnets unit tests
subnets unit tests
objectstorage
v1/accounts
Package accounts contains functionality for working with Object Storage account resources.
Package accounts contains functionality for working with Object Storage account resources.
v1/containers
Package containers contains functionality for working with Object Storage container resources.
Package containers contains functionality for working with Object Storage container resources.
v1/objects
Package objects contains functionality for working with Object Storage object resources.
Package objects contains functionality for working with Object Storage object resources.
v1/swauth
Package swauth implements Swift's built-in authentication.
Package swauth implements Swift's built-in authentication.
rds
rts
v1/softwareconfig
Package softwareconfig enables management and retrieval of Software Configs Example to List Software Configs listOpts := softwareconfig.ListOpts{} allConfigs, err := softwareconfig.List(client,listOpts) if err != nil { panic(err) } for _, config := range allConfigs { fmt.Printf("%+v\n", config) } Example to Get Software Deployment configID:="bd7d48a5-6e33-4b95-aa28-d0d3af46c635" configs,err:=softwareconfig.Get(client,configID).Extract() if err != nil { panic(err) } Example to Create a Software Configs createOpts := softwareconfig.CreateOpts{ Name: "config_test", } config, err := softwareconfig.Create(client, createOpts).Extract() if err != nil { panic(err) } Example to Delete a Software Configs configID := "8de48948-b6d6-4417-82a5-071f7811af91" del:=softwareconfig.Delete(client,configID).ExtractErr() if err != nil { panic(err) }
Package softwareconfig enables management and retrieval of Software Configs Example to List Software Configs listOpts := softwareconfig.ListOpts{} allConfigs, err := softwareconfig.List(client,listOpts) if err != nil { panic(err) } for _, config := range allConfigs { fmt.Printf("%+v\n", config) } Example to Get Software Deployment configID:="bd7d48a5-6e33-4b95-aa28-d0d3af46c635" configs,err:=softwareconfig.Get(client,configID).Extract() if err != nil { panic(err) } Example to Create a Software Configs createOpts := softwareconfig.CreateOpts{ Name: "config_test", } config, err := softwareconfig.Create(client, createOpts).Extract() if err != nil { panic(err) } Example to Delete a Software Configs configID := "8de48948-b6d6-4417-82a5-071f7811af91" del:=softwareconfig.Delete(client,configID).ExtractErr() if err != nil { panic(err) }
v1/softwaredeployment
Package softwaredeployment enables management and retrieval of Software Deployments Example to List Software Deployments listOpts := softwaredeployment.ListOpts{} allDeployments, err := softwaredeployment.List(client,listOpts) if err != nil { panic(err) } for _, deployment := range allDeployments { fmt.Printf("%+v\n", allDeployments) } Example to Get Software Deployment deploymentID:="bd7d48a5-6e33-4b95-aa28-d0d3af46c635" deployments,err:=softwaredeployment.Get(client,deploymentID).Extract() if err != nil { panic(err) } Example to Create a Software Deployments input:=map[string]interface{}{"name":"foo"} createOpts := softwaredeployment.CreateOpts{ Status:"IN_PROGRESS", ServerId:"f274ac7d-334d-41ff-83bd-1de669f7781b", ConfigId:"a6ff3598-f2e0-4111-81b0-aa3e1cac2529", InputValues:input, TenantId:"17fbda95add24720a4038ba4b1c705ed", Action:"CREATE" } deployment, err := softwaredeployment.Create(client, createOpts).Extract() if err != nil { panic(err) } Example to Update a Software Deployments deploymentID:="bd7d48a5-6e33-4b95-aa28-d0d3af46c635" ouput:=map[string]interface{}{"deploy_stdout":"Writing to /tmp/baaaaa\nWritten to /tmp/baaaaa\n","deploy_stderr":"+ echo Writing to /tmp/baaaaa\n+ echo fooooo\n+ cat /tmp/baaaaa\n+ echo -n The file /tmp/baaaaa contains fooooo for server ec14c864-096e-4e27-bb8a-2c2b4dc6f3f5 during CREATE\n+ echo Written to /tmp/baaaaa\n+ echo Output to stderr\nOutput to stderr\n", "deploy_status_code":0,"result":"The file /tmp/baaaaa contains fooooo for server ec14c864-096e-4e27-bb8a-2c2b4dc6f3f5 during CREATE"} updateOpts := softwaredeployment.UpdateOpts{ Status:"COMPLETE", ConfigId:"a6ff3598-f2e0-4111-81b0-aa3e1cac2529", OutputValues:ouput, StatusReason:"Outputs received"} deployment, err := softwaredeployment.Update(client, deploymentID, updateOpts).Extract() if err != nil { panic(err) } Example to Delete a Software Deployments deploymentID:="bd7d48a5-6e33-4b95-aa28-d0d3af46c635" del:=softwaredeployment.Delete(client,deploymentID).ExtractErr() if err != nil { panic(err) }
Package softwaredeployment enables management and retrieval of Software Deployments Example to List Software Deployments listOpts := softwaredeployment.ListOpts{} allDeployments, err := softwaredeployment.List(client,listOpts) if err != nil { panic(err) } for _, deployment := range allDeployments { fmt.Printf("%+v\n", allDeployments) } Example to Get Software Deployment deploymentID:="bd7d48a5-6e33-4b95-aa28-d0d3af46c635" deployments,err:=softwaredeployment.Get(client,deploymentID).Extract() if err != nil { panic(err) } Example to Create a Software Deployments input:=map[string]interface{}{"name":"foo"} createOpts := softwaredeployment.CreateOpts{ Status:"IN_PROGRESS", ServerId:"f274ac7d-334d-41ff-83bd-1de669f7781b", ConfigId:"a6ff3598-f2e0-4111-81b0-aa3e1cac2529", InputValues:input, TenantId:"17fbda95add24720a4038ba4b1c705ed", Action:"CREATE" } deployment, err := softwaredeployment.Create(client, createOpts).Extract() if err != nil { panic(err) } Example to Update a Software Deployments deploymentID:="bd7d48a5-6e33-4b95-aa28-d0d3af46c635" ouput:=map[string]interface{}{"deploy_stdout":"Writing to /tmp/baaaaa\nWritten to /tmp/baaaaa\n","deploy_stderr":"+ echo Writing to /tmp/baaaaa\n+ echo fooooo\n+ cat /tmp/baaaaa\n+ echo -n The file /tmp/baaaaa contains fooooo for server ec14c864-096e-4e27-bb8a-2c2b4dc6f3f5 during CREATE\n+ echo Written to /tmp/baaaaa\n+ echo Output to stderr\nOutput to stderr\n", "deploy_status_code":0,"result":"The file /tmp/baaaaa contains fooooo for server ec14c864-096e-4e27-bb8a-2c2b4dc6f3f5 during CREATE"} updateOpts := softwaredeployment.UpdateOpts{ Status:"COMPLETE", ConfigId:"a6ff3598-f2e0-4111-81b0-aa3e1cac2529", OutputValues:ouput, StatusReason:"Outputs received"} deployment, err := softwaredeployment.Update(client, deploymentID, updateOpts).Extract() if err != nil { panic(err) } Example to Delete a Software Deployments deploymentID:="bd7d48a5-6e33-4b95-aa28-d0d3af46c635" del:=softwaredeployment.Delete(client,deploymentID).ExtractErr() if err != nil { panic(err) }
v1/stackevents
Package stackevents provides operations for finding, listing, and retrieving stack events.
Package stackevents provides operations for finding, listing, and retrieving stack events.
v1/stackevents/testing
orchestration_stackevents_v1
orchestration_stackevents_v1
v1/stackresources
Package stackresources provides operations for working with stack resources.
Package stackresources provides operations for working with stack resources.
v1/stackresources/testing
orchestration_stackresources_v1
orchestration_stackresources_v1
v1/stacktemplates
Package stacktemplates provides operations for working with Heat templates.
Package stacktemplates provides operations for working with Heat templates.
sdrs
sfs
v2/shares
Package shares enables management and retrieval of shares Share service.
Package shares enables management and retrieval of shares Share service.
sfs_turbo
smn
openstack
openstack
tms
testing
utils
utils
vbs
v2/backups
Package backups enables management and retrieval of Backups VBS service.
Package backups enables management and retrieval of Backups VBS service.
v2/shares
Package shares enables management and retrieval of Shares VBS service.
Package shares enables management and retrieval of Shares VBS service.
vpc
v1/bandwidths
You can allocate bandwidth when assigning an EIP so that the ECS bound with the EIP can use the bandwidth to access the Internet.
You can allocate bandwidth when assigning an EIP so that the ECS bound with the EIP can use the bandwidth to access the Internet.
waf

Jump to

Keyboard shortcuts

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