roadworker 0.5.6 → 0.5.7.beta
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 +4 -4
- data/README.md +3 -0
- data/bin/roadwork +2 -1
- data/lib/roadworker/route53-ext.rb +52 -26
- data/lib/roadworker/route53-wrapper.rb +10 -0
- data/lib/roadworker/version.rb +1 -1
- metadata +6 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: df2616478603cce9612784bdc6632dcde6ea329f
|
4
|
+
data.tar.gz: 21b8701ffcdc6c4bef2c23d7f0d2947d848e6918
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
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
|
|
data/bin/roadwork
CHANGED
@@ -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 <<
|
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-
|
9
|
-
's3-website-
|
10
|
-
's3-website-
|
11
|
-
's3-website-
|
12
|
-
's3-website
|
13
|
-
's3-website-
|
14
|
-
's3-website-
|
15
|
-
's3-website-
|
16
|
-
's3-website-
|
17
|
-
's3-website-us-gov-west-1.amazonaws.com' => '
|
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
|
-
|
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
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
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
|
82
|
-
raise "Cannot find
|
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 =>
|
87
|
-
: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 =>
|
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)
|
data/lib/roadworker/version.rb
CHANGED
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.
|
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-
|
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:
|
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:
|
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:
|
252
|
+
version: 1.3.1
|
253
253
|
requirements: []
|
254
254
|
rubyforge_project:
|
255
255
|
rubygems_version: 2.4.5.1
|