module AWS::EC2::TaggedCollection
Most of the AWS::EC2
collections include TaggedCollection
. This module provides methods for filtering the collection with tags.
collecion.tagged('prod').each do {|obj| ... }
Public Instance Methods
Filter the collection by one or more tag keys. If you pass multiple tag keys they will be be treated as OR conditions. If you want to AND them together call tagged multiple times (chained).
Filter the collection to items items tagged 'live' OR 'test'
collection.tagged('live', 'test')
Filter the collection to items tagged 'live' AND 'webserver'
collection.tagged('live').tagged('webserver')
# File lib/aws/ec2/tagged_collection.rb, line 51 def tagged *keys filter('tag-key', *keys) end
Filter the collection by one or more tag values. If you pass multiple tag values they will be be treated as OR conditions. If you want to AND them together call tagged multiple times (chained).
collection.tagged('stage').tagged_values('production')
# File lib/aws/ec2/tagged_collection.rb, line 61 def tagged_values *values filter('tag-value', *values) end
Filters the collection by a paired tag key and value.
ec2.instances.with_tag('role', 'web')
You can filter a single tag key with multiple values:
ec2.instances.with_tag('role', ['web', 'db'])
@param [String] tag_key @param [String, Array<String>] tag_value
# File lib/aws/ec2/tagged_collection.rb, line 35 def with_tag(tag_key, *values) filter("tag:#{tag_key}", *values) end