awspec 0.8.0 → 0.8.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (37) hide show
  1. checksums.yaml +4 -4
  2. data/doc/resource_types.md +2 -0
  3. data/lib/awspec/generator/doc/type/auto_scaling_group.rb +1 -1
  4. data/lib/awspec/generator/doc/type/ebs.rb +1 -1
  5. data/lib/awspec/generator/doc/type/ec2.rb +1 -1
  6. data/lib/awspec/generator/doc/type/elb.rb +1 -1
  7. data/lib/awspec/generator/doc/type/iam_user.rb +2 -2
  8. data/lib/awspec/generator/doc/type/lambda.rb +1 -1
  9. data/lib/awspec/generator/doc/type/rds.rb +1 -1
  10. data/lib/awspec/generator/doc/type/rds_db_parameter_group.rb +0 -1
  11. data/lib/awspec/generator/doc/type/route53_hosted_zone.rb +1 -1
  12. data/lib/awspec/generator/doc/type/route_table.rb +1 -1
  13. data/lib/awspec/generator/doc/type/s3.rb +1 -1
  14. data/lib/awspec/generator/doc/type/security_group.rb +1 -1
  15. data/lib/awspec/generator/doc/type/subnet.rb +1 -1
  16. data/lib/awspec/generator/doc/type/vpc.rb +1 -1
  17. data/lib/awspec/generator/template.rb +1 -1
  18. data/lib/awspec/matcher/belong_to_db_subnet_group.rb +1 -1
  19. data/lib/awspec/matcher/belong_to_iam_group.rb +1 -1
  20. data/lib/awspec/matcher/belong_to_subnet.rb +1 -1
  21. data/lib/awspec/type/auto_scaling_group.rb +4 -15
  22. data/lib/awspec/type/base.rb +10 -1
  23. data/lib/awspec/type/ebs.rb +6 -16
  24. data/lib/awspec/type/ec2.rb +6 -15
  25. data/lib/awspec/type/elb.rb +7 -18
  26. data/lib/awspec/type/iam_user.rb +3 -14
  27. data/lib/awspec/type/lambda.rb +3 -14
  28. data/lib/awspec/type/rds.rb +10 -21
  29. data/lib/awspec/type/rds_db_parameter_group.rb +1 -0
  30. data/lib/awspec/type/route53_hosted_zone.rb +3 -12
  31. data/lib/awspec/type/route_table.rb +3 -14
  32. data/lib/awspec/type/s3.rb +2 -4
  33. data/lib/awspec/type/security_group.rb +7 -16
  34. data/lib/awspec/type/subnet.rb +3 -14
  35. data/lib/awspec/type/vpc.rb +4 -13
  36. data/lib/awspec/version.rb +1 -1
  37. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7b82928f9ac3ba086bd8057f29a2d29d924b6173
4
- data.tar.gz: 46a33e636b743394115ecc99d5b3db3418716041
3
+ metadata.gz: edbd8a2286e70ffc10e86c7c47f11158b3a5df0c
4
+ data.tar.gz: 99c9ac752bfb8590c1d39e34e21e21434407fa59
5
5
  SHA512:
6
- metadata.gz: 898a43391065b7f8f4cae1bec98f4b68e8c4328db0acf23e4356e40bbed8782930f7d371ca037396a6c48bb5a1f8918d90515a25921b7305e4474a0c96d55495
7
- data.tar.gz: d4490f55c1e4f4ebf2f85a081ca7235f1c3d6236c598145bf30f62e04cae818da4dfc9d210be8e1a40849511ca6393f3d4833e183210c93305bca9d3ad7fae05
6
+ metadata.gz: e320bfea9c343abe46adace0eb3568af0d00ef304720c8fc20870f7fe3ee379ae89b46098644a97e7e549ca7a868a06ffdc206ef8a6a7ee510de8da1fd4b77c4
7
+ data.tar.gz: 3b40f6d0ccb4068bcd995d4c9b2b4198fe9f6b93aa00822a44f56e360f3c5ca785f99abec7c2011161331757e674e6afd4f44b61e022c6ad84af0c9e6a9b29e1
@@ -277,4 +277,6 @@ IamUser resource type.
277
277
 
278
278
  ### have_iam_policy
279
279
 
280
+ ### belong_to_iam_group
281
+
280
282
  #### its(:path), its(:user_name), its(:user_id), its(:arn), its(:create_date), its(:password_last_used)
@@ -5,7 +5,7 @@ module Awspec::Generator
5
5
  def initialize
6
6
  super
7
7
  @type = Awspec::Type::AutoScalingGroup.new('my-auto-scaling-group')
8
- @ret = @type.group
8
+ @ret = @type.resource
9
9
  @matchers = []
10
10
  @ignore_matchers = []
11
11
  @describes = []
@@ -6,7 +6,7 @@ module Awspec::Generator
6
6
  super
7
7
  @type_name = 'EBS'
8
8
  @type = Awspec::Type::Ebs.new('my-ebs')
9
- @ret = @type.volume
9
+ @ret = @type.resource
10
10
  @matchers = []
11
11
  @ignore_matchers = []
12
12
  @describes = []
@@ -6,7 +6,7 @@ module Awspec::Generator
6
6
  super
7
7
  @type_name = 'EC2'
8
8
  @type = Awspec::Type::Ec2.new('my-ec2')
9
- @ret = @type.instance
9
+ @ret = @type.resource
10
10
  @matchers = %w(belong_to_vpc belong_to_subnet)
11
11
  @ignore_matchers = []
12
12
  @describes = []
@@ -6,7 +6,7 @@ module Awspec::Generator
6
6
  super
7
7
  @type_name = 'ELB'
8
8
  @type = Awspec::Type::Elb.new('my-elb')
9
- @ret = @type.lb
9
+ @ret = @type.resource
10
10
  @matchers = %w(belong_to_vpc belong_to_subnet)
11
11
  @ignore_matchers = []
12
12
  @describes = %w(
@@ -6,8 +6,8 @@ module Awspec::Generator
6
6
  super
7
7
  @type_name = 'IamUser'
8
8
  @type = Awspec::Type::IamUser.new('my-iam-user')
9
- @ret = @type.user
10
- @matchers = []
9
+ @ret = @type.resource
10
+ @matchers = %w(belong_to_iam_group)
11
11
  @ignore_matchers = []
12
12
  @describes = []
13
13
  end
@@ -6,7 +6,7 @@ module Awspec::Generator
6
6
  super
7
7
  @type_name = 'Lambda'
8
8
  @type = Awspec::Type::Lambda.new('my-lambda-function-name')
9
- @ret = @type.function
9
+ @ret = @type.resource
10
10
  @matchers = []
11
11
  @ignore_matchers = []
12
12
  @describes = []
@@ -6,7 +6,7 @@ module Awspec::Generator
6
6
  super
7
7
  @type_name = 'RDS'
8
8
  @type = Awspec::Type::Rds.new('my-rds')
9
- @ret = @type.instance
9
+ @ret = @type.resource
10
10
  @matchers = %w(belong_to_vpc belong_to_subnet belong_to_db_subnet_group)
11
11
  @ignore_matchers = []
12
12
  @describes = %w(vpc_id)
@@ -5,7 +5,6 @@ module Awspec::Generator
5
5
  def initialize
6
6
  super
7
7
  @type = Awspec::Type::RdsDbParameterGroup.new('my-rds-db-parameter-group')
8
- @ret = @type.parameters
9
8
  @matchers = []
10
9
  @ignore_matchers = []
11
10
  @describes = []
@@ -5,7 +5,7 @@ module Awspec::Generator
5
5
  def initialize
6
6
  super
7
7
  @type = Awspec::Type::Route53HostedZone.new('example.com.')
8
- @ret = @type.hosted_zone
8
+ @ret = @type.resource
9
9
  @matchers = []
10
10
  @ignore_matchers = []
11
11
  @describes = []
@@ -5,7 +5,7 @@ module Awspec::Generator
5
5
  def initialize
6
6
  super
7
7
  @type = Awspec::Type::RouteTable.new('my-route-table')
8
- @ret = @type.route_table
8
+ @ret = @type.resource
9
9
  @matchers = []
10
10
  @ignore_matchers = []
11
11
  @describes = []
@@ -5,7 +5,7 @@ module Awspec::Generator
5
5
  def initialize
6
6
  super
7
7
  @type = Awspec::Type::S3.new('my-bucket')
8
- @ret = @type.bucket
8
+ @ret = @type.resource
9
9
  @matchers = []
10
10
  @ignore_matchers = []
11
11
  @describes = []
@@ -5,7 +5,7 @@ module Awspec::Generator
5
5
  def initialize
6
6
  super
7
7
  @type = Awspec::Type::SecurityGroup.new('my-security-group-name')
8
- @ret = @type.sg
8
+ @ret = @type.resource
9
9
  @matchers = ['its(:inbound), its(:outbound)']
10
10
  @ignore_matchers = %w(be_opened be_inbound_opened be_outbound_opened)
11
11
  @describes = %w(ip_permissions_count ip_permissions_egress_count)
@@ -5,7 +5,7 @@ module Awspec::Generator
5
5
  def initialize
6
6
  super
7
7
  @type = Awspec::Type::Subnet.new('my-route-table')
8
- @ret = @type.subnet
8
+ @ret = @type.resource
9
9
  @matchers = []
10
10
  @ignore_matchers = []
11
11
  @describes = []
@@ -6,7 +6,7 @@ module Awspec::Generator
6
6
  super
7
7
  @type_name = 'VPC'
8
8
  @type = Awspec::Type::Vpc.new('my-vpc')
9
- @ret = @type.vpc
9
+ @ret = @type.resource
10
10
  @matchers = []
11
11
  @ignore_matchers = []
12
12
  @describes = []
@@ -63,7 +63,7 @@ module Awspec::Generator
63
63
  super
64
64
  @type_name = '#{@type.to_camel_case}'
65
65
  @type = Awspec::Type::#{@type.to_camel_case}.new('my-#{@type.to_snake_case.tr('_', '-')}')
66
- # @ret = # @FIXME
66
+ @ret = @type.resource
67
67
  @matchers = []
68
68
  @ignore_matchers = []
69
69
  @describes = []
@@ -1,5 +1,5 @@
1
1
  RSpec::Matchers.define :belong_to_db_subnet_group do |db_subnet_group_name|
2
2
  match do |resource|
3
- return true if resource.instance[:db_subnet_group][:db_subnet_group_name] == db_subnet_group_name
3
+ return true if resource.resource[:db_subnet_group][:db_subnet_group_name] == db_subnet_group_name
4
4
  end
5
5
  end
@@ -1,6 +1,6 @@
1
1
  RSpec::Matchers.define :belong_to_iam_group do |group_id|
2
2
  match do |resource|
3
- groups = resource.select_iam_group_by_user_name(resource.user[:user_name])
3
+ groups = resource.select_iam_group_by_user_name(resource.resource[:user_name])
4
4
  groups.find do |group|
5
5
  group.group_id == group_id || group.group_name == group_id
6
6
  end
@@ -10,7 +10,7 @@ RSpec::Matchers.define :belong_to_subnet do |subnet_id|
10
10
 
11
11
  # RDS
12
12
  if resource.instance_of?(Awspec::Type::Rds)
13
- subnets = resource.instance[:db_subnet_group][:subnets]
13
+ subnets = resource.resource[:db_subnet_group][:subnets]
14
14
  ret = subnets.find do |s|
15
15
  s[:subnet_identifier] == subnet_id
16
16
  end
@@ -1,33 +1,22 @@
1
1
  module Awspec::Type
2
2
  class AutoScalingGroup < Base
3
- attr_reader :group
4
-
5
3
  def initialize(id)
6
4
  super
7
- @group = find_auto_scaling_group(id)
8
- @id = @group[:auto_scaling_group_arn] if @group
5
+ @resource = find_auto_scaling_group(id)
6
+ @id = @resource[:auto_scaling_group_arn] if @resource
9
7
  end
10
8
 
11
9
  def has_elb?(name)
12
- @group.load_balancer_names.find do |lb_name|
10
+ @resource.load_balancer_names.find do |lb_name|
13
11
  lb_name == name
14
12
  end
15
13
  end
16
14
 
17
15
  def has_ec2?(id)
18
16
  ec2 = find_ec2(id)
19
- @group.instances.find do |instance|
17
+ @resource.instances.find do |instance|
20
18
  instance.instance_id = ec2.instance_id
21
19
  end if ec2
22
20
  end
23
-
24
- def method_missing(name)
25
- describe = name.to_sym
26
- if @group.members.include?(describe)
27
- @group[describe]
28
- else
29
- super
30
- end
31
- end
32
21
  end
33
22
  end
@@ -4,7 +4,7 @@ require 'awspec/helper/finder'
4
4
  module Awspec::Type
5
5
  class Base
6
6
  include Awspec::Helper::Finder
7
- attr_reader :id
7
+ attr_reader :id, :resource
8
8
 
9
9
  def initialize(id = nil)
10
10
  super
@@ -14,5 +14,14 @@ module Awspec::Type
14
14
  def exists?
15
15
  @id
16
16
  end
17
+
18
+ def method_missing(name)
19
+ describe = name.to_sym
20
+ if @resource.members.include?(describe)
21
+ @resource[describe]
22
+ else
23
+ super
24
+ end
25
+ end
17
26
  end
18
27
  end
@@ -1,11 +1,9 @@
1
1
  module Awspec::Type
2
2
  class Ebs < Base
3
- attr_reader :volume
4
-
5
3
  def initialize(id)
6
4
  super
7
- @volume = find_ebs(id)
8
- @id = @volume[:volume_id] if @volume
5
+ @resource = find_ebs(id)
6
+ @id = @resource[:volume_id] if @resource
9
7
  end
10
8
 
11
9
  states = %w(
@@ -14,24 +12,16 @@ module Awspec::Type
14
12
 
15
13
  states.each do |state|
16
14
  define_method state.tr('-', '_') + '?' do
17
- @volume[:state] == state
18
- end
19
- end
20
-
21
- def method_missing(name)
22
- describe = name.to_sym
23
- if @volume.members.include?(describe)
24
- @volume[describe]
25
- else
26
- super
15
+ @resource[:state] == state
27
16
  end
28
17
  end
29
18
 
30
19
  def attached_to?(instance_id)
31
20
  instance = find_ec2(instance_id)
32
21
  return false unless instance
33
- return false unless @volume[:attachments]
34
- @volume[:attachments][0][:instance_id] == instance[:instance_id] && @volume[:attachments][0][:state] == 'attached'
22
+ return false unless @resource[:attachments]
23
+ @resource[:attachments][0][:instance_id] == instance[:instance_id] && \
24
+ @resource[:attachments][0][:state] == 'attached'
35
25
  end
36
26
  end
37
27
  end
@@ -1,12 +1,12 @@
1
1
  module Awspec::Type
2
2
  class Ec2 < Base
3
- attr_reader :client, :instance
3
+ attr_reader :client
4
4
 
5
5
  def initialize(id)
6
6
  super
7
7
  @client = @ec2_client
8
- @instance = find_ec2(id)
9
- @id = @instance[:instance_id] if @instance
8
+ @resource = find_ec2(id)
9
+ @id = @resource[:instance_id] if @resource
10
10
  end
11
11
 
12
12
  states = %w(
@@ -16,16 +16,7 @@ module Awspec::Type
16
16
 
17
17
  states.each do |state|
18
18
  define_method state.tr('-', '_') + '?' do
19
- @instance[:state][:name] == state
20
- end
21
- end
22
-
23
- def method_missing(name)
24
- describe = name.to_sym
25
- if @instance.members.include?(describe)
26
- @instance[describe]
27
- else
28
- super
19
+ @resource[:state][:name] == state
29
20
  end
30
21
  end
31
22
 
@@ -40,7 +31,7 @@ module Awspec::Type
40
31
  end
41
32
 
42
33
  def has_security_group?(sg_id)
43
- sgs = @instance[:security_groups]
34
+ sgs = @resource[:security_groups]
44
35
  ret = sgs.find do |sg|
45
36
  sg[:group_id] == sg_id || sg[:group_name] == sg_id
46
37
  end
@@ -53,7 +44,7 @@ module Awspec::Type
53
44
  end
54
45
 
55
46
  def has_ebs?(volume_id)
56
- blocks = @instance[:block_device_mappings]
47
+ blocks = @resource[:block_device_mappings]
57
48
  ret = blocks.find do |block|
58
49
  next false unless block[:ebs]
59
50
  block[:ebs][:volume_id] == volume_id
@@ -1,11 +1,9 @@
1
1
  module Awspec::Type
2
2
  class Elb < Base
3
- attr_reader :lb
4
-
5
3
  def initialize(id)
6
4
  super
7
- @lb = find_elb(id)
8
- @id = @lb[:load_balancer_name] if @lb
5
+ @resource = find_elb(id)
6
+ @id = @resource[:load_balancer_name] if @resource
9
7
  end
10
8
 
11
9
  health_check_options = %w(
@@ -15,28 +13,19 @@ module Awspec::Type
15
13
 
16
14
  health_check_options.each do |option|
17
15
  define_method 'health_check_' + option do
18
- @lb[:health_check][option]
19
- end
20
- end
21
-
22
- def method_missing(name)
23
- describe = name.to_sym
24
- if @lb.members.include?(describe)
25
- @lb[describe]
26
- else
27
- super
16
+ @resource[:health_check][option]
28
17
  end
29
18
  end
30
19
 
31
20
  def has_ec2?(id)
32
21
  ec2 = find_ec2(id)
33
- @lb.instances.find do |instance|
22
+ @resource.instances.find do |instance|
34
23
  instance.instance_id = ec2.instance_id
35
24
  end if ec2
36
25
  end
37
26
 
38
27
  def has_security_group?(sg_id)
39
- sgs = @lb[:security_groups]
28
+ sgs = @resource[:security_groups]
40
29
  ret = sgs.find do |sg|
41
30
  sg == sg_id
42
31
  end
@@ -49,7 +38,7 @@ module Awspec::Type
49
38
  end
50
39
 
51
40
  def has_subnet?(subnet_id)
52
- subnets = @lb[:subnets]
41
+ subnets = @resource[:subnets]
53
42
  ret = subnets.find do |s|
54
43
  s == subnet_id
55
44
  end
@@ -61,7 +50,7 @@ module Awspec::Type
61
50
  end
62
51
 
63
52
  def has_listener?(protocol:, port:, instance_protocol:, instance_port:)
64
- @lb[:listener_descriptions].find do |desc|
53
+ @resource[:listener_descriptions].find do |desc|
65
54
  listener = desc.listener
66
55
  listener.protocol == protocol && listener.load_balancer_port == port && \
67
56
  listener.instance_protocol == instance_protocol && listener.instance_port == instance_port
@@ -1,24 +1,13 @@
1
1
  module Awspec::Type
2
2
  class IamUser < Base
3
- attr_reader :user
4
-
5
3
  def initialize(id)
6
4
  super
7
- @user = find_iam_user(id)
8
- @id = @user[:user_id] if @user
9
- end
10
-
11
- def method_missing(name)
12
- describe = name.to_sym
13
- if @user.members.include?(describe)
14
- @user[describe]
15
- else
16
- super
17
- end
5
+ @resource = find_iam_user(id)
6
+ @id = @resource[:user_id] if @resource
18
7
  end
19
8
 
20
9
  def has_iam_policy?(policy_id)
21
- policies = select_iam_policy_by_user_name(@user[:user_name])
10
+ policies = select_iam_policy_by_user_name(@resource[:user_name])
22
11
  policies.find do |policy|
23
12
  policy.policy_arn == policy_id || policy.policy_name == policy_id
24
13
  end
@@ -1,24 +1,13 @@
1
1
  module Awspec::Type
2
2
  class Lambda < Base
3
- attr_reader :function
4
-
5
3
  def initialize(id)
6
4
  super
7
- @function = find_lambda(id)
8
- @id = @function[:function_arn] if @function
9
- end
10
-
11
- def method_missing(name)
12
- describe = name.to_sym
13
- if @function.members.include?(describe)
14
- @function[describe]
15
- else
16
- super
17
- end
5
+ @resource = find_lambda(id)
6
+ @id = @resource[:function_arn] if @resource
18
7
  end
19
8
 
20
9
  def timeout
21
- @function[:timeout]
10
+ @resource[:timeout]
22
11
  end
23
12
 
24
13
  def has_event_source?(event_source_arn)
@@ -1,11 +1,9 @@
1
1
  module Awspec::Type
2
2
  class Rds < Base
3
- attr_reader :instance
4
-
5
3
  def initialize(id)
6
4
  super
7
- @instance = find_rds(id)
8
- @id = @instance[:db_instance_identifier] if @instance
5
+ @resource = find_rds(id)
6
+ @id = @resource[:db_instance_identifier] if @resource
9
7
  end
10
8
 
11
9
  states = %w(
@@ -20,21 +18,12 @@ module Awspec::Type
20
18
 
21
19
  states.each do |state|
22
20
  define_method state.tr('-', '_') + '?' do
23
- @instance[:db_instance_status] == state
24
- end
25
- end
26
-
27
- def method_missing(name)
28
- describe = name.to_sym
29
- if @instance.members.include?(describe)
30
- @instance[describe]
31
- else
32
- super
21
+ @resource[:db_instance_status] == state
33
22
  end
34
23
  end
35
24
 
36
25
  def vpc_id
37
- @instance[:db_subnet_group][:vpc_id]
26
+ @resource[:db_subnet_group][:vpc_id]
38
27
  end
39
28
 
40
29
  def has_security_group?(sg_id)
@@ -45,14 +34,14 @@ module Awspec::Type
45
34
  end
46
35
 
47
36
  def has_db_parameter_group?(name)
48
- pgs = @instance[:db_parameter_groups]
37
+ pgs = @resource[:db_parameter_groups]
49
38
  pgs.find do |pg|
50
39
  pg[:db_parameter_group_name] == name
51
40
  end
52
41
  end
53
42
 
54
43
  def has_option_group?(name)
55
- ogs = @instance[:option_group_memberships]
44
+ ogs = @resource[:option_group_memberships]
56
45
  ogs.find do |og|
57
46
  og[:option_group_name] == name
58
47
  end
@@ -61,14 +50,14 @@ module Awspec::Type
61
50
  private
62
51
 
63
52
  def has_vpc_security_group_id?(sg_id)
64
- sgs = @instance[:vpc_security_groups]
53
+ sgs = @resource[:vpc_security_groups]
65
54
  sgs.find do |sg|
66
55
  sg[:vpc_security_group_id] == sg_id
67
56
  end
68
57
  end
69
58
 
70
59
  def has_vpc_security_group_name?(sg_id)
71
- sgs = @instance[:vpc_security_groups]
60
+ sgs = @resource[:vpc_security_groups]
72
61
  res = @ec2_client.describe_security_groups({
73
62
  filters: [{ name: 'group-name', values: [sg_id] }]
74
63
  })
@@ -79,7 +68,7 @@ module Awspec::Type
79
68
  end
80
69
 
81
70
  def has_vpc_security_group_tag_name?(sg_id)
82
- sgs = @instance[:vpc_security_groups]
71
+ sgs = @resource[:vpc_security_groups]
83
72
  res = @ec2_client.describe_security_groups({
84
73
  filters: [{ name: 'tag:Name', values: [sg_id] }]
85
74
  })
@@ -90,7 +79,7 @@ module Awspec::Type
90
79
  end
91
80
 
92
81
  def has_db_security_group_name?(sg_id)
93
- sgs = @instance[:db_security_groups]
82
+ sgs = @resource[:db_security_groups]
94
83
  sgs.find do |sg|
95
84
  sg[:db_security_group_name] == sg_id
96
85
  end
@@ -18,6 +18,7 @@ module Awspec::Type
18
18
  end
19
19
  end
20
20
  @id = name unless @parameters.empty?
21
+ @resource = @parameters
21
22
  end
22
23
 
23
24
  def method_missing(name)
@@ -1,11 +1,11 @@
1
1
  module Awspec::Type
2
2
  class Route53HostedZone < Base
3
- attr_reader :hosted_zone, :resource_record_sets
3
+ attr_reader :resource_record_sets
4
4
 
5
5
  def initialize(id)
6
6
  super
7
- @hosted_zone = find_hosted_zone(id)
8
- @id = @hosted_zone[:id] if @hosted_zone
7
+ @resource = find_hosted_zone(id)
8
+ @id = @resource[:id] if @resource
9
9
  return unless @id
10
10
  res = @route53_client.list_resource_record_sets({
11
11
  hosted_zone_id: @id
@@ -30,14 +30,5 @@ module Awspec::Type
30
30
  end
31
31
  end
32
32
  end
33
-
34
- def method_missing(name)
35
- describe = name.to_sym
36
- if @hosted_zone.members.include?(describe)
37
- @hosted_zone[describe]
38
- else
39
- super
40
- end
41
- end
42
33
  end
43
34
  end
@@ -1,15 +1,13 @@
1
1
  module Awspec::Type
2
2
  class RouteTable < Base
3
- attr_reader :route_table
4
-
5
3
  def initialize(id)
6
4
  super
7
- @route_table = find_route_table(id)
8
- @id = @route_table[:route_table_id] if @route_table
5
+ @resource = find_route_table(id)
6
+ @id = @resource[:route_table_id] if @resource
9
7
  end
10
8
 
11
9
  def has_route?(target, destination = nil)
12
- @route_table.routes.find do |route|
10
+ @resource.routes.find do |route|
13
11
  if destination
14
12
  next false unless route.destination_cidr_block == destination
15
13
  end
@@ -18,14 +16,5 @@ module Awspec::Type
18
16
  next true if igw.internet_gateway_id == target || igw.tag_name == target
19
17
  end
20
18
  end
21
-
22
- def method_missing(name)
23
- describe = name.to_sym
24
- if @route_table.members.include?(describe)
25
- @route_table[describe]
26
- else
27
- super
28
- end
29
- end
30
19
  end
31
20
  end
@@ -1,11 +1,9 @@
1
1
  module Awspec::Type
2
2
  class S3 < Base
3
- attr_reader :bucket
4
-
5
3
  def initialize(id)
6
4
  super
7
- @bucket = find_bucket(id)
8
- @id = id if @bucket
5
+ @resource = find_bucket(id)
6
+ @id = id if @resource
9
7
  end
10
8
 
11
9
  def has_object?(key)
@@ -1,22 +1,13 @@
1
1
  module Awspec::Type
2
2
  class SecurityGroup < Base
3
- attr_reader :client, :sg, :inbound
3
+ attr_reader :client
4
4
 
5
5
  def initialize(id)
6
6
  super
7
7
  @client = @ec2_client
8
8
  @inbound = true
9
- @sg = find_security_group(id)
10
- @id = @sg[:group_id] if @sg
11
- end
12
-
13
- def method_missing(name)
14
- describe = name.to_s
15
- if @sg.key?(describe)
16
- @sg[describe]
17
- else
18
- super
19
- end
9
+ @resource = find_security_group(id)
10
+ @id = @resource[:group_id] if @resource
20
11
  end
21
12
 
22
13
  def opened?(port = nil, protocol = nil, cidr = nil)
@@ -28,7 +19,7 @@ module Awspec::Type
28
19
  end
29
20
 
30
21
  def inbound_opened?(port = nil, protocol = nil, cidr = nil)
31
- @sg[:ip_permissions].find do |permission|
22
+ @resource[:ip_permissions].find do |permission|
32
23
  next true unless port
33
24
  next true unless permission[:from_port]
34
25
  next true unless permission[:to_port]
@@ -52,7 +43,7 @@ module Awspec::Type
52
43
  end
53
44
 
54
45
  def outbound_opened?(port = nil, protocol = nil, cidr = nil)
55
- @sg[:ip_permissions_egress].find do |permission|
46
+ @resource[:ip_permissions_egress].find do |permission|
56
47
  next true unless port
57
48
  next true unless permission[:from_port]
58
49
  next true unless permission[:to_port]
@@ -86,12 +77,12 @@ module Awspec::Type
86
77
  end
87
78
 
88
79
  def ip_permissions_count
89
- @sg[:ip_permissions].count
80
+ @resource[:ip_permissions].count
90
81
  end
91
82
  alias_method :inbound_permissions_count, :ip_permissions_count
92
83
 
93
84
  def ip_permissions_egress_count
94
- @sg[:ip_permissions_egress].count
85
+ @resource[:ip_permissions_egress].count
95
86
  end
96
87
  alias_method :outbound_permissions_count, :ip_permissions_egress_count
97
88
  end
@@ -1,11 +1,9 @@
1
1
  module Awspec::Type
2
2
  class Subnet < Base
3
- attr_reader :subnet
4
-
5
3
  def initialize(id)
6
4
  super
7
- @subnet = find_subnet(id)
8
- @id = @subnet[:subnet_id] if @subnet
5
+ @resource = find_subnet(id)
6
+ @id = @resource[:subnet_id] if @resource
9
7
  end
10
8
 
11
9
  states = %w(
@@ -14,16 +12,7 @@ module Awspec::Type
14
12
 
15
13
  states.each do |state|
16
14
  define_method state + '?' do
17
- @subnet[:state] == state
18
- end
19
- end
20
-
21
- def method_missing(name)
22
- describe = name.to_sym
23
- if @subnet.members.include?(describe)
24
- @subnet[describe]
25
- else
26
- super
15
+ @resource[:state] == state
27
16
  end
28
17
  end
29
18
  end
@@ -1,12 +1,12 @@
1
1
  module Awspec::Type
2
2
  class Vpc < Base
3
- attr_reader :client, :vpc
3
+ attr_reader :client
4
4
 
5
5
  def initialize(id)
6
6
  super
7
7
  @client = @ec2_client
8
- @vpc = find_vpc(id)
9
- @id = @vpc[:vpc_id] if @vpc
8
+ @resource = find_vpc(id)
9
+ @id = @resource[:vpc_id] if @resource
10
10
  end
11
11
 
12
12
  states = %w(
@@ -15,16 +15,7 @@ module Awspec::Type
15
15
 
16
16
  states.each do |state|
17
17
  define_method state + '?' do
18
- @vpc[:state] == state
19
- end
20
- end
21
-
22
- def method_missing(name)
23
- describe = name.to_s
24
- if @vpc.key?(describe)
25
- @vpc[describe]
26
- else
27
- super
18
+ @resource[:state] == state
28
19
  end
29
20
  end
30
21
 
@@ -1,3 +1,3 @@
1
1
  module Awspec
2
- VERSION = '0.8.0'
2
+ VERSION = '0.8.1'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: awspec
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.0
4
+ version: 0.8.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - k1LoW
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-09-02 00:00:00.000000000 Z
11
+ date: 2015-09-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rspec