Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrNoAuthURL  = fmt.Errorf("Environment variable OS_AUTH_URL needs to be set.")
	ErrNoUsername = fmt.Errorf("Environment variable OS_USERNAME needs to be set.")
	ErrNoPassword = fmt.Errorf("Environment variable OS_PASSWORD needs to be set.")
)

    ErrNoAuthUrl, ErrNoUsername, and ErrNoPassword errors indicate of the required OS_AUTH_URL, OS_USERNAME, or OS_PASSWORD environment variables, respectively, remain undefined. See the AuthOptions() function for more details.

    Functions

    func AuthOptionsFromEnv

    func AuthOptionsFromEnv() (gophercloud.AuthOptions, error)

      AuthOptions 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 and OS_TENANT_NAME are optional.

      func Authenticate

      func Authenticate(client *gophercloud.ProviderClient, options gophercloud.AuthOptions) error

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

        func AuthenticateV2

        func AuthenticateV2(client *gophercloud.ProviderClient, options gophercloud.AuthOptions) error

          AuthenticateV2 explicitly authenticates against the identity v2 endpoint.

          func AuthenticateV3

          func AuthenticateV3(client *gophercloud.ProviderClient, options gophercloud.AuthOptions) error

            AuthenticateV3 explicitly authenticates against the identity v3 service.

            func AuthenticatedClient

            func AuthenticatedClient(options gophercloud.AuthOptions) (*gophercloud.ProviderClient, error)

              AuthenticatedClient logs in to an OpenStack cloud found at the identity endpoint specified by options, acquires a token, and returns a Client instance that's ready to operate. It first queries the root identity endpoint to determine which versions of the identity service are supported, then chooses the most recent identity service available to proceed.

              func NewBlockStorageV1

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

                func NewClient

                func NewClient(endpoint string) (*gophercloud.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.

                  func NewComputeV2

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

                    func NewIdentityV2

                    func NewIdentityV2(client *gophercloud.ProviderClient) *gophercloud.ServiceClient

                      NewIdentityV2 creates a ServiceClient that may be used to interact with the v2 identity service.

                      func NewIdentityV3

                      func NewIdentityV3(client *gophercloud.ProviderClient) *gophercloud.ServiceClient

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

                        func NewNetworkV2

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

                          func NewObjectStorageV1

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

                            func V2EndpointURL

                            func V2EndpointURL(catalog *tokens2.ServiceCatalog, opts gophercloud.EndpointOpts) (string, error)

                              V2EndpointURL discovers the endpoint URL for a specific service from a ServiceCatalog acquired during the v2 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.

                              func V3EndpointURL

                              func V3EndpointURL(v3Client *gophercloud.ServiceClient, opts gophercloud.EndpointOpts) (string, error)

                                V3EndpointURL discovers the endpoint URL for a specific service using multiple calls against an identity v3 service endpoint. 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

                                This section is empty.

                                Directories

                                Path Synopsis
                                blockstorage
                                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/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/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/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.
                                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.
                                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/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/keypairs
                                Package keypairs provides information and interaction with the Keypairs extension for the OpenStack Compute service.
                                Package keypairs provides information and interaction with the Keypairs extension for the OpenStack Compute service.
                                v2/flavors
                                Package flavors provides information and interaction with the flavor API resource in the OpenStack Compute service.
                                Package flavors provides information and interaction with the flavor API resource in the OpenStack Compute service.
                                v2/images
                                Package images provides information and interaction with the image API resource in the OpenStack Compute service.
                                Package images provides information and interaction with the image API resource in the OpenStack Compute service.
                                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.
                                identity
                                v2/extensions
                                Package extensions provides information and interaction with the different extensions available for the OpenStack Identity service.
                                Package extensions provides information and interaction with the different extensions available for the OpenStack Identity service.
                                v2/tenants
                                Package tenants provides information and interaction with the tenants API resource for the OpenStack Identity service.
                                Package tenants provides information and interaction with the tenants API resource for the OpenStack Identity service.
                                v2/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/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/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/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.
                                networking
                                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/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/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/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/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/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/networks
                                Package networks contains functionality for working with Neutron network resources.
                                Package networks contains functionality for working with Neutron network resources.
                                v2/ports
                                Package ports contains functionality for working with Neutron port resources.
                                Package ports contains functionality for working with Neutron port resources.
                                v2/subnets
                                Package subnets contains functionality for working with Neutron subnet resources.
                                Package subnets contains functionality for working with Neutron subnet resources.
                                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.