roadworker 0.5.3 → 0.5.4
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 +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: {}
|