luban-grafana 0.1.0 → 0.2.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.
- checksums.yaml +4 -4
- data/CHANGLOG.md +16 -0
- data/lib/luban/deployment/packages/grafana.rb +2 -0
- data/lib/luban/deployment/packages/grafana/base.rb +27 -1
- data/lib/luban/deployment/packages/grafana/configurator.rb +12 -0
- data/lib/luban/deployment/packages/grafana/controller.rb +34 -0
- data/lib/luban/deployment/packages/grafana/installer.rb +10 -2
- data/lib/luban/deployment/packages/grafana/templates/conf/grafana.ini.erb +360 -0
- data/lib/luban/deployment/packages/grafana/templates/grafana.logrotate.erb +16 -0
- data/lib/luban/deployment/packages/grafana/templates/grafana.monitrc.erb +10 -0
- data/lib/luban/deployment/packages/grafana/version.rb +1 -1
- data/luban-grafana.gemspec +1 -1
- metadata +9 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f3cdadb053fe1d707901bad2da431f8405c40f32
|
4
|
+
data.tar.gz: 309aebf48822d4d6214dec63575b50979ee0b60c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 607d8930bde2b2cdfd22ede1e32a472e6959df4b9eb5e7d9a5998724bee16ade6d5f94db5d5f0b64c364bfc0eaf465b1d2aa1eb5f47158379965c4fa5dae51d4
|
7
|
+
data.tar.gz: ead300ef60d2fbb6abed4e30b0493fc16d5f1ff330b9895cc8ecb97319bb071eb1bbbba21d75a453ace024e0894ab298e8054dccc798c4a7602e21fa50103724
|
data/CHANGLOG.md
CHANGED
@@ -1,5 +1,21 @@
|
|
1
1
|
# Change log
|
2
2
|
|
3
|
+
## Version 0.2.0 (Nov 30, 2016)
|
4
|
+
|
5
|
+
Minor enhancements:
|
6
|
+
* Setup appropriate paths for deployment of Grafana
|
7
|
+
* Added parameters, #port and #network_host, for basic setup of Grafana
|
8
|
+
* Added Controller and Configurator to manage Grafana deployment
|
9
|
+
* Added related profile templates for Grafana
|
10
|
+
* Bump up gem dependency of luban to version 0.10.10
|
11
|
+
|
12
|
+
Bug fixes:
|
13
|
+
* Corrected parent class for Grafana
|
14
|
+
* Corrected parent class for Grafana::Installer
|
15
|
+
* Included Paths in Grafana::Installer
|
16
|
+
* Handled linked directories properly
|
17
|
+
* Cleaned up install path before installation
|
18
|
+
|
3
19
|
## Version 0.1.0 (Nov 25, 2016)
|
4
20
|
|
5
21
|
New features:
|
@@ -1,7 +1,29 @@
|
|
1
1
|
module Luban
|
2
2
|
module Deployment
|
3
3
|
module Packages
|
4
|
-
class Grafana < Luban::Deployment::
|
4
|
+
class Grafana < Luban::Deployment::Service::Base
|
5
|
+
module Paths
|
6
|
+
def control_file_dir; @control_file_dir ||= "conf"; end
|
7
|
+
|
8
|
+
def control_file_name
|
9
|
+
@control_file_name ||= "#{service_name}.ini"
|
10
|
+
end
|
11
|
+
|
12
|
+
def data_path
|
13
|
+
@data_path ||= shared_path.join('data')
|
14
|
+
end
|
15
|
+
|
16
|
+
def plugins_path
|
17
|
+
@plugins_path ||= data_path.join('plugins')
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
DefaultPort = 3000
|
22
|
+
DefaultNetworkHost = `hostname -f`.chomp
|
23
|
+
|
24
|
+
parameter :port, default: DefaultPort
|
25
|
+
parameter :network_host, default: DefaultNetworkHost
|
26
|
+
|
5
27
|
protected
|
6
28
|
|
7
29
|
def setup_provision_tasks
|
@@ -9,6 +31,10 @@ module Luban
|
|
9
31
|
provision_tasks[:install].option :iter, "Iteration"
|
10
32
|
provision_tasks[:install].option :dist, "Binary distribution"
|
11
33
|
end
|
34
|
+
|
35
|
+
def include_default_templates_path
|
36
|
+
default_templates_paths.unshift(base_templates_path(__FILE__))
|
37
|
+
end
|
12
38
|
end
|
13
39
|
end
|
14
40
|
end
|
@@ -0,0 +1,34 @@
|
|
1
|
+
module Luban
|
2
|
+
module Deployment
|
3
|
+
module Packages
|
4
|
+
class Grafana
|
5
|
+
class Controller < Luban::Deployment::Service::Controller
|
6
|
+
module Commands
|
7
|
+
def self.included(base)
|
8
|
+
base.define_executable 'grafana-server'
|
9
|
+
end
|
10
|
+
|
11
|
+
def process_pattern
|
12
|
+
@process_pattern ||= "#{control_file_path}$"
|
13
|
+
end
|
14
|
+
|
15
|
+
def shell_setup
|
16
|
+
@shell_setup ||= super << "cd #{install_path}"
|
17
|
+
end
|
18
|
+
|
19
|
+
def start_command
|
20
|
+
@start_command ||= shell_command("#{grafana_server_executable} -pidfile #{pid_file_path} -config #{control_file_path}", output: nil) + ' &'
|
21
|
+
end
|
22
|
+
|
23
|
+
def stop_command
|
24
|
+
@stop_command ||= shell_command("kill $(cat #{pid_file_path} 2>/dev/null)")
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
include Paths
|
29
|
+
include Commands
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
@@ -1,8 +1,10 @@
|
|
1
1
|
module Luban
|
2
2
|
module Deployment
|
3
3
|
module Packages
|
4
|
-
class Grafana
|
5
|
-
class Installer < Luban::Deployment::
|
4
|
+
class Grafana
|
5
|
+
class Installer < Luban::Deployment::Service::Installer
|
6
|
+
include Paths
|
7
|
+
|
6
8
|
define_executable 'grafana-cli'
|
7
9
|
|
8
10
|
def package_iter; task.opts.iter; end
|
@@ -29,9 +31,15 @@ module Luban
|
|
29
31
|
|
30
32
|
protected
|
31
33
|
|
34
|
+
def init
|
35
|
+
super
|
36
|
+
linked_dirs.push('data')
|
37
|
+
end
|
38
|
+
|
32
39
|
def build_package
|
33
40
|
info "Building #{package_full_name}"
|
34
41
|
within install_path do
|
42
|
+
rm('-r', '*') # Clean up install path
|
35
43
|
execute(:mv, build_path.join('*'), '.', ">> #{install_log_file_path} 2>&1")
|
36
44
|
end
|
37
45
|
end
|
@@ -0,0 +1,360 @@
|
|
1
|
+
##################### Grafana Configuration #####################
|
2
|
+
|
3
|
+
# possible values : production, development
|
4
|
+
# app_mode = production
|
5
|
+
|
6
|
+
# instance name, defaults to HOSTNAME environment variable value or hostname if HOSTNAME var is empty
|
7
|
+
# instance_name = ${HOSTNAME}
|
8
|
+
|
9
|
+
#################################### Paths ####################################
|
10
|
+
[paths]
|
11
|
+
# Path to where grafana can store temp files, sessions, and the sqlite3 db (if that is used)
|
12
|
+
#
|
13
|
+
data = <%= data_path %>
|
14
|
+
#
|
15
|
+
# Directory where grafana can store logs
|
16
|
+
#
|
17
|
+
logs = <%= log_path %>
|
18
|
+
#
|
19
|
+
# Directory where grafana will automatically scan and look for plugins
|
20
|
+
#
|
21
|
+
plugins = <% plugins_path %>
|
22
|
+
|
23
|
+
#################################### Server ####################################
|
24
|
+
[server]
|
25
|
+
# Protocol (http or https)
|
26
|
+
# protocol = http
|
27
|
+
|
28
|
+
# The ip address to bind to, empty will bind to all interfaces
|
29
|
+
# http_addr =
|
30
|
+
|
31
|
+
# The http port to use
|
32
|
+
http_port = <%= port %>
|
33
|
+
|
34
|
+
# The public facing domain name used to access grafana from a browser
|
35
|
+
domain = <%= network_host %>
|
36
|
+
|
37
|
+
# Redirect to correct domain if host header does not match domain
|
38
|
+
# Prevents DNS rebinding attacks
|
39
|
+
# enforce_domain = false
|
40
|
+
|
41
|
+
# The full public facing url
|
42
|
+
# root_url = %(protocol)s://%(domain)s:%(http_port)s/
|
43
|
+
|
44
|
+
# Log web requests
|
45
|
+
# router_logging = false
|
46
|
+
|
47
|
+
# the path relative working path
|
48
|
+
# static_root_path = public
|
49
|
+
|
50
|
+
# enable gzip
|
51
|
+
# enable_gzip = false
|
52
|
+
|
53
|
+
# https certs & key file
|
54
|
+
# cert_file =
|
55
|
+
# cert_key =
|
56
|
+
|
57
|
+
#################################### Database ####################################
|
58
|
+
[database]
|
59
|
+
# Either "mysql", "postgres" or "sqlite3", it's your choice
|
60
|
+
|
61
|
+
# SQLite 3
|
62
|
+
type = sqlite3
|
63
|
+
name = grafana
|
64
|
+
# path relative to data_path setting
|
65
|
+
path = <%= application%>_<%= stage %>.db
|
66
|
+
|
67
|
+
# type = mysql
|
68
|
+
# host = 127.0.0.1:3306
|
69
|
+
# name = <%= application %>_<%= stage %>
|
70
|
+
# user = root
|
71
|
+
# password =
|
72
|
+
|
73
|
+
# For "postgres", use either "disable", "require" or "verify-full"
|
74
|
+
# For "mysql", use either "true", "false", or "skip-verify".
|
75
|
+
ssl_mode = disable
|
76
|
+
|
77
|
+
# ca_cert_path =
|
78
|
+
# client_key_path =
|
79
|
+
# client_cert_path =
|
80
|
+
# server_cert_name =
|
81
|
+
|
82
|
+
#################################### Session ####################################
|
83
|
+
[session]
|
84
|
+
# Either "memory", "file", "redis", "mysql", "postgres", "memcache", default is "file"
|
85
|
+
# provider = file
|
86
|
+
# provider_config = sessions
|
87
|
+
|
88
|
+
# Provider config options
|
89
|
+
# memory: not have any config yet
|
90
|
+
# file: session dir path, is relative to grafana data_path
|
91
|
+
# redis: config like redis server e.g. `addr=127.0.0.1:6379,pool_size=100,db=grafana`
|
92
|
+
# postgres: user=a password=b host=localhost port=5432 dbname=c sslmode=disable
|
93
|
+
# mysql: go-sql-driver/mysql dsn config string, examples:
|
94
|
+
# `user:password@tcp(127.0.0.1:3306)/database_name`
|
95
|
+
# `user:password@unix(/var/run/mysqld/mysqld.sock)/database_name`
|
96
|
+
# memcache: 127.0.0.1:11211
|
97
|
+
|
98
|
+
# Session cookie name
|
99
|
+
# cookie_name = <%= application %>_<%= stage %>_grafana_sess
|
100
|
+
|
101
|
+
# If you use session in https only, default is false
|
102
|
+
# cookie_secure = false
|
103
|
+
|
104
|
+
# Session life time, default is 86400
|
105
|
+
# session_life_time = 86400
|
106
|
+
# gc_interval_time = 86400
|
107
|
+
|
108
|
+
#################################### Analytics ####################################
|
109
|
+
[analytics]
|
110
|
+
# Server reporting, sends usage counters to stats.grafana.org every 24 hours.
|
111
|
+
# No ip addresses are being tracked, only simple counters to track
|
112
|
+
# running instances, dashboard and error counts. It is very helpful to us.
|
113
|
+
# Change this option to false to disable reporting.
|
114
|
+
reporting_enabled = false
|
115
|
+
|
116
|
+
# Set to false to disable all checks to https://grafana.net
|
117
|
+
# for new vesions (grafana itself and plugins), check is used
|
118
|
+
# in some UI views to notify that grafana or plugin update exists
|
119
|
+
# This option does not cause any auto updates, nor send any information
|
120
|
+
# only a GET request to http://grafana.net to get latest versions
|
121
|
+
check_for_updates = true
|
122
|
+
|
123
|
+
# Google Analytics universal tracking code, only enabled if you specify an id here
|
124
|
+
# google_analytics_ua_id =
|
125
|
+
|
126
|
+
# Google Tag Manager ID, only enabled if you specify an id here
|
127
|
+
# google_tag_manager_id =
|
128
|
+
|
129
|
+
#################################### Security ####################################
|
130
|
+
[security]
|
131
|
+
# default admin user, created on startup
|
132
|
+
# admin_user = admin
|
133
|
+
|
134
|
+
# default admin password, can be changed before first start of grafana, or in profile settings
|
135
|
+
# admin_password = admin
|
136
|
+
|
137
|
+
# used for signing
|
138
|
+
# secret_key = SW2YcwTIb9zpOOhoPsMm
|
139
|
+
|
140
|
+
# Auto-login remember days
|
141
|
+
# login_remember_days = 7
|
142
|
+
cookie_username = <%= application %>_<%= stage %>_grafana_user
|
143
|
+
cookie_remember_name = <%= application %>_<%= stage %>_grafana_remember
|
144
|
+
|
145
|
+
# disable gravatar profile images
|
146
|
+
# disable_gravatar = false
|
147
|
+
|
148
|
+
# data source proxy whitelist (ip_or_domain:port separated by spaces)
|
149
|
+
# data_source_proxy_whitelist =
|
150
|
+
|
151
|
+
[snapshots]
|
152
|
+
# snapshot sharing options
|
153
|
+
external_enabled = false
|
154
|
+
# external_snapshot_url = https://snapshots-origin.raintank.io
|
155
|
+
# external_snapshot_name = Publish to snapshot.raintank.io
|
156
|
+
|
157
|
+
#################################### Users ####################################
|
158
|
+
[users]
|
159
|
+
# disable user signup / registration
|
160
|
+
allow_sign_up = false
|
161
|
+
|
162
|
+
# Allow non admin users to create organizations
|
163
|
+
allow_org_create = false
|
164
|
+
|
165
|
+
# Set to true to automatically assign new users to the default organization (id 1)
|
166
|
+
# auto_assign_org = true
|
167
|
+
|
168
|
+
# Default role new users will be automatically assigned (if auto_assign_org above is set to true)
|
169
|
+
# auto_assign_org_role = Viewer
|
170
|
+
|
171
|
+
# Require email validation before sign up completes
|
172
|
+
# verify_email_enabled = false
|
173
|
+
|
174
|
+
# Background text for the user field on the login page
|
175
|
+
# login_hint = email or username
|
176
|
+
|
177
|
+
# Default UI theme ("dark" or "light")
|
178
|
+
# default_theme = dark
|
179
|
+
|
180
|
+
#################################### Anonymous Auth ##########################
|
181
|
+
[auth.anonymous]
|
182
|
+
# enable anonymous access
|
183
|
+
# enabled = false
|
184
|
+
|
185
|
+
# specify organization name that should be used for unauthenticated users
|
186
|
+
# org_name = Main Org.
|
187
|
+
|
188
|
+
# specify role for unauthenticated users
|
189
|
+
# org_role = Viewer
|
190
|
+
|
191
|
+
#################################### Github Auth ##########################
|
192
|
+
[auth.github]
|
193
|
+
enabled = false
|
194
|
+
# allow_sign_up = false
|
195
|
+
# client_id = some_id
|
196
|
+
# client_secret = some_secret
|
197
|
+
# scopes = user:email
|
198
|
+
# auth_url = https://github.com/login/oauth/authorize
|
199
|
+
# token_url = https://github.com/login/oauth/access_token
|
200
|
+
# api_url = https://api.github.com/user
|
201
|
+
# team_ids =
|
202
|
+
# allowed_organizations =
|
203
|
+
|
204
|
+
#################################### Google Auth ##########################
|
205
|
+
[auth.google]
|
206
|
+
enabled = false
|
207
|
+
# allow_sign_up = false
|
208
|
+
# client_id = some_client_id
|
209
|
+
# client_secret = some_client_secret
|
210
|
+
# scopes = https://www.googleapis.com/auth/userinfo.profile https://www.googleapis.com/auth/userinfo.email
|
211
|
+
# auth_url = https://accounts.google.com/o/oauth2/auth
|
212
|
+
# token_url = https://accounts.google.com/o/oauth2/token
|
213
|
+
# api_url = https://www.googleapis.com/oauth2/v1/userinfo
|
214
|
+
# allowed_domains =
|
215
|
+
|
216
|
+
#################################### Basic Auth ##########################
|
217
|
+
[auth.basic]
|
218
|
+
enabled = true
|
219
|
+
|
220
|
+
#################################### Auth Proxy ##########################
|
221
|
+
[auth.proxy]
|
222
|
+
enabled = false
|
223
|
+
# header_name = X-WEBAUTH-USER
|
224
|
+
# header_property = username
|
225
|
+
# auto_sign_up = true
|
226
|
+
|
227
|
+
#################################### Auth LDAP ##########################
|
228
|
+
[auth.ldap]
|
229
|
+
enabled = false
|
230
|
+
# config_file = <%= control_path.join('ldap.toml')
|
231
|
+
|
232
|
+
#################################### SMTP / Emailing ##########################
|
233
|
+
[smtp]
|
234
|
+
enabled = false
|
235
|
+
# host = localhost:25
|
236
|
+
# user =
|
237
|
+
# password =
|
238
|
+
# cert_file =
|
239
|
+
# key_file =
|
240
|
+
# skip_verify = false
|
241
|
+
# from_address = admin@grafana.localhost
|
242
|
+
|
243
|
+
[emails]
|
244
|
+
# welcome_email_on_sign_up = false
|
245
|
+
# templates_pattern = emails/*.html
|
246
|
+
|
247
|
+
#################################### Logging ##########################
|
248
|
+
[log]
|
249
|
+
# Either "console", "file", "syslog". Default is console and file
|
250
|
+
# Use space to separate multiple modes, e.g. "console file"
|
251
|
+
mode = console, file
|
252
|
+
|
253
|
+
# Either "debug", "info", "warn", "error", "critical", default is "info"
|
254
|
+
# level = info
|
255
|
+
|
256
|
+
# For "console" mode only
|
257
|
+
[log.console]
|
258
|
+
level =
|
259
|
+
|
260
|
+
# log line format, valid options are text, console and json
|
261
|
+
format = console
|
262
|
+
|
263
|
+
# For "file" mode only
|
264
|
+
[log.file]
|
265
|
+
level =
|
266
|
+
|
267
|
+
# log line format, valid options are text, console and json
|
268
|
+
format = text
|
269
|
+
|
270
|
+
# This enables automated log rotate(switch of following options), default is true
|
271
|
+
log_rotate = false
|
272
|
+
|
273
|
+
# Max line number of single file, default is 1000000
|
274
|
+
# max_lines = 1000000
|
275
|
+
|
276
|
+
# Max size shift of single file, default is 28 means 1 << 28, 256MB
|
277
|
+
# max_size_shift = 28
|
278
|
+
|
279
|
+
# Segment log daily, default is true
|
280
|
+
# daily_rotate = true
|
281
|
+
|
282
|
+
# Expired days of log file(delete after max days), default is 7
|
283
|
+
# max_days = 7
|
284
|
+
|
285
|
+
[log.syslog]
|
286
|
+
# level =
|
287
|
+
|
288
|
+
# log line format, valid options are text, console and json
|
289
|
+
# format = text
|
290
|
+
|
291
|
+
# Syslog network type and address. This can be udp, tcp, or unix. If left blank, the default unix endpoints will be used.
|
292
|
+
# network =
|
293
|
+
# address =
|
294
|
+
|
295
|
+
# Syslog facility. user, daemon and local0 through local7 are valid.
|
296
|
+
# facility =
|
297
|
+
|
298
|
+
# Syslog tag. By default, the process' argv[0] is used.
|
299
|
+
# tag =
|
300
|
+
|
301
|
+
|
302
|
+
#################################### AMQP Event Publisher ##########################
|
303
|
+
[event_publisher]
|
304
|
+
# enabled = false
|
305
|
+
# rabbitmq_url = amqp://localhost/
|
306
|
+
# exchange = grafana_events
|
307
|
+
|
308
|
+
#################################### Dashboard JSON files ##########################
|
309
|
+
[dashboards.json]
|
310
|
+
# enabled = false
|
311
|
+
# path = /var/lib/grafana/dashboards
|
312
|
+
|
313
|
+
#################################### Usage Quotas ##########################
|
314
|
+
[quota]
|
315
|
+
# enabled = false
|
316
|
+
|
317
|
+
#### set quotas to -1 to make unlimited. ####
|
318
|
+
# limit number of users per Org.
|
319
|
+
org_user = 10
|
320
|
+
|
321
|
+
# limit number of dashboards per Org.
|
322
|
+
org_dashboard = 100
|
323
|
+
|
324
|
+
# limit number of data_sources per Org.
|
325
|
+
org_data_source = 10
|
326
|
+
|
327
|
+
# limit number of api_keys per Org.
|
328
|
+
org_api_key = 10
|
329
|
+
|
330
|
+
# limit number of orgs a user can create.
|
331
|
+
user_org = 10
|
332
|
+
|
333
|
+
# Global limit of users.
|
334
|
+
global_user = -1
|
335
|
+
|
336
|
+
# global limit of orgs.
|
337
|
+
global_org = -1
|
338
|
+
|
339
|
+
# global limit of dashboards
|
340
|
+
global_dashboard = -1
|
341
|
+
|
342
|
+
# global limit of api_keys
|
343
|
+
global_api_key = -1
|
344
|
+
|
345
|
+
# global limit on number of logged in users.
|
346
|
+
global_session = -1
|
347
|
+
|
348
|
+
#################################### Internal Grafana Metrics ##########################
|
349
|
+
# Metrics available at HTTP API Url /api/metrics
|
350
|
+
[metrics]
|
351
|
+
enabled = false
|
352
|
+
# interval_seconds = 60
|
353
|
+
|
354
|
+
# Send internal Grafana metrics to graphite
|
355
|
+
# ; [metrics.graphite]
|
356
|
+
# ; address = localhost:2003
|
357
|
+
# ; prefix = prod.grafana.%(instance_name)s.
|
358
|
+
|
359
|
+
[grafana_net]
|
360
|
+
# url = https://grafana.net
|
@@ -0,0 +1,16 @@
|
|
1
|
+
# Grafana logrotate configuration
|
2
|
+
|
3
|
+
<%= log_file_path %> {
|
4
|
+
daily
|
5
|
+
maxsize 5M
|
6
|
+
maxage <%= logrotate_max_age %>
|
7
|
+
rotate <%= logrotate_count %>
|
8
|
+
missingok
|
9
|
+
compress
|
10
|
+
compresscmd <%= `which gzip`.chomp %>
|
11
|
+
delaycompress
|
12
|
+
dateext
|
13
|
+
dateformat -%Y%m%d-%H%M%S
|
14
|
+
copytruncate
|
15
|
+
olddir archived_logs
|
16
|
+
}
|
@@ -0,0 +1,10 @@
|
|
1
|
+
# Monit control file for Grafana
|
2
|
+
|
3
|
+
check process <%= service_entry %>
|
4
|
+
with pidfile <%= pid_file_path %>
|
5
|
+
onreboot laststate
|
6
|
+
start program = "/bin/bash -c 'sleep 1; <%= start_command %>'"
|
7
|
+
stop program = "/bin/bash -c '<%= stop_command %>'"
|
8
|
+
if failed port <%= port %> for 4 times within 8 cycles then restart
|
9
|
+
if cpu is greater than 80% for 20 cycles then alert
|
10
|
+
if loadavg(5min) greater than 10 for 40 cycles then restart
|
data/luban-grafana.gemspec
CHANGED
@@ -20,7 +20,7 @@ Gem::Specification.new do |spec|
|
|
20
20
|
spec.require_paths = ["lib"]
|
21
21
|
|
22
22
|
spec.required_ruby_version = ">= 2.1.0"
|
23
|
-
spec.add_dependency 'luban', ">= 0.10.
|
23
|
+
spec.add_dependency 'luban', ">= 0.10.10"
|
24
24
|
|
25
25
|
spec.add_development_dependency "bundler", "~> 1.12"
|
26
26
|
spec.add_development_dependency "rake", "~> 10.0"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: luban-grafana
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Rubyist Chi
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-11-
|
11
|
+
date: 2016-11-30 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: luban
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 0.10.
|
19
|
+
version: 0.10.10
|
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: 0.10.
|
26
|
+
version: 0.10.10
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: bundler
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -84,7 +84,12 @@ files:
|
|
84
84
|
- lib/luban-grafana.rb
|
85
85
|
- lib/luban/deployment/packages/grafana.rb
|
86
86
|
- lib/luban/deployment/packages/grafana/base.rb
|
87
|
+
- lib/luban/deployment/packages/grafana/configurator.rb
|
88
|
+
- lib/luban/deployment/packages/grafana/controller.rb
|
87
89
|
- lib/luban/deployment/packages/grafana/installer.rb
|
90
|
+
- lib/luban/deployment/packages/grafana/templates/conf/grafana.ini.erb
|
91
|
+
- lib/luban/deployment/packages/grafana/templates/grafana.logrotate.erb
|
92
|
+
- lib/luban/deployment/packages/grafana/templates/grafana.monitrc.erb
|
88
93
|
- lib/luban/deployment/packages/grafana/version.rb
|
89
94
|
- lib/luban/grafana.rb
|
90
95
|
- luban-grafana.gemspec
|