Class AWS::EC2::SnapshotCollection
In: lib/aws/ec2/snapshot_collection.rb
Parent: Collection

Represents a collection of Amazon EBS snapshots. Typically you should get an instance of this class by calling {EC2#snapshots}.

@example Create a snapshot from a volume

 ec2.snapshots.create(:volume => ec2.volumes["vol-123"],
                      :description => "my snapshot")
 # or:
 ec2.volumes["vol-123"].create_snapshot("my snapshot")

@example Get a snapshot by ID

 snapshot = ec2.snapshots["vol-123"]
 snapshot.exists?

@example Get a map of snapshot IDs to snapshot status

  ec2.snapshots.inject({}) { |m, s| m[i.id] = s.status; m }
  # => { "snap-12345678" => :pending, "snap-87654321" => :completed }

Methods

Included Modules

TaggedCollection

Public Class methods

Public Instance methods

Creates a snapshot of an Amazon EBS volume and stores it in Amazon S3. You can use snapshots for backups, to make identical copies of instance devices, and to save data before shutting down an instance. For more information about Amazon EBS, go to the Amazon Elastic Compute Cloud User Guide.

@return [Snapshot] An object representing the new snapshot.

@param [Hash] opts Options for creating the snapshot.

  Either +:volume+ or +:volume_id+ is required.

@param opts [Volume] :volume The Amazon EBS volume of which

  to take a snapshot.

@param opts [String] :volume_id The ID of the Amazon EBS

  volume of which to take a snapshot.

@param opts [String] :description An optional description of

  the snapshot.  May contain up to 255 characters.

@yield [Instance] Yields each volume in the collection. @return [nil]

@return [ImageCollection] A new collection that only includes

  images for which the specified user ID has explicit launch
  permissions. The user ID can be an AWS account ID, +:self+
  to return AMIs for which the sender of the request has
  explicit launch permissions, or +:all+ to return AMIs with
  public launch permissions.

@param [Array of Strings] users The AWS account IDs by which

  the new collection should be filtered.

@return [SnapshotCollection] A new collection that only

  includes snapshots owned by one or more of the specified AWS
  accounts.  The IDs +:amazon+ and +:self+ can be used to
  include snapshots owned by Amazon or AMIs owned by you,
  respectively.

@param [Array of Strings] owners The AWS account IDs by

  which the new collection should be filtered.

Protected Instance methods

[Validate]