Sha256: 6fe4db4944874af9569d62293c9ac25ac7d73a81e7eeab84ee9c1e8b2c8b6c1f

Contents?: true

Size: 1.22 KB

Versions: 7

Compression:

Stored size: 1.22 KB

Contents

module Awspec
  module Helper
    module Type
      require 'awspec/type/base'

      TYPES = %w(
        ami autoscaling_group cloudtrail cloudwatch_alarm cloudwatch_event directconnect_virtual_interface
        ebs ec2 elasticache elasticache_cache_parameter_group elb iam_group
        iam_policy iam_role iam_user lambda launch_configuration nat_gateway
        network_acl network_interface rds rds_db_cluster_parameter_group rds_db_parameter_group route53_hosted_zone
        route_table s3_bucket security_group ses_identity subnet vpc cloudfront_distribution
        elastictranscoder_pipeline
      )

      TYPES.each do |type|
        require "awspec/type/#{type}"
        define_method type do |*args|
          name = args.first
          eval "Awspec::Type::#{type.camelize}.new(name)"
        end
      end

      def self.deprecate_resource_type(old_type, new_type)
        define_method(old_type) do |*args, &block|
          puts ''
          warn Color.on_red(Color.white("!!! `#{old_type}` type is deprecated. use `#{new_type}` !!!"))
          send(new_type, *args, &block)
        end
      end

      deprecate_resource_type :auto_scaling_group, :autoscaling_group
      deprecate_resource_type :s3, :s3_bucket
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
awspec-0.52.4 lib/awspec/helper/type.rb
awspec-0.52.3 lib/awspec/helper/type.rb
awspec-0.52.2 lib/awspec/helper/type.rb
awspec-0.52.1 lib/awspec/helper/type.rb
awspec-0.52.0 lib/awspec/helper/type.rb
awspec-0.51.0 lib/awspec/helper/type.rb
awspec-0.50.0 lib/awspec/helper/type.rb