grafana 0.8.2 → 1.0.0

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.
Files changed (44) hide show
  1. checksums.yaml +5 -5
  2. data/README.md +8 -3
  3. data/lib/grafana/admin.rb +39 -65
  4. data/lib/grafana/alerts.rb +334 -14
  5. data/lib/grafana/annotations.rb +284 -9
  6. data/lib/grafana/client.rb +38 -1
  7. data/lib/grafana/dashboard.rb +182 -39
  8. data/lib/grafana/dashboard_permissions.rb +132 -0
  9. data/lib/grafana/dashboard_versions.rb +101 -5
  10. data/lib/grafana/datasource.rb +93 -49
  11. data/lib/grafana/folder.rb +198 -0
  12. data/lib/grafana/folder_and_dashboard_search.rb +57 -0
  13. data/lib/grafana/folder_permissions.rb +155 -0
  14. data/lib/grafana/login.rb +41 -35
  15. data/lib/grafana/network.rb +128 -91
  16. data/lib/grafana/organization.rb +65 -34
  17. data/lib/grafana/organizations.rb +119 -175
  18. data/lib/grafana/playlist.rb +599 -0
  19. data/lib/grafana/preferences.rb +122 -0
  20. data/lib/grafana/tags.rb +19 -8
  21. data/lib/grafana/teams.rb +364 -0
  22. data/lib/grafana/tools.rb +44 -12
  23. data/lib/grafana/user.rb +78 -39
  24. data/lib/grafana/users.rb +104 -53
  25. data/lib/grafana/validator.rb +47 -2
  26. data/lib/grafana/version.rb +3 -3
  27. metadata +13 -38
  28. data/doc/Array.html +0 -200
  29. data/doc/Boolean.html +0 -122
  30. data/doc/FalseClass.html +0 -132
  31. data/doc/Grafana.html +0 -172
  32. data/doc/Hash.html +0 -212
  33. data/doc/Logging.html +0 -326
  34. data/doc/Object.html +0 -286
  35. data/doc/Time.html +0 -200
  36. data/doc/TrueClass.html +0 -132
  37. data/doc/_index.html +0 -380
  38. data/doc/class_list.html +0 -51
  39. data/doc/file.README.html +0 -117
  40. data/doc/file_list.html +0 -56
  41. data/doc/frames.html +0 -17
  42. data/doc/index.html +0 -117
  43. data/doc/method_list.html +0 -771
  44. data/doc/top-level-namespace.html +0 -112
@@ -4,7 +4,20 @@ module Grafana
4
4
  # namespace for validate options
5
5
  module Validator
6
6
 
7
- # validate( params, { required: true, var: name, type: String } )
7
+ # validate some parameters
8
+ #
9
+ # @param params [Hash]
10
+ # @param options [Hash]
11
+ # @option options [Boolean] requiered
12
+ # @option options [String] var
13
+ # @option options [Class] type
14
+ #
15
+ # @example
16
+ # default = validate( params, required: false, var: 'default', type: Boolean )
17
+ # name = validate( params, required: true, var: 'name', type: String )
18
+ #
19
+ # @return [Mixed]
20
+ #
8
21
  def validate( params, options )
9
22
  required = options.dig(:required) || false
10
23
  var = options.dig(:var)
@@ -13,7 +26,7 @@ module Grafana
13
26
  params = params.deep_symbolize_keys
14
27
  variable = params.dig(var.to_sym)
15
28
 
16
- raise ArgumentError.new(format('\'%s\' is requiered and missing!', var)) if(variable.nil?) if(required == true )
29
+ raise ArgumentError.new(format('\'%s\' is requiered and missing!', var)) if(variable.nil? && required == true )
17
30
 
18
31
  unless( type.nil? )
19
32
  clazz = Object.const_get(type.to_s)
@@ -23,6 +36,38 @@ module Grafana
23
36
  variable
24
37
  end
25
38
 
39
+ # validate an value with an array of values
40
+ #
41
+ #
42
+ # @return [Mixed]
43
+ #
44
+ def validate_hash( value, valid_params )
45
+
46
+ # puts "validate_hash( #{value}, #{valid_params} )"
47
+
48
+ unless( valid_params.collect { |r| r.downcase }.include?(value.downcase) )
49
+ # puts "NOOO : #{value}"
50
+ return {
51
+ 'status' => 404,
52
+ 'message' => format( 'wrong value. \'%s\' must be one of \'%s\'', value, valid_params.join('\', \''))
53
+ }
54
+ end
55
+ # puts "result: #{result} #{result.class}"
56
+ #
57
+ #
58
+ # downcased = Set.new valid_params.map(&:downcase)
59
+ #
60
+ # puts "downcased: #{downcased}"
61
+ #
62
+ # unless( downcased.include?( value.downcase ) )
63
+ # return {
64
+ # 'status' => 404,
65
+ # 'message' => format( 'wrong value. \'%s\' must be one of \'%s\'', value, valid_params.join('\', \''))
66
+ # }
67
+ # end
68
+ true
69
+ end
70
+
26
71
  end
27
72
  end
28
73
 
@@ -4,11 +4,11 @@ module Grafana
4
4
  module Version
5
5
 
6
6
  # major part of version
7
- MAJOR = 0
7
+ MAJOR = 1
8
8
  # minor part of version
9
- MINOR = 8
9
+ MINOR = 0
10
10
  # tiny part of version
11
- TINY = 2
11
+ TINY = 0
12
12
  end
13
13
 
14
14
  # Current version of gem.
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: grafana
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.2
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Bodo Schulz
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-12-11 00:00:00.000000000 Z
11
+ date: 2020-02-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rest-client
@@ -38,20 +38,6 @@ dependencies:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
40
  version: '2.1'
41
- - !ruby/object:Gem::Dependency
42
- name: ruby_dig
43
- requirement: !ruby/object:Gem::Requirement
44
- requirements:
45
- - - "~>"
46
- - !ruby/object:Gem::Version
47
- version: '0'
48
- type: :runtime
49
- prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - "~>"
53
- - !ruby/object:Gem::Version
54
- version: '0'
55
41
  - !ruby/object:Gem::Dependency
56
42
  name: rake
57
43
  requirement: !ruby/object:Gem::Requirement
@@ -229,37 +215,27 @@ extra_rdoc_files: []
229
215
  files:
230
216
  - LICENSE
231
217
  - README.md
232
- - doc/Array.html
233
- - doc/Boolean.html
234
- - doc/FalseClass.html
235
- - doc/Grafana.html
236
- - doc/Hash.html
237
- - doc/Logging.html
238
- - doc/Object.html
239
- - doc/Time.html
240
- - doc/TrueClass.html
241
- - doc/_index.html
242
- - doc/class_list.html
243
- - doc/file.README.html
244
- - doc/file_list.html
245
- - doc/frames.html
246
- - doc/index.html
247
- - doc/method_list.html
248
- - doc/top-level-namespace.html
249
218
  - lib/grafana.rb
250
219
  - lib/grafana/admin.rb
251
220
  - lib/grafana/alerts.rb
252
221
  - lib/grafana/annotations.rb
253
222
  - lib/grafana/client.rb
254
223
  - lib/grafana/dashboard.rb
224
+ - lib/grafana/dashboard_permissions.rb
255
225
  - lib/grafana/dashboard_versions.rb
256
226
  - lib/grafana/datasource.rb
227
+ - lib/grafana/folder.rb
228
+ - lib/grafana/folder_and_dashboard_search.rb
229
+ - lib/grafana/folder_permissions.rb
257
230
  - lib/grafana/login.rb
258
231
  - lib/grafana/network.rb
259
232
  - lib/grafana/organization.rb
260
233
  - lib/grafana/organizations.rb
234
+ - lib/grafana/playlist.rb
235
+ - lib/grafana/preferences.rb
261
236
  - lib/grafana/snapshot.rb
262
237
  - lib/grafana/tags.rb
238
+ - lib/grafana/teams.rb
263
239
  - lib/grafana/tools.rb
264
240
  - lib/grafana/user.rb
265
241
  - lib/grafana/users.rb
@@ -271,7 +247,7 @@ homepage: http://github.com/bodsch/ruby-grafana
271
247
  licenses:
272
248
  - MIT
273
249
  metadata: {}
274
- post_install_message:
250
+ post_install_message:
275
251
  rdoc_options: []
276
252
  require_paths:
277
253
  - lib
@@ -286,9 +262,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
286
262
  - !ruby/object:Gem::Version
287
263
  version: '0'
288
264
  requirements: []
289
- rubyforge_project:
290
- rubygems_version: 2.6.14
291
- signing_key:
265
+ rubygems_version: 3.2.7
266
+ signing_key:
292
267
  specification_version: 4
293
268
  summary: Grafana HTTP API Wrapper
294
269
  test_files: []
data/doc/Array.html DELETED
@@ -1,200 +0,0 @@
1
- <!DOCTYPE html>
2
- <html>
3
- <head>
4
- <meta charset="utf-8">
5
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
- <title>
7
- Class: Array
8
-
9
- &mdash; Documentation by YARD 0.9.11
10
-
11
- </title>
12
-
13
- <link rel="stylesheet" href="css/style.css" type="text/css" charset="utf-8" />
14
-
15
- <link rel="stylesheet" href="css/common.css" type="text/css" charset="utf-8" />
16
-
17
- <script type="text/javascript" charset="utf-8">
18
- pathId = "Array";
19
- relpath = '';
20
- </script>
21
-
22
-
23
- <script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
24
-
25
- <script type="text/javascript" charset="utf-8" src="js/app.js"></script>
26
-
27
-
28
- </head>
29
- <body>
30
- <div class="nav_wrap">
31
- <iframe id="nav" src="class_list.html?1"></iframe>
32
- <div id="resizer"></div>
33
- </div>
34
-
35
- <div id="main" tabindex="-1">
36
- <div id="header">
37
- <div id="menu">
38
-
39
- <a href="_index.html">Index (A)</a> &raquo;
40
-
41
-
42
- <span class="title">Array</span>
43
-
44
- </div>
45
-
46
- <div id="search">
47
-
48
- <a class="full_list_link" id="class_list_link"
49
- href="class_list.html">
50
-
51
- <svg width="24" height="24">
52
- <rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
53
- <rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
54
- <rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
55
- </svg>
56
- </a>
57
-
58
- </div>
59
- <div class="clear"></div>
60
- </div>
61
-
62
- <div id="content"><h1>Class: Array
63
-
64
-
65
-
66
- </h1>
67
- <div class="box_info">
68
-
69
- <dl>
70
- <dt>Inherits:</dt>
71
- <dd>
72
- <span class="inheritName"><span class='object_link'><a href="Object.html" title="Object (class)">Object</a></span></span>
73
-
74
- <ul class="fullTree">
75
- <li><span class='object_link'><a href="Object.html" title="Object (class)">Object</a></span></li>
76
-
77
- <li class="next">Array</li>
78
-
79
- </ul>
80
- <a href="#" class="inheritanceTree">show all</a>
81
-
82
- </dd>
83
- </dl>
84
-
85
-
86
-
87
-
88
-
89
-
90
-
91
-
92
-
93
-
94
-
95
- <dl>
96
- <dt>Defined in:</dt>
97
- <dd>lib/monkey_patches.rb</dd>
98
- </dl>
99
-
100
- </div>
101
-
102
- <h2>Overview</h2><div class="docstring">
103
- <div class="discussion">
104
- <hr>
105
-
106
-
107
- </div>
108
- </div>
109
- <div class="tags">
110
-
111
-
112
- </div>
113
-
114
-
115
-
116
-
117
-
118
-
119
-
120
- <h2>
121
- Instance Method Summary
122
- <small><a href="#" class="summary_toggle">collapse</a></small>
123
- </h2>
124
-
125
- <ul class="summary">
126
-
127
- <li class="public ">
128
- <span class="summary_signature">
129
-
130
- <a href="#compare-instance_method" title="#compare (instance method)">#<strong>compare</strong>(comparate) &#x21d2; Object </a>
131
-
132
-
133
-
134
- </span>
135
-
136
-
137
-
138
-
139
-
140
-
141
-
142
-
143
-
144
- <span class="summary_desc"><div class='inline'></div></span>
145
-
146
- </li>
147
-
148
-
149
- </ul>
150
-
151
-
152
-
153
-
154
- <div id="instance_method_details" class="method_details_list">
155
- <h2>Instance Method Details</h2>
156
-
157
-
158
- <div class="method_details first">
159
- <h3 class="signature first" id="compare-instance_method">
160
-
161
- #<strong>compare</strong>(comparate) &#x21d2; <tt><span class='object_link'><a href="Object.html" title="Object (class)">Object</a></span></tt>
162
-
163
-
164
-
165
-
166
-
167
- </h3><table class="source_code">
168
- <tr>
169
- <td>
170
- <pre class="lines">
171
-
172
-
173
- 47
174
- 48
175
- 49</pre>
176
- </td>
177
- <td>
178
- <pre class="code"><span class="info file"># File 'lib/monkey_patches.rb', line 47</span>
179
-
180
- <span class='kw'>def</span> <span class='id identifier rubyid_compare'>compare</span><span class='lparen'>(</span> <span class='id identifier rubyid_comparate'>comparate</span> <span class='rparen'>)</span>
181
- <span class='id identifier rubyid_to_set'>to_set</span> <span class='op'>==</span> <span class='id identifier rubyid_comparate'>comparate</span><span class='period'>.</span><span class='id identifier rubyid_to_set'>to_set</span>
182
- <span class='kw'>end</span></pre>
183
- </td>
184
- </tr>
185
- </table>
186
- </div>
187
-
188
- </div>
189
-
190
- </div>
191
-
192
- <div id="footer">
193
- Generated on Sun Dec 10 16:07:39 2017 by
194
- <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
195
- 0.9.11 (ruby-2.2.8).
196
- </div>
197
-
198
- </div>
199
- </body>
200
- </html>
data/doc/Boolean.html DELETED
@@ -1,122 +0,0 @@
1
- <!DOCTYPE html>
2
- <html>
3
- <head>
4
- <meta charset="utf-8">
5
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
- <title>
7
- Module: Boolean
8
-
9
- &mdash; Documentation by YARD 0.9.11
10
-
11
- </title>
12
-
13
- <link rel="stylesheet" href="css/style.css" type="text/css" charset="utf-8" />
14
-
15
- <link rel="stylesheet" href="css/common.css" type="text/css" charset="utf-8" />
16
-
17
- <script type="text/javascript" charset="utf-8">
18
- pathId = "Boolean";
19
- relpath = '';
20
- </script>
21
-
22
-
23
- <script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
24
-
25
- <script type="text/javascript" charset="utf-8" src="js/app.js"></script>
26
-
27
-
28
- </head>
29
- <body>
30
- <div class="nav_wrap">
31
- <iframe id="nav" src="class_list.html?1"></iframe>
32
- <div id="resizer"></div>
33
- </div>
34
-
35
- <div id="main" tabindex="-1">
36
- <div id="header">
37
- <div id="menu">
38
-
39
- <a href="_index.html">Index (B)</a> &raquo;
40
-
41
-
42
- <span class="title">Boolean</span>
43
-
44
- </div>
45
-
46
- <div id="search">
47
-
48
- <a class="full_list_link" id="class_list_link"
49
- href="class_list.html">
50
-
51
- <svg width="24" height="24">
52
- <rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
53
- <rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
54
- <rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
55
- </svg>
56
- </a>
57
-
58
- </div>
59
- <div class="clear"></div>
60
- </div>
61
-
62
- <div id="content"><h1>Module: Boolean
63
-
64
-
65
-
66
- </h1>
67
- <div class="box_info">
68
-
69
-
70
-
71
-
72
-
73
-
74
-
75
-
76
-
77
- <dl>
78
- <dt>Included in:</dt>
79
- <dd><span class='object_link'><a href="FalseClass.html" title="FalseClass (class)">FalseClass</a></span>, <span class='object_link'><a href="TrueClass.html" title="TrueClass (class)">TrueClass</a></span></dd>
80
- </dl>
81
-
82
-
83
-
84
- <dl>
85
- <dt>Defined in:</dt>
86
- <dd>lib/monkey_patches.rb</dd>
87
- </dl>
88
-
89
- </div>
90
-
91
- <h2>Overview</h2><div class="docstring">
92
- <div class="discussion">
93
-
94
- <p><a
95
- href="https://stackoverflow.com/questions/3028243/check-if-ruby-object-is-a-boolean/3028378#3028378">stackoverflow.com/questions/3028243/check-if-ruby-object-is-a-boolean/3028378#3028378</a></p>
96
-
97
-
98
- </div>
99
- </div>
100
- <div class="tags">
101
-
102
-
103
- </div>
104
-
105
-
106
-
107
-
108
-
109
-
110
-
111
-
112
- </div>
113
-
114
- <div id="footer">
115
- Generated on Sun Dec 10 16:07:39 2017 by
116
- <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
117
- 0.9.11 (ruby-2.2.8).
118
- </div>
119
-
120
- </div>
121
- </body>
122
- </html>