Skip to content

Instantly share code, notes, and snippets.

@tmclaugh
Forked from mlehner616/ec2tags.rb
Created April 7, 2015 22:22
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save tmclaugh/ce1543a21f6370e306c1 to your computer and use it in GitHub Desktop.
Save tmclaugh/ce1543a21f6370e306c1 to your computer and use it in GitHub Desktop.
require 'facter'
require 'json'
if Facter.value("ec2_instance_id") != nil
instance_id = Facter.value("ec2_instance_id")
region = Facter.value("ec2_placement_availability_zone")[0..-2]
tags = Facter::Util::Resolution.exec("aws ec2 describe-tags --region #{region} --filters \"Name=resource-id,Values=#{instance_id}\" --query 'Tags[*].{value:Value,key:Key}'")
parsed_tags = JSON.parse(tags)
parsed_tags.each do |tag|
fact = "ec2_tag_#{tag["key"].gsub(/\-|\/|:/, '_')}"
Facter.add(fact) { setcode { tag["value"] } }
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment