gophercloud: github.com/rackspace/gophercloud/openstack/db/v1/configurations Index | Files

package configurations

import "github.com/rackspace/gophercloud/openstack/db/v1/configurations"

Package configurations provides information and interaction with the configuration API resource in the Rackspace Database service.

A configuration group is a collection of key/value pairs which define how a particular database operates. These key/value pairs are specific to each datastore type and serve like settings. Some directives are capable of being applied dynamically, while other directives require a server restart to take effect. The configuration group can be applied to an instance at creation or applied to an existing instance to modify the behavior of the running datastore on the instance.

Index

Package Files

doc.go requests.go results.go urls.go

func List Uses

func List(client *gophercloud.ServiceClient) pagination.Pager

List will list all of the available configurations.

func ListDatastoreParams Uses

func ListDatastoreParams(client *gophercloud.ServiceClient, datastoreID, versionID string) pagination.Pager

ListDatastoreParams will list all the available and supported parameters that can be used for a particular datastore ID and a particular version. For example, if you are wondering how you can configure a MySQL 5.6 instance, you can use this operation (you will need to retrieve the MySQL datastore ID by using the datastores API).

func ListGlobalParams Uses

func ListGlobalParams(client *gophercloud.ServiceClient, versionID string) pagination.Pager

ListGlobalParams is similar to ListDatastoreParams but does not require a DatastoreID.

func ListInstances Uses

func ListInstances(client *gophercloud.ServiceClient, configID string) pagination.Pager

ListInstances will list all the instances associated with a particular configuration group.

type Config Uses

type Config struct {
    Created              time.Time `mapstructure:"-"`
    Updated              time.Time `mapstructure:"-"`
    DatastoreName        string    `mapstructure:"datastore_name"`
    DatastoreVersionID   string    `mapstructure:"datastore_version_id"`
    DatastoreVersionName string    `mapstructure:"datastore_version_name"`
    Description          string
    ID                   string
    Name                 string
    Values               map[string]interface{}
}

Config represents a configuration group API resource.

func ExtractConfigs Uses

func ExtractConfigs(page pagination.Page) ([]Config, error)

ExtractConfigs will retrieve a slice of Config structs from a page.

type ConfigPage Uses

type ConfigPage struct {
    pagination.SinglePageBase
}

ConfigPage contains a page of Config resources in a paginated collection.

func (ConfigPage) IsEmpty Uses

func (r ConfigPage) IsEmpty() (bool, error)

IsEmpty indicates whether a ConfigPage is empty.

type CreateOpts Uses

type CreateOpts struct {
    // [REQUIRED] The configuration group name
    Name string

    // [REQUIRED] A map of user-defined configuration settings that will define
    // how each associated datastore works. Each key/value pair is specific to a
    // datastore type.
    Values map[string]interface{}

    // [OPTIONAL] Associates the configuration group with a particular datastore.
    Datastore *DatastoreOpts

    // [OPTIONAL] A human-readable explanation for the group.
    Description string
}

CreateOpts is the struct responsible for configuring new configurations.

func (CreateOpts) ToConfigCreateMap Uses

func (opts CreateOpts) ToConfigCreateMap() (map[string]interface{}, error)

ToConfigCreateMap casts a CreateOpts struct into a JSON map.

type CreateOptsBuilder Uses

type CreateOptsBuilder interface {
    ToConfigCreateMap() (map[string]interface{}, error)
}

CreateOptsBuilder is a top-level interface which renders a JSON map.

type CreateResult Uses

type CreateResult struct {
    // contains filtered or unexported fields
}

CreateResult represents the result of a Create operation.

func Create Uses

func Create(client *gophercloud.ServiceClient, opts CreateOptsBuilder) CreateResult

Create will create a new configuration group.

func (CreateResult) Extract Uses

func (r CreateResult) Extract() (*Config, error)

Extract will retrieve a Config resource from an operation result.

type DatastoreOpts Uses

type DatastoreOpts struct {
    // [OPTIONAL] The type of datastore. Defaults to "MySQL".
    Type string

    // [OPTIONAL] The specific version of a datastore. Defaults to "5.6".
    Version string
}

DatastoreOpts is the primary options struct for creating and modifying how configuration resources are associated with datastores.

func (DatastoreOpts) ToMap Uses

func (opts DatastoreOpts) ToMap() (map[string]string, error)

ToMap renders a JSON map for a datastore setting.

type DeleteResult Uses

type DeleteResult struct {
    gophercloud.ErrResult
}

DeleteResult represents the result of a Delete operation.

func Delete Uses

func Delete(client *gophercloud.ServiceClient, configID string) DeleteResult

Delete will permanently delete a configuration group. Please note that config groups cannot be deleted whilst still attached to running instances - you must detach and then delete them.

type GetResult Uses

type GetResult struct {
    // contains filtered or unexported fields
}

GetResult represents the result of a Get operation.

func Get Uses

func Get(client *gophercloud.ServiceClient, configID string) GetResult

Get will retrieve the details for a specified configuration group.

func (GetResult) Extract Uses

func (r GetResult) Extract() (*Config, error)

Extract will retrieve a Config resource from an operation result.

type Param Uses

type Param struct {
    Max             int
    Min             int
    Name            string
    RestartRequired bool `mapstructure:"restart_required" json:"restart_required"`
    Type            string
}

Param represents a configuration parameter API resource.

func ExtractParams Uses

func ExtractParams(page pagination.Page) ([]Param, error)

ExtractParams will retrieve a slice of Param structs from a page.

type ParamPage Uses

type ParamPage struct {
    pagination.SinglePageBase
}

ParamPage contains a page of Param resources in a paginated collection.

func (ParamPage) IsEmpty Uses

func (r ParamPage) IsEmpty() (bool, error)

IsEmpty indicates whether a ParamPage is empty.

type ParamResult Uses

type ParamResult struct {
    gophercloud.Result
}

ParamResult represents the result of an operation which retrieves details about a particular configuration param.

func GetDatastoreParam Uses

func GetDatastoreParam(client *gophercloud.ServiceClient, datastoreID, versionID, paramID string) ParamResult

GetDatastoreParam will retrieve information about a specific configuration parameter. For example, you can use this operation to understand more about "innodb_file_per_table" configuration param for MySQL datastores. You will need the param's ID first, which can be attained by using the ListDatastoreParams operation.

func GetGlobalParam Uses

func GetGlobalParam(client *gophercloud.ServiceClient, versionID, paramID string) ParamResult

GetGlobalParam is similar to GetDatastoreParam but does not require a DatastoreID.

func (ParamResult) Extract Uses

func (r ParamResult) Extract() (*Param, error)

Extract will retrieve a param from an operation result.

type ReplaceResult Uses

type ReplaceResult struct {
    gophercloud.ErrResult
}

ReplaceResult represents the result of a Replace operation.

func Replace Uses

func Replace(client *gophercloud.ServiceClient, configID string, opts UpdateOptsBuilder) ReplaceResult

Replace will modify an existing configuration group by overwriting the entire parameter group with the new values provided. Any existing keys not included in UpdateOptsBuilder will be deleted.

type UpdateOpts Uses

type UpdateOpts struct {
    // [OPTIONAL] The configuration group name
    Name string

    // [OPTIONAL] A map of user-defined configuration settings that will define
    // how each associated datastore works. Each key/value pair is specific to a
    // datastore type.
    Values map[string]interface{}

    // [OPTIONAL] Associates the configuration group with a particular datastore.
    Datastore *DatastoreOpts

    // [OPTIONAL] A human-readable explanation for the group.
    Description string
}

UpdateOpts is the struct responsible for modifying existing configurations.

func (UpdateOpts) ToConfigUpdateMap Uses

func (opts UpdateOpts) ToConfigUpdateMap() (map[string]interface{}, error)

ToConfigUpdateMap will cast an UpdateOpts struct into a JSON map.

type UpdateOptsBuilder Uses

type UpdateOptsBuilder interface {
    ToConfigUpdateMap() (map[string]interface{}, error)
}

UpdateOptsBuilder is the top-level interface for casting update options into JSON maps.

type UpdateResult Uses

type UpdateResult struct {
    gophercloud.ErrResult
}

UpdateResult represents the result of an Update operation.

func Update Uses

func Update(client *gophercloud.ServiceClient, configID string, opts UpdateOptsBuilder) UpdateResult

Update will modify an existing configuration group by performing a merge between new and existing values. If the key already exists, the new value will overwrite. All other keys will remain unaffected.

Package configurations imports 8 packages (graph) and is imported by 2 packages. Updated 2018-07-26. Refresh now. Tools for package owners.