roadworker 0.2.0 → 0.2.1

Sign up to get free protection for your applications and to get access to all the features.
data/README.md CHANGED
@@ -40,28 +40,19 @@ shell> roudwork -a
40
40
  require 'other/routefile'
41
41
 
42
42
  hosted_zone "winebarrel.jp." do
43
- rrset "winebarrel.jp.", "MX" do
43
+ rrset "winebarrel.jp.", "A" do
44
44
  ttl 300
45
45
  resource_records(
46
- "10 mx.winebarrel.jp",
47
- "10 mx2.winebarrel.jp"
46
+ "127.0.0.1",
47
+ "127.0.0.2"
48
48
  )
49
49
  end
50
50
 
51
- rrset "winebarrel.jp.", "NS" do
52
- ttl 86400
53
- resource_records(
54
- "ns-XXX.awsdns-XX.com.",
55
- "ns-XXX.awsdns-XX.org.",
56
- "ns-XXX.awsdns-XX.net.",
57
- "ns-XXX.awsdns-XX.co.uk."
58
- )
59
- end
60
-
61
- rrset "winebarrel.jp.", "SOA" do
62
- ttl 86400
51
+ rrset "winebarrel.jp.", "MX" do
52
+ ttl 300
63
53
  resource_records(
64
- "ns-XXX.awsdns-XX.com. awsdns-hostmaster.amazon.com. 1 7200 900 1209600 86400"
54
+ "10 mx.winebarrel.jp",
55
+ "10 mx2.winebarrel.jp"
65
56
  )
66
57
  end
67
58
  end
data/bin/roadwork CHANGED
@@ -15,28 +15,30 @@ logger.formatter = proc {|severity, datetime, progname, msg|
15
15
  }
16
16
 
17
17
  options = {
18
- :logger => logger,
19
- :dry_run => false,
20
- :debug => false,
21
- :force => false,
22
- :color => true,
18
+ :logger => logger,
19
+ :dry_run => false,
20
+ :force => false,
21
+ :with_soa_ns => false,
22
+ :color => true,
23
+ :debug => false,
23
24
  }
24
25
 
25
26
  ARGV.options do |opt|
26
27
  access_key = nil
27
28
  secret_key = nil
28
29
 
29
- opt.on('-k', '--access-key ACCESS_KEY') {|v| access_key = v }
30
- opt.on('-s', '--secret-key SECRET_KEY') {|v| secret_key = v }
31
- opt.on('-f', '--file FILE') {|v| file = v }
32
- opt.on('-a', '--apply') {|v| mode = :apply }
33
- opt.on('-e', '--export') {|v| mode = :export }
34
- opt.on('-o', '--output FILE') {|v| output_file = v }
35
- opt.on('-t', '--test') {|v| mode = :test }
36
- opt.on('', '--dry-run') {|v| options[:dry_run] = true }
37
- opt.on('' , '--force') { options[:force] = true }
38
- opt.on('' , '--no-color') { options[:color] = false }
39
- opt.on('' , '--debug') { options[:debug] = true }
30
+ opt.on('-k', '--access-key ACCESS_KEY') {|v| access_key = v }
31
+ opt.on('-s', '--secret-key SECRET_KEY') {|v| secret_key = v }
32
+ opt.on('-a', '--apply') {|v| mode = :apply }
33
+ opt.on('-f', '--file FILE') {|v| fil = v }
34
+ opt.on('', '--dry-run') {|v| options[:dry_run] = true }
35
+ opt.on('' , '--force') { options[:force] = true }
36
+ opt.on('-e', '--export') {|v| mode = :export }
37
+ opt.on('-o', '--output FILE') {|v| output_file = v }
38
+ opt.on('', '--with-soa-ns') {|v| options[:with_soa_ns] = true }
39
+ opt.on('-t', '--test') {|v| mode = :test }
40
+ opt.on('' , '--no-color') { options[:color] = false }
41
+ opt.on('' , '--debug') { options[:debug] = true }
40
42
  opt.parse!
41
43
 
42
44
  if access_key and secret_key
@@ -11,14 +11,14 @@ module Roadworker
11
11
  end
12
12
  end # of class method
13
13
 
14
- def initialize(route53)
15
- @route53 = route53
14
+ def initialize(options)
15
+ @options = options
16
16
  end
17
17
 
18
18
  def export
19
19
  result = []
20
20
 
21
- Collection.batch(@route53.hosted_zones) do |zone|
21
+ Collection.batch(@options.route53.hosted_zones) do |zone|
22
22
  zone_h = item_to_hash(zone, :name)
23
23
  result << zone_h
24
24
 
@@ -26,6 +26,10 @@ module Roadworker
26
26
  zone_h[:rrsets] = rrsets
27
27
 
28
28
  Collection.batch(zone.rrsets) do |record|
29
+ if record.name == zone.name and %w(SOA NS).include?(record.type) and not @options.with_soa_ns
30
+ next
31
+ end
32
+
29
33
  attrs = [
30
34
  :name,
31
35
  :type,
@@ -22,7 +22,7 @@ module Roadworker
22
22
  end
23
23
 
24
24
  def export
25
- Exporter.export(@options.route53)
25
+ Exporter.export(@options)
26
26
  end
27
27
 
28
28
  def hosted_zones
@@ -1,5 +1,5 @@
1
1
  module Roadworker
2
- VERSION = "0.2.0"
2
+ VERSION = "0.2.1"
3
3
  end
4
4
 
5
5
  Version = Roadworker::VERSION
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: roadworker
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors: