kennel 1.6.0 → 1.7.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/lib/kennel/models/dash.rb +12 -2
- data/lib/kennel/models/screen.rb +7 -1
- data/lib/kennel/utils.rb +1 -1
- data/lib/kennel/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3b10b16c02058b7b1ad4f44992cf5f996be952d9d38a6d17ecbae4d728c78948
|
4
|
+
data.tar.gz: 2ec630b10f6efc6e1ae04fa8844198105f6446cbd542c8dfdd5302c7a18de354
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1127d43e65c93542fea552a8bb682b86da4dccda055d1a3f6123d2a3d5996d5b34617c4940bf797b448f4396392e1813a937de01ad5967a60991ab62cefcc704
|
7
|
+
data.tar.gz: 1c5e5f78cdae0f91d6a2d7f7241bf2a8dc90c7b499bba091c9d8d27225314779550c625cb299ff0109fbfd8894ccdf527e904a3a335d0d8d4b9958f4993d2d31
|
data/lib/kennel/models/dash.rb
CHANGED
@@ -50,9 +50,11 @@ module Kennel
|
|
50
50
|
actual[:template_variables] ||= []
|
51
51
|
actual[:graphs].each do |g|
|
52
52
|
g[:definition].delete(:status)
|
53
|
-
g[:definition][:requests].each { |r| r.delete(:aggregator) }
|
54
53
|
end
|
55
|
-
|
54
|
+
|
55
|
+
# NOTE: we might not trigger an update since the api never returns aggregator ... maybe datadog fixes their api
|
56
|
+
# as temporary workaround change something else about the dash to force an update
|
57
|
+
Utils.presence(super&.reject { |op, key| op == "+" && key.end_with?(".aggregator") })
|
56
58
|
end
|
57
59
|
|
58
60
|
def url(id)
|
@@ -62,12 +64,20 @@ module Kennel
|
|
62
64
|
private
|
63
65
|
|
64
66
|
def validate_json(data)
|
67
|
+
# check for bad variables
|
65
68
|
variables = data.fetch(:template_variables).map { |v| "$#{v.fetch(:name)}" }
|
66
69
|
queries = data[:graphs].flat_map { |g| g[:definition][:requests].map { |r| r.fetch(:q) } }
|
67
70
|
bad = queries.grep_v(/(#{variables.map { |v| Regexp.escape(v) }.join("|")})\b/)
|
68
71
|
if bad.any?
|
69
72
|
raise "#{tracking_id} queries #{bad.join(", ")} must use the template variables #{variables.join(", ")}"
|
70
73
|
end
|
74
|
+
|
75
|
+
# check for fields that are unsettable
|
76
|
+
data[:graphs].each do |g|
|
77
|
+
if g.dig(:definition, :status)
|
78
|
+
raise "#{tracking_id} remove definition status, it is unsettable and will always produce a diff"
|
79
|
+
end
|
80
|
+
end
|
71
81
|
end
|
72
82
|
|
73
83
|
def render_template_variables
|
data/lib/kennel/models/screen.rb
CHANGED
@@ -52,7 +52,13 @@ module Kennel
|
|
52
52
|
actual.delete(:height)
|
53
53
|
actual.delete(:width)
|
54
54
|
actual[:template_variables] ||= []
|
55
|
-
(actual[:widgets] || []).each
|
55
|
+
(actual[:widgets] || []).each do |w|
|
56
|
+
# api randomly returns time.live_span or timeframe
|
57
|
+
w[:timeframe] = w.delete(:time)[:live_span] if w[:time]
|
58
|
+
|
59
|
+
# board_id is a copied value, can ignore
|
60
|
+
w.delete :board_id
|
61
|
+
end
|
56
62
|
super
|
57
63
|
end
|
58
64
|
|
data/lib/kennel/utils.rb
CHANGED
data/lib/kennel/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: kennel
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.7.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Michael Grosser
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-06-
|
11
|
+
date: 2018-06-12 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: faraday
|