awspec 0.74.1 → 0.75.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b8dddd6e0884770202e7a0a0246768cd7140d6d2
4
- data.tar.gz: 42085569cade00490a865f4108acc8d2aeb9eab8
3
+ metadata.gz: 854646c2471fb85fee7273e6845286df2778a144
4
+ data.tar.gz: 6820b9e4e51c71a57b75da9f30fca139af783e26
5
5
  SHA512:
6
- metadata.gz: 5c49a4bbf98b442f6e3678a4d3710edd211bddc61ae8679a4a0046fa45cf2bad94f49c7d3320e5770ad6f358958cd01f3b35f97e32cd77b20f2cfcf29ce31889
7
- data.tar.gz: 1258f1a69f8d7f5d8a75e4226f35e1301d0d3871a7cf6ef5f8821062affb5ec28b7d28e13eb7889652f777d9224d65604a04fd87bce84d1e64a540b9e65f39dc
6
+ metadata.gz: 14164e74f64889927dbf416f76ef0779753053116b213f1e87f8fed1b9293dbd3339959b109efcc9533279886241b3b312cccd396b63ffb25ec05de6d14d5b69
7
+ data.tar.gz: 70e3a2081cc28fd0d01d66ab7e28c81516679e2bd5a31d90db5ef22b088d52e499017debbb6b27b217c9f1b97c3e346c10ed802d403c7af1aff760b6f2280e81
@@ -9,6 +9,7 @@ module Awspec
9
9
 
10
10
  types = %w(
11
11
  vpc ec2 rds security_group elb network_acl route_table subnet nat_gateway network_interface alb
12
+ internet_gateway
12
13
  )
13
14
 
14
15
  types.each do |type|
@@ -25,6 +25,7 @@ require 'awspec/generator/spec/iam_role'
25
25
  require 'awspec/generator/spec/acm'
26
26
  require 'awspec/generator/spec/cloudwatch_logs'
27
27
  require 'awspec/generator/spec/alb'
28
+ require 'awspec/generator/spec/internet_gateway'
28
29
 
29
30
  # Doc
30
31
  require 'awspec/generator/doc/type'
@@ -4,7 +4,7 @@ module Awspec::Generator
4
4
  include Awspec::Helper::Finder
5
5
  def generate_all
6
6
  domains = select_all_elasticsearch_domains
7
- raise 'Not Found alarm' if events.empty?
7
+ raise 'Not Found Domain' if events.empty?
8
8
  ERB.new(domain_spec_template, nil, '-').result(binding).chomp
9
9
  end
10
10
 
@@ -0,0 +1,35 @@
1
+ module Awspec::Generator
2
+ module Spec
3
+ class InternetGateway
4
+ include Awspec::Helper::Finder
5
+ def generate_by_vpc_id(vpc_id)
6
+ describes = %w(
7
+ )
8
+ vpc = find_vpc(vpc_id)
9
+ raise 'Not Found VPC' unless vpc
10
+ @vpc_id = vpc[:vpc_id]
11
+ @vpc_tag_name = vpc.tag_name
12
+ internet_gateways = select_internet_gateway_by_vpc_id(@vpc_id)
13
+ specs = internet_gateways.map do |internet_gateway|
14
+ internet_gateway_id = internet_gateway[:internet_gateway_id]
15
+ content = ERB.new(internet_gateway_spec_template, nil, '-').result(binding).gsub(/^\n/, '')
16
+ end
17
+ specs.join("\n")
18
+ end
19
+
20
+ def internet_gateway_spec_template
21
+ template = <<-'EOF'
22
+ describe internet_gateway('<%= internet_gateway_id %>') do
23
+ it { should exist }
24
+ <%- if @vpc_tag_name -%>
25
+ it { should be_attached_to('<%= @vpc_tag_name %>') }
26
+ <%- else -%>
27
+ it { should be_attached_to('<%= @vpc_id %>') }
28
+ <%- end -%>
29
+ end
30
+ EOF
31
+ template
32
+ end
33
+ end
34
+ end
35
+ end
@@ -123,6 +123,13 @@ module Awspec::Helper
123
123
  res.nat_gateways
124
124
  end
125
125
 
126
+ def select_internet_gateway_by_vpc_id(vpc_id)
127
+ res = ec2_client.describe_internet_gateways({
128
+ filters: [{ name: 'attachment.vpc-id', values: [vpc_id] }]
129
+ })
130
+ res.internet_gateways
131
+ end
132
+
126
133
  def select_network_interface_by_vpc_id(vpc_id)
127
134
  res = ec2_client.describe_network_interfaces({
128
135
  filters: [{ name: 'vpc-id', values: [vpc_id] }]
@@ -1,3 +1,3 @@
1
1
  module Awspec
2
- VERSION = '0.74.1'
2
+ VERSION = '0.75.0'
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.74.1
4
+ version: 0.75.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - k1LoW
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-04-06 00:00:00.000000000 Z
11
+ date: 2017-04-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rspec
@@ -342,6 +342,7 @@ files:
342
342
  - lib/awspec/generator/spec/iam_policy.rb
343
343
  - lib/awspec/generator/spec/iam_role.rb
344
344
  - lib/awspec/generator/spec/iam_user.rb
345
+ - lib/awspec/generator/spec/internet_gateway.rb
345
346
  - lib/awspec/generator/spec/kms.rb
346
347
  - lib/awspec/generator/spec/lambda.rb
347
348
  - lib/awspec/generator/spec/nat_gateway.rb