roadworker 0.4.1 → 0.4.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: a0d3f642ddf0b9f28e2c6607a14c70f71a05d6e3
4
- data.tar.gz: 2068acde30d38e452d3a3840f7d136ce0d5b4ae0
3
+ metadata.gz: 350788a5b2ef5a814cd94293bc57a1ab2a00ccae
4
+ data.tar.gz: 3b35781838eba79372bbcd133296b88bc72a1ff7
5
5
  SHA512:
6
- metadata.gz: 9a6142c0e48b09eb6ac983ad9abb34e157c2dcd7c8518d49c44b196f7d909c2cd0340115e36060631507db12e85c02bea8bf1a9e65dcc1d34f3780f801241f79
7
- data.tar.gz: 3dc7c2db81defc7750e085c44f2b35db93d24bf4bb8c3315bf46f8ae511fc3f0187a4a688f1cb7cb90e8b9447ff5d7855e0e860dedd805961e340433c09dcb2e
6
+ metadata.gz: 1e6a82d161555742cb920bfe3aab250457d01c7b0b12bb9d4d2ef0ddddff6c79eed27c084f32fea5bce60499232808511d2e812b78a365984e5c90821353bcbb
7
+ data.tar.gz: e1d1331e101166c603be402abc9e1883d885ae9a86f7c24f684bbb66961c28b7b10b412c20b4730a294904e23af06cb0a5752bb1c890d9ae303a38c89bdfd444
data/README.md CHANGED
@@ -67,7 +67,7 @@ hosted_zone "info.winebarrel.jp." do
67
67
  rrset "zzz.info.winebarrel.jp", "A" do
68
68
  set_identifier "Primary"
69
69
  failover "PRIMARY"
70
- health_check "http://192.0.43.10:80/path", :host => "example.com", :search_string => "ANY_RESPONSE_STRING"
70
+ health_check "http://192.0.43.10:80/path", :host => "example.com", :search_string => "ANY_RESPONSE_STRING", :request_interval => 30, :failure_threshold => 3
71
71
  ttl 456
72
72
  resource_records(
73
73
  "127.0.0.1",
@@ -78,7 +78,7 @@ hosted_zone "info.winebarrel.jp." do
78
78
  rrset "zzz.info.winebarrel.jp", "A" do
79
79
  set_identifier "Secondary"
80
80
  failover "SECONDARY"
81
- health_check "tcp://192.0.43.10:3306"
81
+ health_check "tcp://192.0.43.10:3306", :request_interval => 30, :failure_threshold => 3
82
82
  ttl 456
83
83
  resource_records(
84
84
  "127.0.0.3",
@@ -35,7 +35,7 @@ module Roadworker
35
35
  config = HealthCheck.config_to_hash(@health_checks[value])
36
36
  hc_args = config[:url].sub(/\A(https?)_str_match:/) { $1 + ':' }.inspect
37
37
 
38
- [:host, :search_string].each do |key|
38
+ [:host, :search_string, :request_interval, :failure_threshold].each do |key|
39
39
  if config[key]
40
40
  hc_args << ", :#{key} => #{config[key].inspect}"
41
41
  end
@@ -127,8 +127,10 @@ module Roadworker
127
127
  options = options.first
128
128
 
129
129
  {
130
- :host => :fully_qualified_domain_name,
131
- :search_string => :search_string,
130
+ :host => :fully_qualified_domain_name,
131
+ :search_string => :search_string,
132
+ :request_interval => :request_interval,
133
+ :failure_threshold => :failure_threshold,
132
134
  }.each do |option_key, config_key|
133
135
  config[config_key] = options[option_key] if options[option_key]
134
136
  end
@@ -137,6 +139,8 @@ module Roadworker
137
139
  key = [
138
140
  :fully_qualified_domain_name,
139
141
  :search_string,
142
+ :request_interval,
143
+ :failure_threshold,
140
144
  ][i]
141
145
 
142
146
  config[key] = value
@@ -147,6 +151,9 @@ module Roadworker
147
151
  config[:type] += '_STR_MATCH'
148
152
  end
149
153
 
154
+ config[:request_interval] ||= 30
155
+ config[:failure_threshold] ||= 3
156
+
150
157
  @result.health_check = config
151
158
  end
152
159
 
@@ -22,19 +22,32 @@ module AWS
22
22
 
23
23
  def replace_api_version(value)
24
24
  case value
25
- when String
26
- if value =~ /2012-12-12/
27
- value.gsub!(/2012-12-12/, '2013-04-01')
28
- end
29
25
  when Array
30
26
  value.each {|v| replace_api_version(v) }
31
27
  when Hash
32
28
  value.each do |k, v|
33
- if k == :health_check_config
34
- v[:members][:search_string] = {
35
- :name => 'SearchString',
36
- :type => :string,
37
- :position => 5,
29
+ case k
30
+ when :health_check_config
31
+ {
32
+ :request_interval => {
33
+ :name => 'RequestInterval',
34
+ :type => :integer,
35
+ :position => 6,
36
+ },
37
+ :failure_threshold => {
38
+ :name => 'FailureThreshold',
39
+ :type => :integer,
40
+ :position => 7,
41
+ },
42
+ }.each {|name, attrs|
43
+ v[:members][name] = attrs
44
+ }
45
+ when 'HealthCheckConfig'
46
+ {
47
+ 'RequestInterval' => {:type => :integer},
48
+ 'FailureThreshold' => {:type => :integer},
49
+ }.each {|name, attrs|
50
+ v[:children][name] = attrs
38
51
  }
39
52
  end
40
53
 
@@ -20,12 +20,20 @@ module Roadworker
20
20
  path = config[:resource_path]
21
21
  fqdn = config[:fully_qualified_domain_name]
22
22
  fqdn = fqdn.downcase if fqdn
23
- search_string = config[:search_string]
23
+ search_string = config[:search_string]
24
+ request_interval = config[:request_interval]
25
+ failure_threshold = config[:failure_threshold]
24
26
 
25
27
  url = "#{type}://#{ipaddr}:#{port}"
26
28
  url << path if path && path != '/'
27
29
 
28
- {:url => url, :host => fqdn, :search_string => search_string}
30
+ {
31
+ :url => url,
32
+ :host => fqdn,
33
+ :search_string => search_string,
34
+ :request_interval => request_interval,
35
+ :failure_threshold => failure_threshold,
36
+ }
29
37
  end
30
38
 
31
39
  def parse_url(url)
@@ -1,5 +1,5 @@
1
1
  module Roadworker
2
- VERSION = "0.4.1"
2
+ VERSION = "0.4.2"
3
3
  end
4
4
 
5
5
  Version = Roadworker::VERSION
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.4.1
4
+ version: 0.4.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - winebarrel
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-02-02 00:00:00.000000000 Z
11
+ date: 2014-02-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk
@@ -16,28 +16,28 @@ dependencies:
16
16
  requirements:
17
17
  - - '='
18
18
  - !ruby/object:Gem::Version
19
- version: 1.33.0
19
+ version: 1.34.1
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - '='
25
25
  - !ruby/object:Gem::Version
26
- version: 1.33.0
26
+ version: 1.34.1
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: term-ansicolor
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - '>='
32
32
  - !ruby/object:Gem::Version
33
- version: 1.2.2
33
+ version: '0'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - '>='
39
39
  - !ruby/object:Gem::Version
40
- version: 1.2.2
40
+ version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: net-dns
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -58,14 +58,28 @@ dependencies:
58
58
  requirements:
59
59
  - - '>='
60
60
  - !ruby/object:Gem::Version
61
- version: 2.3.7
61
+ version: '0'
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - '>='
67
67
  - !ruby/object:Gem::Version
68
- version: 2.3.7
68
+ version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: systemu
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - '>='
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - '>='
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
69
83
  - !ruby/object:Gem::Dependency
70
84
  name: bundler
71
85
  requirement: !ruby/object:Gem::Requirement
@@ -157,3 +171,4 @@ signing_key:
157
171
  specification_version: 4
158
172
  summary: Roadworker is a tool to manage Route53.
159
173
  test_files: []
174
+ has_rdoc: