class AWS::AutoScaling::TagCollection
group.update(:tags => tags)
# updating a group’s tags
group = auto_scaling.groups.create(‘group-name’, :tags => tags, …)
# creating a group with tags
]
{ :key => ‘role’, :value => ‘webserver’ }, # tag name and value
{ :key => ‘auto-scaling-instance’ }, # tag name only
tags = [
Both of these methods accept a :tags
option.
* [update]{Group#update} an Auto Scaling group
* [create]{GroupCollection#create} an Auto Scaling group
You can create Auto Scaling tags when you:
== Creating Tags
auto_scaling.filter(:propagate_at_launch, true).to_a
# returns all tags that propagate at launch
auto_scaling.filter(:auto_scaling_group, ‘group1’).to_a
# returns tags with the Auto Scaling group name “group1”
auto_scaling.filter(:key, ‘role’).filter(:value, ‘webserver’)to_a
# returns tags with the key “role” and value “webserver”
auto_scaling.filter(:key, ‘role’).to_a
# returns tags with the key “role”
You can filter the tags returned using {#filter}:
== Filters
end
puts “#{tag.key}:#{tag.value}”
auto_scaling.tags.each do |tag|
auto_scaling = AWS::AutoScaling.new
Provides an interface for enumerating tags defined in Auto Scaling.
def _each_item next_token, limit, options = {}, &block
def _each_item next_token, limit, options = {}, &block options[:next_token] = next_token if next_token options[:max_records] = limit if limit options[:filters] = @filters unless @filters.empty? resp = client.describe_tags(options) resp.tags.each do |tag| yield(Tag.new(tag.to_hash.merge(:config => config))) end resp.data[:next_token] end
def filter name, *values
-
(TagCollection)
-
Parameters:
-
values
(Array
) -- -
name
(Symbol
) -- Valid filter names include:
def filter name, *values name = name.to_s.gsub(/_/, '-') values = values.flatten.map(&:to_s) filter = { :name => name, :values => values } TagCollection.new(:filters => @filters + [filter], :config => config) end
def initialize options = {}
- Private: -
def initialize options = {} @filters = options.delete(:filters) || [] super end