roadworker 0.5.5.beta → 0.5.5.beta2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +2 -0
- data/lib/roadworker/client.rb +16 -6
- data/lib/roadworker/dsl.rb +1 -6
- data/lib/roadworker/version.rb +1 -1
- metadata +24 -10
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0b7b069b89e59b84f3f3c4a8aa58128ba434520a
|
4
|
+
data.tar.gz: 819173c4d7bdec535d7807d1e3066fe566630c67
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d65f03eaf82f516b3434c1b1d7792c775ec36dc2d1bfe9c2a367031fbe4f5fd732cf2b85a24169b42fa49064e350dbf5be38e85866d1d3da16fd7292f69b91c3
|
7
|
+
data.tar.gz: 3bf5cdd51a192f49916af6d9e2e82120dcfba1d0f541dd64a101c7edc846097f2a5fd13600616af6e9143aa42bb317ba16ac8de598d11aa04b2cd35082200066
|
data/README.md
CHANGED
@@ -12,6 +12,8 @@ It defines the state of Route53 using DSL, and updates Route53 according to DSL.
|
|
12
12
|
|
13
13
|
* Roadworker cannot update TTL of two or more same weighted A records (with different SetIdentifier) after creation.
|
14
14
|
* `>= 0.4.3` compare resource records ignoring the order.
|
15
|
+
* `>= 0.5.5`
|
16
|
+
* **Disable Divided HostedZone**
|
15
17
|
|
16
18
|
## Installation
|
17
19
|
|
data/lib/roadworker/client.rb
CHANGED
@@ -65,13 +65,15 @@ module Roadworker
|
|
65
65
|
end
|
66
66
|
|
67
67
|
def walk_hosted_zones(dsl)
|
68
|
-
expected = collection_to_hash(dsl.hosted_zones
|
69
|
-
actual = collection_to_hash(@route53.hosted_zones
|
68
|
+
expected = collection_to_hash(dsl.hosted_zones) {|i| [normalize_name(i.name), i.vpcs.empty?] }
|
69
|
+
actual = collection_to_hash(@route53.hosted_zones) {|i| [normalize_name(i.name), i.vpcs.empty?] }
|
70
70
|
|
71
71
|
expected.each do |keys, expected_zone|
|
72
72
|
name = keys[0]
|
73
73
|
next unless matched_zone?(name)
|
74
|
-
actual_zone = actual.delete(keys)
|
74
|
+
actual_zone = actual.delete(keys)
|
75
|
+
actual_zone ||= @route53.hosted_zones.create(name, :vpc => expected_zone.vpcs.first)
|
76
|
+
|
75
77
|
walk_vpcs(expected_zone, actual_zone)
|
76
78
|
walk_rrsets(expected_zone, actual_zone)
|
77
79
|
end
|
@@ -140,9 +142,13 @@ module Roadworker
|
|
140
142
|
hash = {}
|
141
143
|
|
142
144
|
collection.each do |item|
|
143
|
-
|
144
|
-
|
145
|
-
|
145
|
+
if block_given?
|
146
|
+
key_list = yield(item)
|
147
|
+
else
|
148
|
+
key_list = keys.map do |k|
|
149
|
+
value = item.send(k)
|
150
|
+
(k == :name && value) ? normalize_name(value) : value
|
151
|
+
end
|
146
152
|
end
|
147
153
|
|
148
154
|
hash[key_list] = item
|
@@ -151,5 +157,9 @@ module Roadworker
|
|
151
157
|
return hash
|
152
158
|
end
|
153
159
|
|
160
|
+
def normalize_name(name)
|
161
|
+
name.downcase.sub(/\.\Z/, '')
|
162
|
+
end
|
163
|
+
|
154
164
|
end # Client
|
155
165
|
end # Roadworker
|
data/lib/roadworker/dsl.rb
CHANGED
@@ -40,12 +40,7 @@ module Roadworker
|
|
40
40
|
end
|
41
41
|
|
42
42
|
def hosted_zone(name, &block)
|
43
|
-
|
44
|
-
@result.hosted_zones.reject! {|i| i.name == name }
|
45
|
-
@result.hosted_zones << HostedZone.new(name, hz.rrsets, &block).result
|
46
|
-
else
|
47
|
-
@result.hosted_zones << HostedZone.new(name, [], &block).result
|
48
|
-
end
|
43
|
+
@result.hosted_zones << HostedZone.new(name, [], &block).result
|
49
44
|
end
|
50
45
|
|
51
46
|
class HostedZone
|
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.5.
|
4
|
+
version: 0.5.5.beta2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- winebarrel
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-
|
11
|
+
date: 2015-07-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: aws-sdk-v1
|
@@ -84,16 +84,16 @@ dependencies:
|
|
84
84
|
name: bundler
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
86
86
|
requirements:
|
87
|
-
- -
|
87
|
+
- - '>='
|
88
88
|
- !ruby/object:Gem::Version
|
89
|
-
version: '
|
89
|
+
version: '0'
|
90
90
|
type: :development
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
|
-
- -
|
94
|
+
- - '>='
|
95
95
|
- !ruby/object:Gem::Version
|
96
|
-
version: '
|
96
|
+
version: '0'
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
98
|
name: rake
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
@@ -112,16 +112,16 @@ dependencies:
|
|
112
112
|
name: rspec
|
113
113
|
requirement: !ruby/object:Gem::Requirement
|
114
114
|
requirements:
|
115
|
-
- -
|
115
|
+
- - '>='
|
116
116
|
- !ruby/object:Gem::Version
|
117
|
-
version:
|
117
|
+
version: 3.0.0
|
118
118
|
type: :development
|
119
119
|
prerelease: false
|
120
120
|
version_requirements: !ruby/object:Gem::Requirement
|
121
121
|
requirements:
|
122
|
-
- -
|
122
|
+
- - '>='
|
123
123
|
- !ruby/object:Gem::Version
|
124
|
-
version:
|
124
|
+
version: 3.0.0
|
125
125
|
- !ruby/object:Gem::Dependency
|
126
126
|
name: rspec-instafail
|
127
127
|
requirement: !ruby/object:Gem::Requirement
|
@@ -164,6 +164,20 @@ dependencies:
|
|
164
164
|
- - '>='
|
165
165
|
- !ruby/object:Gem::Version
|
166
166
|
version: '0'
|
167
|
+
- !ruby/object:Gem::Dependency
|
168
|
+
name: transpec
|
169
|
+
requirement: !ruby/object:Gem::Requirement
|
170
|
+
requirements:
|
171
|
+
- - '>='
|
172
|
+
- !ruby/object:Gem::Version
|
173
|
+
version: '0'
|
174
|
+
type: :development
|
175
|
+
prerelease: false
|
176
|
+
version_requirements: !ruby/object:Gem::Requirement
|
177
|
+
requirements:
|
178
|
+
- - '>='
|
179
|
+
- !ruby/object:Gem::Version
|
180
|
+
version: '0'
|
167
181
|
description: Roadworker is a tool to manage Route53. It defines the state of Route53
|
168
182
|
using DSL, and updates Route53 according to DSL.
|
169
183
|
email: sgwr_dts@yahoo.co.jp
|