roadworker 0.5.6 → 0.5.7.beta

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: bd9d533fd95da3d00de4f209a6642802942e8aac
4
- data.tar.gz: 4f027ff0221fd36e076a8e27093be368c746ac47
3
+ metadata.gz: df2616478603cce9612784bdc6632dcde6ea329f
4
+ data.tar.gz: 21b8701ffcdc6c4bef2c23d7f0d2947d848e6918
5
5
  SHA512:
6
- metadata.gz: 824f208791c633e945d2065f55b4fb51f671bff3d8747ce77ca19541d0a61249cc1f024d7c61e6bc0bc68c7a699b72d79b9ca084c57bae7d454af12529b31a13
7
- data.tar.gz: f8783015a66ba36b62cb9469e8b0205cf38f017d155140a4156fa3eb883138409b228282dd1591dd97519d2eb7d86a41dbe3c10bf4b761abc3820ca830313417
6
+ metadata.gz: 82872d5bfcf4fffdc5689c427dcc89a313776ad997cafaba8ae094739ea8479d4409e3c41f4d1ef65cfd1e21fb69356df99f8b19f9cf1218d4ddf6880e7dc735
7
+ data.tar.gz: 31144baa12f2f5eb32a43cf04c6ab360119fa733bbf07b20c2509ba21a606164418bd9667052d2a473506a4203f359eea7311e090e330d69b60c912007adb47c
data/README.md CHANGED
@@ -21,6 +21,9 @@ It defines the state of Route53 using DSL, and updates Route53 according to DSL.
21
21
  * Support Calculated Health Checks
22
22
  * Support New Health Check attributes
23
23
  * Add template feature
24
+ * `>= 0.5.7`
25
+ * Fix for `dualstack` prefix
26
+ * Use constant for CanonicalHostedZoneNameID
24
27
 
25
28
  ## Installation
26
29
 
@@ -111,7 +111,8 @@ begin
111
111
  client.export do |exported, converter|
112
112
  exported[:hosted_zones].each do |zone|
113
113
  route_file_basename = zone[:name].sub(/\.\Z/, '')
114
- route_file_basename << '.private' unless zone[:vpcs].empty?
114
+ route_file_basename << ".private" unless zone[:vpcs].empty?
115
+ route_file_basename << ".#{zone[:vpcs].first.vpc_id}" unless zone[:vpcs].empty?
115
116
  route_file_basename << '.route'
116
117
 
117
118
  route_file = File.join(File.dirname(output_file), route_file_basename)
@@ -5,20 +5,50 @@ module Aws
5
5
 
6
6
  # http://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region
7
7
  S3_WEBSITE_ENDPOINTS = {
8
- 's3-website-us-east-1.amazonaws.com' => 'z3AQBSTGFYJSTF',
9
- 's3-website-us-west-2.amazonaws.com' => 'z3BJ6K6RIION7M',
10
- 's3-website-us-west-1.amazonaws.com' => 'z2F56UZL2M1ACD',
11
- 's3-website-eu-west-1.amazonaws.com' => 'z1BKCTXD74EZPE',
12
- 's3-website.eu-central-1.amazonaws.com' => 'z21DNDUVLTQW6Q',
13
- 's3-website-ap-southeast-1.amazonaws.com' => 'z3O0J2DXBE1FTB',
14
- 's3-website-ap-southeast-2.amazonaws.com' => 'z1WCIGYICN2BYD',
15
- 's3-website-ap-northeast-1.amazonaws.com' => 'z2M4EHUR26P7ZW',
16
- 's3-website-sa-east-1.amazonaws.com' => 'z7KQH4QJS55SO',
17
- 's3-website-us-gov-west-1.amazonaws.com' => 'z31GFT0UA1I2HV',
8
+ 's3-website-ap-northeast-1.amazonaws.com' => 'Z2M4EHUR26P7ZW',
9
+ 's3-website.ap-northeast-2.amazonaws.com' => 'Z3W03O7B5YMIYP',
10
+ 's3-website.ap-south-1.amazonaws.com' => 'Z11RGJOFQNVJUP',
11
+ 's3-website-ap-southeast-1.amazonaws.com' => 'Z3O0J2DXBE1FTB',
12
+ 's3-website-ap-southeast-2.amazonaws.com' => 'Z1WCIGYICN2BYD',
13
+ 's3-website.eu-central-1.amazonaws.com' => 'Z21DNDUVLTQW6Q',
14
+ 's3-website-eu-west-1.amazonaws.com' => 'Z1BKCTXD74EZPE',
15
+ 's3-website-sa-east-1.amazonaws.com' => 'Z7KQH4QJS55SO',
16
+ 's3-website-us-east-1.amazonaws.com' => 'Z3AQBSTGFYJSTF',
17
+ 's3-website-us-gov-west-1.amazonaws.com' => 'Z31GFT0UA1I2HV',
18
+ 's3-website-us-west-1.amazonaws.com' => 'Z2F56UZL2M1ACD',
19
+ 's3-website-us-west-2.amazonaws.com' => 'Z3BJ6K6RIION7M',
18
20
  }
19
21
 
22
+ CANONICAL_HOSTED_ZONE_NAME_IDS = {
23
+ 'ap-northeast-1' => 'Z2YN17T5R711GT',
24
+ #'ap-northeast-2' => '',
25
+ #'ap-south-1' => '',
26
+ 'ap-southeast-1' => 'Z1WI8VXHPB1R38',
27
+ 'ap-southeast-2' => 'Z2999QAZ9SRTIC',
28
+ 'eu-central-1' => 'Z215JYRZR1TBD5',
29
+ 'eu-west-1' => 'Z3NF1Z3NOM5OY2',
30
+ 'sa-east-1' => 'Z2ES78Y61JGQKS',
31
+ 'us-east-1' => 'Z3DZXE0Q79N41H',
32
+ 'us-west-1' => 'Z1M58G0W56PQJA',
33
+ 'us-west-2' => 'Z33MTJ483KN6FU',
34
+ }
35
+
36
+ DUALSTACK_CANONICAL_HOSTED_ZONE_NAME_IDS = {
37
+ 'ap-northeast-1' => 'Z14GRHDCWA56QT',
38
+ 'ap-northeast-2' => 'ZWKZPGTI48KDX',
39
+ 'ap-south-1' => 'ZP97RAFLXTNZK',
40
+ 'ap-southeast-1' => 'Z1LMS91P8CMLE5',
41
+ 'ap-southeast-2' => 'Z1GM3OXH4ZPM65',
42
+ 'eu-central-1' => 'Z215JYRZR1TBD5',
43
+ 'eu-west-1' => 'Z32O12XQLNTSW2',
44
+ 'sa-east-1' => 'Z2P70J7HTTTPLU',
45
+ 'us-east-1' => 'Z35SXDOTRQ7X7K',
46
+ 'us-west-1' => 'Z368ELLRRE2KJ0',
47
+ 'us-west-2' => 'Z1H1FL5HABSF5',
48
+ }
49
+
20
50
  # http://docs.aws.amazon.com/Route53/latest/APIReference/API_ChangeResourceRecordSets.html
21
- CF_HOSTED_zONE_ID = 'Z2FDTNDATAQYW2'
51
+ CF_HOSTED_ZONE_ID = 'Z2FDTNDATAQYW2'
22
52
 
23
53
  class << self
24
54
  def normalize_dns_name_options(src)
@@ -66,25 +96,21 @@ module Aws
66
96
  :evaluate_target_health => false, # XXX:
67
97
  }
68
98
  else
69
- elb = Aws::ElasticLoadBalancing::Client.new(:region => region)
70
-
71
- load_balancer = nil
72
- elb.describe_load_balancers.each do |page|
73
- page.load_balancer_descriptions.each do |lb|
74
- if lb.dns_name == name
75
- load_balancer = lb
76
- end
77
- end
78
- break if load_balancer
99
+ hosted_zone_id = nil
100
+
101
+ if name =~ /\Adualstack\./i
102
+ hosted_zone_id = DUALSTACK_CANONICAL_HOSTED_ZONE_NAME_IDS[region]
103
+ else
104
+ hosted_zone_id = CANONICAL_HOSTED_ZONE_NAME_IDS[region]
79
105
  end
80
106
 
81
- unless load_balancer
82
- raise "Cannot find ELB: #{name}"
107
+ unless hosted_zone_id
108
+ raise "Cannot find CanonicalHostedZoneNameID for `#{name}`. Please pass :hosted_zone_id"
83
109
  end
84
110
 
85
111
  {
86
- :hosted_zone_id => load_balancer.canonical_hosted_zone_name_id,
87
- :dns_name => load_balancer.dns_name,
112
+ :hosted_zone_id => hosted_zone_id,
113
+ :dns_name => name,
88
114
  :evaluate_target_health => false, # XXX:
89
115
  }
90
116
  end
@@ -100,7 +126,7 @@ module Aws
100
126
 
101
127
  def cf_dns_name_to_alias_target(name)
102
128
  {
103
- :hosted_zone_id => CF_HOSTED_zONE_ID,
129
+ :hosted_zone_id => CF_HOSTED_ZONE_ID,
104
130
  :dns_name => name,
105
131
  :evaluate_target_health => false, # XXX:
106
132
  }
@@ -225,6 +225,16 @@ module Roadworker
225
225
  when :dns_name
226
226
  expected[0] = expected[0].downcase.sub(/\.\z/, '')
227
227
  actual[0] = actual[0].downcase.sub(/\.\z/, '')
228
+
229
+ if actual[0] =~ /\Adualstack\./i
230
+ log(:warn, "`dualstack` prefix is used in the actual DNS name", :yellow) do
231
+ log_id = [self.name, self.type].join(' ')
232
+ rrset_setid = self.set_identifier
233
+ rrset_setid ? (log_id + " (#{rrset_setid})") : log_id
234
+ end
235
+
236
+ actual[0].sub!(/\Adualstack\./i, '')
237
+ end
228
238
  end
229
239
 
230
240
  (expected == actual)
@@ -1,3 +1,3 @@
1
1
  module Roadworker
2
- VERSION = "0.5.6"
2
+ VERSION = "0.5.7.beta"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: roadworker
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.6
4
+ version: 0.5.7.beta
5
5
  platform: ruby
6
6
  authors:
7
7
  - winebarrel
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-04-19 00:00:00.000000000 Z
11
+ date: 2016-07-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk
@@ -156,14 +156,14 @@ dependencies:
156
156
  requirements:
157
157
  - - ">="
158
158
  - !ruby/object:Gem::Version
159
- version: '0'
159
+ version: 1.0.0
160
160
  type: :development
161
161
  prerelease: false
162
162
  version_requirements: !ruby/object:Gem::Requirement
163
163
  requirements:
164
164
  - - ">="
165
165
  - !ruby/object:Gem::Version
166
- version: '0'
166
+ version: 1.0.0
167
167
  - !ruby/object:Gem::Dependency
168
168
  name: rubydns
169
169
  requirement: !ruby/object:Gem::Requirement
@@ -247,9 +247,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
247
247
  version: '0'
248
248
  required_rubygems_version: !ruby/object:Gem::Requirement
249
249
  requirements:
250
- - - ">="
250
+ - - ">"
251
251
  - !ruby/object:Gem::Version
252
- version: '0'
252
+ version: 1.3.1
253
253
  requirements: []
254
254
  rubyforge_project:
255
255
  rubygems_version: 2.4.5.1