Sha256: 55758ee2556648b5a786ea75a6dafa38f42f8cf2065ac55a6376a24199425663
Contents?: true
Size: 1.36 KB
Versions: 3
Compression:
Stored size: 1.36 KB
Contents
require 'thor' require 'awspec/setup' require 'awspec/helper/credentials_loader' module Awspec class Generate < Thor class_option :profile types = %w( vpc ec2 rds security_group elb network_acl route_table subnet ) types.each do |type| desc type + ' [vpc_id]', "Generate #{type} spec from VPC ID (or VPC \"Name\" tag)" define_method type do |*args| Awspec::Helper::CredentialsLoader.load(options[:profile]) vpc_id = args.first eval "puts Awspec::Generator::Spec::#{type.camelize}.new.generate_by_vpc_id(vpc_id)" end end desc 'route53_hosted_zone [example.com.]', 'Generate route53_hosted_zone spec from Domain name' def route53_hosted_zone(hosted_zone) Awspec::Helper::CredentialsLoader.load(options[:profile]) puts Awspec::Generator::Spec::Route53HostedZone.new.generate_by_domain_name(hosted_zone) end types_for_generate_all = %w( iam_policy cloudwatch_alarm directconnect ) types_for_generate_all.each do |type| if type == 'iam_policy' desc 'iam_policy', 'Generate attached iam_policy spec' else desc type, "Generate #{type} spec" end define_method type do Awspec::Helper::CredentialsLoader.load(options[:profile]) eval "puts Awspec::Generator::Spec::#{type.camelize}.new.generate_all" end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
awspec-0.23.0 | lib/awspec/command/generate.rb |
awspec-0.22.1 | lib/awspec/command/generate.rb |
awspec-0.22.0 | lib/awspec/command/generate.rb |