kennel 2.12.2 → 2.14.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/api.rb +6 -3
- data/lib/kennel/models/project.rb +2 -2
- data/lib/kennel/models/slo.rb +1 -1
- data/lib/kennel/projects_provider.rb +1 -1
- data/lib/kennel/subclass_tracking.rb +8 -0
- data/lib/kennel/version.rb +1 -1
- metadata +16 -20
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: d289ac0af8158766eeced52cda258b67071189f889e6fa82d63cafe0b4cc7655
|
|
4
|
+
data.tar.gz: 5a231e9da146ca9e008a8b507e2cbd4e11913c6f53d19fbd64af5c93b5b1a0aa
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: a476cf37c12872c6cd4f1eeed55751840ffd5c6206dec0279d281f7862a47bd8e614fa14eefc0ffc32095a15f2d26d4a75b2298b60cc107bf09e1994562f0f15
|
|
7
|
+
data.tar.gz: 29dfd3a9b22848badfb52da141620fde5fc89224974cade1e0cdda957a69d9b82798e4a6a03e95339f1cf907e8c036939fa1b5289cf9b8292b83e9e73e68e03a
|
data/lib/kennel/api.rb
CHANGED
|
@@ -19,7 +19,7 @@ module Kennel
|
|
|
19
19
|
@app_key = app_key || ENV.fetch("DATADOG_APP_KEY")
|
|
20
20
|
@api_key = api_key || ENV.fetch("DATADOG_API_KEY")
|
|
21
21
|
url = Utils.path_to_url("")
|
|
22
|
-
@client = Faraday.new(url: url)
|
|
22
|
+
@client = Faraday.new(url: url)
|
|
23
23
|
end
|
|
24
24
|
|
|
25
25
|
def show(api_resource, id, params = {})
|
|
@@ -109,7 +109,9 @@ module Kennel
|
|
|
109
109
|
|
|
110
110
|
def request(method, path, body: nil, params: {}, ignore_404: false)
|
|
111
111
|
path = "#{path}?#{Faraday::FlatParamsEncoder.encode(params)}" if params.any?
|
|
112
|
-
|
|
112
|
+
cached = (ENV["FORCE_GET_CACHE"] && method == :get)
|
|
113
|
+
|
|
114
|
+
with_cache cached, path do
|
|
113
115
|
response = nil
|
|
114
116
|
tries = 2
|
|
115
117
|
|
|
@@ -128,7 +130,8 @@ module Kennel
|
|
|
128
130
|
redo
|
|
129
131
|
end
|
|
130
132
|
|
|
131
|
-
|
|
133
|
+
last_try = (i == tries - 1)
|
|
134
|
+
break if last_try || ![:get, :put].include?(method) || response.status < 500
|
|
132
135
|
Kennel.err.puts "Retrying on server error #{response.status} for #{path}"
|
|
133
136
|
end
|
|
134
137
|
|
|
@@ -32,8 +32,8 @@ module Kennel
|
|
|
32
32
|
private_class_method def self.force_relative_path(path)
|
|
33
33
|
return path unless File.absolute_path?(path)
|
|
34
34
|
path.dup.sub!("#{Bundler.root}/", "") ||
|
|
35
|
-
|
|
36
|
-
|
|
35
|
+
path.dup.sub!("#{Dir.pwd}/", "") ||
|
|
36
|
+
raise("Unable to make path #{path} relative with bundler root #{Bundler.root} or pwd #{Dir.pwd}")
|
|
37
37
|
end
|
|
38
38
|
|
|
39
39
|
# hook for users to add custom filtering via `prepend`
|
data/lib/kennel/models/slo.rb
CHANGED
|
@@ -73,7 +73,7 @@ module Kennel
|
|
|
73
73
|
end
|
|
74
74
|
|
|
75
75
|
def self.parse_url(url)
|
|
76
|
-
url[/[?&]slo_id=([a-z\d]{10,})/, 1] || url[/\/slo\/([a-z\d]{10,})
|
|
76
|
+
url[/[?&]slo_id=([a-z\d]{10,})/, 1] || url[/\/slo\/([a-z\d]{10,})(:?\/edit)?(\?|$)/, 1]
|
|
77
77
|
end
|
|
78
78
|
|
|
79
79
|
def resolve_linked_tracking_ids!(id_map, **args)
|
|
@@ -9,8 +9,16 @@ module Kennel
|
|
|
9
9
|
@subclasses ||= []
|
|
10
10
|
end
|
|
11
11
|
|
|
12
|
+
def abstract_class?
|
|
13
|
+
!!@abstract_class
|
|
14
|
+
end
|
|
15
|
+
|
|
12
16
|
private
|
|
13
17
|
|
|
18
|
+
def abstract_class!
|
|
19
|
+
@abstract_class = true # not inherited by children
|
|
20
|
+
end
|
|
21
|
+
|
|
14
22
|
def inherited(child)
|
|
15
23
|
super
|
|
16
24
|
subclasses << child
|
data/lib/kennel/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,71 +1,70 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: kennel
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 2.
|
|
4
|
+
version: 2.14.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Michael Grosser
|
|
8
|
-
autorequire:
|
|
9
8
|
bindir: bin
|
|
10
9
|
cert_chain: []
|
|
11
|
-
date:
|
|
10
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
|
12
11
|
dependencies:
|
|
13
12
|
- !ruby/object:Gem::Dependency
|
|
14
|
-
name:
|
|
13
|
+
name: benchmark
|
|
15
14
|
requirement: !ruby/object:Gem::Requirement
|
|
16
15
|
requirements:
|
|
17
16
|
- - "~>"
|
|
18
17
|
- !ruby/object:Gem::Version
|
|
19
|
-
version: '
|
|
18
|
+
version: '0.5'
|
|
20
19
|
type: :runtime
|
|
21
20
|
prerelease: false
|
|
22
21
|
version_requirements: !ruby/object:Gem::Requirement
|
|
23
22
|
requirements:
|
|
24
23
|
- - "~>"
|
|
25
24
|
- !ruby/object:Gem::Version
|
|
26
|
-
version: '
|
|
25
|
+
version: '0.5'
|
|
27
26
|
- !ruby/object:Gem::Dependency
|
|
28
|
-
name:
|
|
27
|
+
name: diff-lcs
|
|
29
28
|
requirement: !ruby/object:Gem::Requirement
|
|
30
29
|
requirements:
|
|
31
30
|
- - "~>"
|
|
32
31
|
- !ruby/object:Gem::Version
|
|
33
|
-
version: '1.
|
|
32
|
+
version: '1.5'
|
|
34
33
|
type: :runtime
|
|
35
34
|
prerelease: false
|
|
36
35
|
version_requirements: !ruby/object:Gem::Requirement
|
|
37
36
|
requirements:
|
|
38
37
|
- - "~>"
|
|
39
38
|
- !ruby/object:Gem::Version
|
|
40
|
-
version: '1.
|
|
39
|
+
version: '1.5'
|
|
41
40
|
- !ruby/object:Gem::Dependency
|
|
42
|
-
name:
|
|
41
|
+
name: faraday
|
|
43
42
|
requirement: !ruby/object:Gem::Requirement
|
|
44
43
|
requirements:
|
|
45
44
|
- - "~>"
|
|
46
45
|
- !ruby/object:Gem::Version
|
|
47
|
-
version: '
|
|
46
|
+
version: '2.0'
|
|
48
47
|
type: :runtime
|
|
49
48
|
prerelease: false
|
|
50
49
|
version_requirements: !ruby/object:Gem::Requirement
|
|
51
50
|
requirements:
|
|
52
51
|
- - "~>"
|
|
53
52
|
- !ruby/object:Gem::Version
|
|
54
|
-
version: '
|
|
53
|
+
version: '2.0'
|
|
55
54
|
- !ruby/object:Gem::Dependency
|
|
56
|
-
name:
|
|
55
|
+
name: hashdiff
|
|
57
56
|
requirement: !ruby/object:Gem::Requirement
|
|
58
57
|
requirements:
|
|
59
58
|
- - "~>"
|
|
60
59
|
- !ruby/object:Gem::Version
|
|
61
|
-
version: '
|
|
60
|
+
version: '1.0'
|
|
62
61
|
type: :runtime
|
|
63
62
|
prerelease: false
|
|
64
63
|
version_requirements: !ruby/object:Gem::Requirement
|
|
65
64
|
requirements:
|
|
66
65
|
- - "~>"
|
|
67
66
|
- !ruby/object:Gem::Version
|
|
68
|
-
version: '
|
|
67
|
+
version: '1.0'
|
|
69
68
|
- !ruby/object:Gem::Dependency
|
|
70
69
|
name: zeitwerk
|
|
71
70
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -80,7 +79,6 @@ dependencies:
|
|
|
80
79
|
- - "~>"
|
|
81
80
|
- !ruby/object:Gem::Version
|
|
82
81
|
version: '2.4'
|
|
83
|
-
description:
|
|
84
82
|
email: michael@grosser.it
|
|
85
83
|
executables: []
|
|
86
84
|
extensions: []
|
|
@@ -128,7 +126,6 @@ homepage: https://github.com/grosser/kennel
|
|
|
128
126
|
licenses:
|
|
129
127
|
- MIT
|
|
130
128
|
metadata: {}
|
|
131
|
-
post_install_message:
|
|
132
129
|
rdoc_options: []
|
|
133
130
|
require_paths:
|
|
134
131
|
- lib
|
|
@@ -136,15 +133,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
136
133
|
requirements:
|
|
137
134
|
- - ">="
|
|
138
135
|
- !ruby/object:Gem::Version
|
|
139
|
-
version:
|
|
136
|
+
version: 4.0.0
|
|
140
137
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
141
138
|
requirements:
|
|
142
139
|
- - ">="
|
|
143
140
|
- !ruby/object:Gem::Version
|
|
144
141
|
version: '0'
|
|
145
142
|
requirements: []
|
|
146
|
-
rubygems_version:
|
|
147
|
-
signing_key:
|
|
143
|
+
rubygems_version: 4.0.3
|
|
148
144
|
specification_version: 4
|
|
149
145
|
summary: Keep datadog monitors/dashboards/etc in version control, avoid chaotic management
|
|
150
146
|
via UI
|