Documentation ¶
Overview ¶
Package snapshots provides information and interaction with snapshots in the OpenStack Block Storage service. A snapshot is a point in time copy of the data contained in an external storage volume, and can be controlled programmatically.
Index ¶
- func IDFromName(client *golangsdk.ServiceClient, name string) (string, error)
- func List(client *golangsdk.ServiceClient, opts ListOptsBuilder) pagination.Pager
- func WaitForStatus(c *golangsdk.ServiceClient, id, status string, secs int) error
- type CreateOpts
- type CreateOptsBuilder
- type CreateResult
- type DeleteResult
- type GetResult
- type ListOpts
- type ListOptsBuilder
- type Snapshot
- type SnapshotPage
- type UpdateMetadataOpts
- type UpdateMetadataOptsBuilder
- type UpdateMetadataResult
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func IDFromName ¶
IDFromName is a convienience function that returns a snapshot's ID given its name.
func List ¶
func List(client *golangsdk.ServiceClient, opts ListOptsBuilder) pagination.Pager
List returns Snapshots optionally limited by the conditions provided in ListOpts.
func WaitForStatus ¶
WaitForStatus will continually poll the resource, checking for a particular status. It will do this for the amount of seconds defined.
Types ¶
type CreateOpts ¶
type CreateOpts struct { VolumeID string `json:"volume_id" required:"true"` Description string `json:"display_description,omitempty"` Force bool `json:"force,omitempty"` Metadata map[string]interface{} `json:"metadata,omitempty"` Name string `json:"display_name,omitempty"` }
CreateOpts contains options for creating a Snapshot. This object is passed to the snapshots.Create function. For more information about these parameters, see the Snapshot object.
func (CreateOpts) ToSnapshotCreateMap ¶
func (opts CreateOpts) ToSnapshotCreateMap() (map[string]interface{}, error)
ToSnapshotCreateMap assembles a request body based on the contents of a CreateOpts.
type CreateOptsBuilder ¶
CreateOptsBuilder allows extensions to add additional parameters to the Create request.
type CreateResult ¶
type CreateResult struct {
// contains filtered or unexported fields
}
CreateResult contains the response body and error from a Create request.
func Create ¶
func Create(client *golangsdk.ServiceClient, opts CreateOptsBuilder) (r CreateResult)
Create will create a new Snapshot based on the values in CreateOpts. To extract the Snapshot object from the response, call the Extract method on the CreateResult.
type DeleteResult ¶
type DeleteResult struct {
golangsdk.ErrResult
}
DeleteResult contains the response body and error from a Delete request.
func Delete ¶
func Delete(client *golangsdk.ServiceClient, id string) (r DeleteResult)
Delete will delete the existing Snapshot with the provided ID.
type GetResult ¶
type GetResult struct {
// contains filtered or unexported fields
}
GetResult contains the response body and error from a Get request.
type ListOpts ¶
type ListOpts struct { Name string `q:"display_name"` Status string `q:"status"` VolumeID string `q:"volume_id"` }
ListOpts hold options for listing Snapshots. It is passed to the snapshots.List function.
func (ListOpts) ToSnapshotListQuery ¶
ToSnapshotListQuery formats a ListOpts into a query string.
type ListOptsBuilder ¶
ListOptsBuilder allows extensions to add additional parameters to the List request.
type Snapshot ¶
type Snapshot struct { // Currect status of the Snapshot. Status string `json:"status"` // Display name. Name string `json:"display_name"` // Instances onto which the Snapshot is attached. Attachments []string `json:"attachments"` // Logical group. AvailabilityZone string `json:"availability_zone"` // Is the Snapshot bootable? Bootable string `json:"bootable"` // Date created. CreatedAt time.Time `json:"-"` // Display description. Description string `json:"display_description"` // See VolumeType object for more information. VolumeType string `json:"volume_type"` // ID of the Snapshot from which this Snapshot was created. SnapshotID string `json:"snapshot_id"` // ID of the Volume from which this Snapshot was created. VolumeID string `json:"volume_id"` // User-defined key-value pairs. Metadata map[string]string `json:"metadata"` // Unique identifier. ID string `json:"id"` // Size of the Snapshot, in GB. Size int `json:"size"` }
Snapshot contains all the information associated with an OpenStack Snapshot.
func ExtractSnapshots ¶
func ExtractSnapshots(r pagination.Page) ([]Snapshot, error)
ExtractSnapshots extracts and returns Snapshots. It is used while iterating over a snapshots.List call.
func (*Snapshot) UnmarshalJSON ¶
type SnapshotPage ¶
type SnapshotPage struct {
pagination.SinglePageBase
}
SnapshotPage is a pagination.Pager that is returned from a call to the List function.
func (SnapshotPage) IsEmpty ¶
func (r SnapshotPage) IsEmpty() (bool, error)
IsEmpty returns true if a SnapshotPage contains no Snapshots.
type UpdateMetadataOpts ¶
type UpdateMetadataOpts struct {
Metadata map[string]interface{} `json:"metadata,omitempty"`
}
UpdateMetadataOpts contain options for updating an existing Snapshot. This object is passed to the snapshots.Update function. For more information about the parameters, see the Snapshot object.
func (UpdateMetadataOpts) ToSnapshotUpdateMetadataMap ¶
func (opts UpdateMetadataOpts) ToSnapshotUpdateMetadataMap() (map[string]interface{}, error)
ToSnapshotUpdateMetadataMap assembles a request body based on the contents of an UpdateMetadataOpts.
type UpdateMetadataOptsBuilder ¶
type UpdateMetadataOptsBuilder interface {
ToSnapshotUpdateMetadataMap() (map[string]interface{}, error)
}
UpdateMetadataOptsBuilder allows extensions to add additional parameters to the Update request.
type UpdateMetadataResult ¶
type UpdateMetadataResult struct {
// contains filtered or unexported fields
}
UpdateMetadataResult contains the response body and error from an UpdateMetadata request.
func UpdateMetadata ¶
func UpdateMetadata(client *golangsdk.ServiceClient, id string, opts UpdateMetadataOptsBuilder) (r UpdateMetadataResult)
UpdateMetadata will update the Snapshot with provided information. To extract the updated Snapshot from the response, call the ExtractMetadata method on the UpdateMetadataResult.
func (UpdateMetadataResult) Extract ¶
Extract will get the Snapshot object out of the commonResult object.
func (UpdateMetadataResult) ExtractMetadata ¶
func (r UpdateMetadataResult) ExtractMetadata() (map[string]interface{}, error)
ExtractMetadata returns the metadata from a response from snapshots.UpdateMetadata.