class AWS::EC2::SnapshotCollection
# => { “snap-12345678” => :pending, “snap-87654321” => :completed }
ec2.snapshots.inject({}) { |m, s| m = s.status; m }
@example Get a map of snapshot IDs to snapshot status
snapshot.exists?
snapshot = ec2.snapshots[“vol-123”]
@example Get a snapshot by ID<br><br>ec2.volumes.create_snapshot(“my snapshot”)
# or:
:description => “my snapshot”)
ec2.snapshots.create(:volume => ec2.volumes,
@example Create a snapshot from a volume
{EC2#snapshots}.
you should get an instance of this class by calling
Represents a collection of Amazon EBS snapshots. Typically
def create opts = {}
-
(Snapshot)- -
(Snapshot)- An object representing the new snapshot.
Options Hash:
(**opts)-
:description(String) -- An optional description of -
:volume_id(String) -- The ID of the Amazon EBS -
:volume(Volume) -- The Amazon EBS volume of which
Parameters:
-
opts(Hash) -- Options for creating the snapshot.
def create opts = {} if volume = opts.delete(:volume) opts[:volume_id] = volume.id end resp = client.create_snapshot(opts) Snapshot.new(resp.snapshot_id, :config => config) end
def each(&block)
-
(nil)-
Other tags:
- Yield: - Yields each snapshot in the collection.
def each(&block) opts = {} opts[:owner_ids] = @owners.map { |id| id.to_s } unless @owners.empty? opts[:restorable_by_user_ids] = @restorable_by.map { |id| id.to_s } unless @restorable_by.empty? resp = filtered_request(:describe_snapshots, opts) resp[:snapshot_set].each do |details| snapshot = Snapshot.new_from(:describe_snapshots, details, details[:snapshot_id], :config => config) yield(snapshot) end nil end
def initialize(options = {})
- Api: - private
def initialize(options = {}) @owners = options[:owners] || [] @restorable_by = options[:restorable_by] || [] super(options) end
def member_class
def member_class Snapshot end
def preserved_options
def preserved_options super.merge(:owners => @owners, :restorable_by => @restorable_by) end
def restorable_by(*users)
-
users(Array of Strings) -- The AWS account IDs by which
Returns:
-
(ImageCollection)- A new collection that only includes
def restorable_by(*users) collection_with(:restorable_by => @restorable_by + users) end
def with_owner(*owners)
-
owners(Array of Strings) -- The AWS account IDs by
Returns:
-
(SnapshotCollection)- A new collection that only
def with_owner(*owners) collection_with(:owners => @owners + owners) end