lbrt 0.1.6 → 0.1.7

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: 4d03d5b56552be94562b237b4fa6b3b7bf728752
4
- data.tar.gz: 42d9b29379fa6c2c417f2586129d3cef61255dcf
3
+ metadata.gz: 370e9e21d25611fc0311d02d0b7eaf59462d0d6e
4
+ data.tar.gz: 49cf5cd865eb886f2f4157f45086ba84502f415c
5
5
  SHA512:
6
- metadata.gz: 4d7673a015e2f65b429bf6b212a0ea4dec840b5d36daf86f00f8e7fd61860c1a4877f661036aeae7472529261bf503e771bec0fc86b00126f079fd22b8fa1dab
7
- data.tar.gz: aaba95b5b57a80243342ae91d31dce8d9da6137b44a02bf85a7e04a1997e25ff3d6af681e0f0610618e1062006562dd801f84b484aa6c672f237c416bdc2450f
6
+ metadata.gz: cb7ddcbb5fd37faf563cdf762222bdbd1e886e08a703f9de816f0181d669e13d143bc1e771e9565abbdcbafc5a4f9b0a0fa7386b0630598d741b2e2bb1e9d443
7
+ data.tar.gz: e88b4b2db387a51abaa8c704e3c02e2f06f6da935110365c75ffdcf04e8fe5c2d808d44517e22d9febbabfa658a88a4eff17b8a66eea7118a1fe379953ae3eff
data/README.md CHANGED
@@ -198,7 +198,7 @@ space "My Space2" do
198
198
  end
199
199
  ```
200
200
 
201
- ## template
201
+ ## Using template
202
202
 
203
203
  ```ruby
204
204
  template "dstat" do
@@ -258,6 +258,49 @@ include_template "my alert", metric_name: 'login-delay'
258
258
  include_template "my alert", metric_name: 'login-delay2'
259
259
  ```
260
260
 
261
+ ```ruby
262
+ template "alert set1" do
263
+ alert "#{context.hostname}/login-delay" do
264
+ description "desc"
265
+ attributes "runbook_url"=>"http://example.com"
266
+ active true
267
+ rearm_seconds 600
268
+ rearm_per_signal false
269
+
270
+ condition do
271
+ type "below"
272
+ metric_name 'login-delay'
273
+ source nil
274
+ threshold 4.0
275
+ summary_function "sum"
276
+ end
277
+
278
+ service "mail", "my email"
279
+ end
280
+
281
+ alert "#{context.hostname}/login-delay2" do
282
+ description "desc"
283
+ attributes "runbook_url"=>"http://example.com"
284
+ active true
285
+ rearm_seconds 600
286
+ rearm_per_signal false
287
+
288
+ condition do
289
+ type "below"
290
+ metric_name 'login-delay2'
291
+ source nil
292
+ threshold 4.0
293
+ summary_function "sum"
294
+ end
295
+
296
+ service "mail", "my email"
297
+ end
298
+ end
299
+
300
+ include_template "alert set1", hostname: 'host1'
301
+ include_template "alert set1", hostname: 'host2'
302
+ ```
303
+
261
304
  ## Show resource by [peco](https://github.com/peco/peco)
262
305
 
263
306
  ```sh
@@ -11,6 +11,7 @@ class Lbrt::CLI::Space < Thor
11
11
 
12
12
  desc 'apply FILE', 'Apply spaces'
13
13
  option :'dry-run', :type => :boolean, :default => false
14
+ option :'ignore-no-metric', :type => :boolean, :default => true
14
15
  def apply(file)
15
16
  updated = client(Lbrt::Space).apply(file)
16
17
 
data/lib/lbrt/space.rb CHANGED
@@ -84,16 +84,24 @@ class Lbrt::Space
84
84
  updated = false
85
85
 
86
86
  expected.each do |name_or_id, expected_chart|
87
- actual_chart = actual.delete(name_or_id)
88
-
89
- if not actual_chart and name_or_id.is_a?(Integer)
90
- actual_chart = actual.values.find {|i| i['id'] == name_or_id }
91
- end
92
-
93
- if actual_chart
94
- updated = walk_chart(space_name_or_id, space_id, name_or_id, expected_chart, actual_chart) || updated
95
- else
96
- updated = @driver.create_chart(space_name_or_id, space_id, name_or_id, expected_chart) || updated
87
+ begin
88
+ actual_chart = actual.delete(name_or_id)
89
+
90
+ if not actual_chart and name_or_id.is_a?(Integer)
91
+ actual_chart = actual.values.find {|i| i['id'] == name_or_id }
92
+ end
93
+
94
+ if actual_chart
95
+ updated = walk_chart(space_name_or_id, space_id, name_or_id, expected_chart, actual_chart) || updated
96
+ else
97
+ updated = @driver.create_chart(space_name_or_id, space_id, name_or_id, expected_chart) || updated
98
+ end
99
+ rescue Librato::Client::Error => e
100
+ if @options[:ignore_no_metric] and e.cause.response[:body] =~ /no metric/
101
+ log(:warn, e.message, :color => :yellow)
102
+ else
103
+ raise e
104
+ end
97
105
  end
98
106
  end
99
107
 
data/lib/lbrt/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Lbrt
2
- VERSION = '0.1.6'
2
+ VERSION = '0.1.7'
3
3
  end
metadata CHANGED
@@ -1,153 +1,153 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lbrt
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.6
4
+ version: 0.1.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Genki Sugawara
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2015-08-19 00:00:00.000000000 Z
11
+ date: 2015-09-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: diffy
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - '>='
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
19
  version: '0'
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
26
  version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: hashie
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - '>='
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
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
40
  version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: librato-client
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - '>='
45
+ - - ">="
46
46
  - !ruby/object:Gem::Version
47
47
  version: '0'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - '>='
52
+ - - ">="
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: parallel
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - '>='
59
+ - - ">="
60
60
  - !ruby/object:Gem::Version
61
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
68
  version: '0'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: peco_selector
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - '>='
73
+ - - ">="
74
74
  - !ruby/object:Gem::Version
75
75
  version: '0'
76
76
  type: :runtime
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - '>='
80
+ - - ">="
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: term-ansicolor
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - '>='
87
+ - - ">="
88
88
  - !ruby/object:Gem::Version
89
89
  version: '0'
90
90
  type: :runtime
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - '>='
94
+ - - ">="
95
95
  - !ruby/object:Gem::Version
96
96
  version: '0'
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: thor
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
- - - '>='
101
+ - - ">="
102
102
  - !ruby/object:Gem::Version
103
103
  version: '0'
104
104
  type: :runtime
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
- - - '>='
108
+ - - ">="
109
109
  - !ruby/object:Gem::Version
110
110
  version: '0'
111
111
  - !ruby/object:Gem::Dependency
112
112
  name: bundler
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
- - - '>='
115
+ - - ">="
116
116
  - !ruby/object:Gem::Version
117
117
  version: '0'
118
118
  type: :development
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
- - - '>='
122
+ - - ">="
123
123
  - !ruby/object:Gem::Version
124
124
  version: '0'
125
125
  - !ruby/object:Gem::Dependency
126
126
  name: rake
127
127
  requirement: !ruby/object:Gem::Requirement
128
128
  requirements:
129
- - - '>='
129
+ - - ">="
130
130
  - !ruby/object:Gem::Version
131
131
  version: '0'
132
132
  type: :development
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
- - - '>='
136
+ - - ">="
137
137
  - !ruby/object:Gem::Version
138
138
  version: '0'
139
139
  - !ruby/object:Gem::Dependency
140
140
  name: rspec
141
141
  requirement: !ruby/object:Gem::Requirement
142
142
  requirements:
143
- - - '>='
143
+ - - ">="
144
144
  - !ruby/object:Gem::Version
145
145
  version: 3.0.0
146
146
  type: :development
147
147
  prerelease: false
148
148
  version_requirements: !ruby/object:Gem::Requirement
149
149
  requirements:
150
- - - '>='
150
+ - - ">="
151
151
  - !ruby/object:Gem::Version
152
152
  version: 3.0.0
153
153
  description: A tool to manage Librato. It defines the state of Librato using DSL,
@@ -159,9 +159,9 @@ executables:
159
159
  extensions: []
160
160
  extra_rdoc_files: []
161
161
  files:
162
- - .gitignore
163
- - .rspec
164
- - .travis.yml
162
+ - ".gitignore"
163
+ - ".rspec"
164
+ - ".travis.yml"
165
165
  - Gemfile
166
166
  - LICENSE.txt
167
167
  - README.md
@@ -216,17 +216,17 @@ require_paths:
216
216
  - lib
217
217
  required_ruby_version: !ruby/object:Gem::Requirement
218
218
  requirements:
219
- - - '>='
219
+ - - ">="
220
220
  - !ruby/object:Gem::Version
221
221
  version: '0'
222
222
  required_rubygems_version: !ruby/object:Gem::Requirement
223
223
  requirements:
224
- - - '>='
224
+ - - ">="
225
225
  - !ruby/object:Gem::Version
226
226
  version: '0'
227
227
  requirements: []
228
228
  rubyforge_project:
229
- rubygems_version: 2.0.14
229
+ rubygems_version: 2.4.5
230
230
  signing_key:
231
231
  specification_version: 4
232
232
  summary: A tool to manage Librato. It defines the state of Librato using DSL, and