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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: fef636e5f5260004b8f0ae4ea2d0317f55ec0710
4
- data.tar.gz: 455d3e06cc7b47ab3e6498086b72b27da0f7b7a2
3
+ metadata.gz: fd03e0d8f36c19ab9db21c3f8e986f0c6c4ccade
4
+ data.tar.gz: 115d1f3e386a881711dc728fee5c56103723b46e
5
5
  SHA512:
6
- metadata.gz: f3a5039ae8e9e1a9e77111e0d7db1e553823162c9b554f76a54dea9ad0f7c034d17e343e9c8281bf3fbd438fbfb27d6584230415c69e44c865f1520e5f3e4c65
7
- data.tar.gz: c8e470596d1c761577289fa12fa3a7839a130c7617a805e983a84b16736e187f655de41a9c537720519fc1d2ed68df54da2d246831cc0efa0e812f2ceb39ec51
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!
@@ -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
- if @options.target_zone
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]
@@ -1,10 +1,3 @@
1
- require 'roadworker/dsl-converter'
2
- require 'roadworker/dsl-tester'
3
- require 'roadworker/route53-health-check'
4
-
5
- require 'ostruct'
6
- require 'uri'
7
-
8
1
  module Roadworker
9
2
  class DSL
10
3
 
@@ -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 = []
@@ -1,6 +1,3 @@
1
- require 'uri'
2
- require 'uuid'
3
-
4
1
  module Roadworker
5
2
  class HealthCheck
6
3
 
@@ -1,10 +1,3 @@
1
- require 'roadworker/collection'
2
- require 'roadworker/log'
3
- require 'roadworker/route53-exporter'
4
- require 'roadworker/route53-ext'
5
-
6
- require 'ostruct'
7
-
8
1
  module Roadworker
9
2
  class Route53Wrapper
10
3
 
@@ -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
@@ -1,3 +1,3 @@
1
1
  module Roadworker
2
- VERSION = "0.5.3"
2
+ VERSION = "0.5.4"
3
3
  end
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.3
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-01-04 00:00:00.000000000 Z
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: https://github.com/winebarrel/roadworker
191
+ homepage: http://roadworker.codenize.tools/
191
192
  licenses:
192
193
  - MIT
193
194
  metadata: {}