roadworker 0.5.3 → 0.5.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +4 -0
- data/bin/roadwork +1 -0
- data/lib/roadworker/client.rb +3 -18
- data/lib/roadworker/dsl-tester.rb +2 -5
- data/lib/roadworker/dsl.rb +0 -7
- data/lib/roadworker/route53-exporter.rb +2 -10
- data/lib/roadworker/route53-health-check.rb +0 -3
- data/lib/roadworker/route53-wrapper.rb +0 -7
- data/lib/roadworker/utils.rb +19 -0
- data/lib/roadworker/version.rb +1 -1
- data/lib/roadworker.rb +20 -0
- metadata +4 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: fd03e0d8f36c19ab9db21c3f8e986f0c6c4ccade
|
4
|
+
data.tar.gz: 115d1f3e386a881711dc728fee5c56103723b46e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 72737b3db7d92bb79398411b97768b5174bd5a24b6e43e22ca8a0b91a40422193eeb26a09fad702b86e7e772bcffa1b854d2935c1c8b6b12c0b9c3dfed1f217d
|
7
|
+
data.tar.gz: db4ef001931289b171596608facc0f4696dafe9f8035b8583f4c60cd26d3299fc7f621500fa19ee0fadcb8f2b29732e1058a3d8e9ceb8944ac01906fb71845e5
|
data/README.md
CHANGED
@@ -59,6 +59,7 @@ Usage: roadwork [options]
|
|
59
59
|
--nameservers SERVERS
|
60
60
|
--port PORT
|
61
61
|
--target-zone REGEXP
|
62
|
+
--exclude-zone REGEXP
|
62
63
|
--no-color
|
63
64
|
--debug
|
64
65
|
```
|
@@ -178,3 +179,6 @@ info.winebarrel.jp. A:
|
|
178
179
|
|
179
180
|
## Link
|
180
181
|
* [RubyGems.org site](http://rubygems.org/gems/roadworker)
|
182
|
+
|
183
|
+
## Similar tools
|
184
|
+
* [Codenize.tools](http://codenize.tools/)
|
data/bin/roadwork
CHANGED
@@ -58,6 +58,7 @@ ARGV.options do |opt|
|
|
58
58
|
opt.on('' , '--nameservers SERVERS', Array) {|v| options[:nameservers] = v }
|
59
59
|
opt.on('' , '--port PORT', Integer) {|v| options[:port] = v }
|
60
60
|
opt.on('' , '--target-zone REGEXP') {|v| options[:target_zone] = Regexp.new(v) }
|
61
|
+
opt.on('' , '--exclude-zone REGEXP') {|v| options[:exclude_zone] = Regexp.new(v) }
|
61
62
|
opt.on('' , '--no-color') { options[:color] = false }
|
62
63
|
opt.on('' , '--debug') { options[:debug] = true }
|
63
64
|
opt.parse!
|
data/lib/roadworker/client.rb
CHANGED
@@ -1,14 +1,7 @@
|
|
1
|
-
require 'roadworker/string-ext'
|
2
|
-
require 'roadworker/dsl'
|
3
|
-
require 'roadworker/log'
|
4
|
-
require 'roadworker/route53-wrapper'
|
5
|
-
|
6
|
-
require 'logger'
|
7
|
-
require 'ostruct'
|
8
|
-
|
9
1
|
module Roadworker
|
10
2
|
class Client
|
11
3
|
include Roadworker::Log
|
4
|
+
include Roadworker::Utils::Helper
|
12
5
|
|
13
6
|
def initialize(options = {})
|
14
7
|
@options = OpenStruct.new(options)
|
@@ -77,11 +70,7 @@ module Roadworker
|
|
77
70
|
|
78
71
|
expected.each do |keys, expected_zone|
|
79
72
|
name = keys[0]
|
80
|
-
|
81
|
-
if @options.target_zone
|
82
|
-
next unless name =~ @options.target_zone
|
83
|
-
end
|
84
|
-
|
73
|
+
next unless matched_zone?(name)
|
85
74
|
actual_zone = actual.delete(keys) || @route53.hosted_zones.create(name, :vpc => expected_zone.vpcs.first)
|
86
75
|
walk_vpcs(expected_zone, actual_zone)
|
87
76
|
walk_rrsets(expected_zone, actual_zone)
|
@@ -89,11 +78,7 @@ module Roadworker
|
|
89
78
|
|
90
79
|
actual.each do |keys, zone|
|
91
80
|
name = keys[0]
|
92
|
-
|
93
|
-
if @options.target_zone
|
94
|
-
next unless name =~ @options.target_zone
|
95
|
-
end
|
96
|
-
|
81
|
+
next unless matched_zone?(name)
|
97
82
|
zone.delete
|
98
83
|
end
|
99
84
|
end
|
@@ -1,5 +1,3 @@
|
|
1
|
-
require 'roadworker/log'
|
2
|
-
|
3
1
|
require 'tempfile'
|
4
2
|
require 'socket'
|
5
3
|
|
@@ -27,6 +25,7 @@ module Roadworker
|
|
27
25
|
class DSL
|
28
26
|
class Tester
|
29
27
|
include Roadworker::Log
|
28
|
+
include Roadworker::Utils::Helper
|
30
29
|
|
31
30
|
DEFAULT_NAMESERVERS = ['8.8.8.8', '8.8.4.4']
|
32
31
|
ASTERISK_PREFIX = 'asterisk-of-wildcard'
|
@@ -283,9 +282,7 @@ module Roadworker
|
|
283
282
|
record_list = {}
|
284
283
|
|
285
284
|
dsl.hosted_zones.each do |zone|
|
286
|
-
|
287
|
-
next unless zone.name =~ @options.target_zone
|
288
|
-
end
|
285
|
+
next unless matched_zone?(zone.name)
|
289
286
|
|
290
287
|
zone.rrsets.each do |record|
|
291
288
|
key = [record.name, record.type]
|
data/lib/roadworker/dsl.rb
CHANGED
@@ -1,10 +1,6 @@
|
|
1
|
-
require 'roadworker/collection'
|
2
|
-
require 'roadworker/route53-health-check'
|
3
|
-
|
4
|
-
require 'ostruct'
|
5
|
-
|
6
1
|
module Roadworker
|
7
2
|
class Exporter
|
3
|
+
include Roadworker::Utils::Helper
|
8
4
|
|
9
5
|
class << self
|
10
6
|
def export(route53)
|
@@ -32,11 +28,7 @@ module Roadworker
|
|
32
28
|
def export_hosted_zones(hosted_zones)
|
33
29
|
Collection.batch(@options.route53.hosted_zones) do |zone|
|
34
30
|
zone_h = item_to_hash(zone, :name, :vpcs)
|
35
|
-
|
36
|
-
if @options.target_zone
|
37
|
-
next unless zone_h[:name] =~ @options.target_zone
|
38
|
-
end
|
39
|
-
|
31
|
+
next unless matched_zone?(zone.name)
|
40
32
|
hosted_zones << zone_h
|
41
33
|
|
42
34
|
rrsets = []
|
@@ -0,0 +1,19 @@
|
|
1
|
+
module Roadworker
|
2
|
+
class Utils
|
3
|
+
module Helper
|
4
|
+
def matched_zone?(name)
|
5
|
+
result = true
|
6
|
+
|
7
|
+
if @options.exclude_zone
|
8
|
+
result &&= name !~ @options.exclude_zone
|
9
|
+
end
|
10
|
+
|
11
|
+
if @options.target_zone
|
12
|
+
result &&= name =~ @options.target_zone
|
13
|
+
end
|
14
|
+
|
15
|
+
result
|
16
|
+
end
|
17
|
+
end # of class methods
|
18
|
+
end
|
19
|
+
end
|
data/lib/roadworker/version.rb
CHANGED
data/lib/roadworker.rb
CHANGED
@@ -1,2 +1,22 @@
|
|
1
|
+
require 'logger'
|
2
|
+
require 'ostruct'
|
3
|
+
require 'socket'
|
4
|
+
require 'tempfile'
|
5
|
+
require 'uri'
|
6
|
+
require 'uuid'
|
7
|
+
|
8
|
+
require 'roadworker/string-ext'
|
9
|
+
require 'roadworker/route53-ext'
|
10
|
+
|
1
11
|
require 'roadworker/version'
|
12
|
+
require 'roadworker/log'
|
13
|
+
require 'roadworker/utils'
|
14
|
+
|
2
15
|
require 'roadworker/client'
|
16
|
+
require 'roadworker/collection'
|
17
|
+
require 'roadworker/dsl'
|
18
|
+
require 'roadworker/dsl-converter'
|
19
|
+
require 'roadworker/dsl-tester'
|
20
|
+
require 'roadworker/route53-exporter'
|
21
|
+
require 'roadworker/route53-health-check'
|
22
|
+
require 'roadworker/route53-wrapper'
|
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.4
|
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-02-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: aws-sdk-v1
|
@@ -185,9 +185,10 @@ files:
|
|
185
185
|
- lib/roadworker/route53-health-check.rb
|
186
186
|
- lib/roadworker/route53-wrapper.rb
|
187
187
|
- lib/roadworker/string-ext.rb
|
188
|
+
- lib/roadworker/utils.rb
|
188
189
|
- lib/roadworker/version.rb
|
189
190
|
- lib/roadworker.rb
|
190
|
-
homepage:
|
191
|
+
homepage: http://roadworker.codenize.tools/
|
191
192
|
licenses:
|
192
193
|
- MIT
|
193
194
|
metadata: {}
|