kennel 1.126.0 → 1.128.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/kennel/tasks.rb +3 -1
- data/lib/kennel/version.rb +1 -1
- data/lib/kennel.rb +19 -14
- 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: d27f0b47987630640f1d58181bc98360714dc4b39827ea7282d1445496e3d315
|
4
|
+
data.tar.gz: a2dbe1c762943b8859134772f39e3f0af0f4e7e2c5c1a60c2de980574de84714
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6c16b16c0914e6c436424c431eec9b5b0ff5dcb92195096973e1807c75375e34f16094c4935c28de6a0797ebb8d5cc5a8e86a9c38f4a778df65598ede58ad348
|
7
|
+
data.tar.gz: d885678eb185f3fa404d8c42c64f3c7f22250da1537ecec556d5f9728fe9a6aa7d7fb889f9c8d637c4f29787864f05ec5a51c5abb90023fde1c71a0110a24dd5
|
data/lib/kennel/tasks.rb
CHANGED
@@ -101,10 +101,12 @@ namespace :kennel do
|
|
101
101
|
end
|
102
102
|
|
103
103
|
# also generate parts so users see and commit updated generated automatically
|
104
|
+
# (generate must run after plan to enable parallel .download+.generate inside of .plan)
|
104
105
|
desc "show planned datadog changes (scope with PROJECT=name)"
|
105
106
|
task plan: :environment do
|
106
|
-
Kennel::Tasks.kennel.
|
107
|
+
Kennel::Tasks.kennel.preload
|
107
108
|
Kennel::Tasks.kennel.generate
|
109
|
+
Kennel::Tasks.kennel.plan
|
108
110
|
end
|
109
111
|
|
110
112
|
desc "update datadog (scope with PROJECT=name)"
|
data/lib/kennel/version.rb
CHANGED
data/lib/kennel.rb
CHANGED
@@ -58,8 +58,13 @@ module Kennel
|
|
58
58
|
|
59
59
|
attr_accessor :strict_imports
|
60
60
|
|
61
|
+
# start generation and download in parallel to make planning faster
|
62
|
+
def preload
|
63
|
+
Utils.parallel([:generated, :definitions]) { |m| send m, plain: true }
|
64
|
+
end
|
65
|
+
|
61
66
|
def generate
|
62
|
-
parts = generated
|
67
|
+
parts = generated
|
63
68
|
parts_serializer.write(parts) if ENV["STORE"] != "false" # quicker when debugging
|
64
69
|
parts
|
65
70
|
end
|
@@ -75,23 +80,14 @@ module Kennel
|
|
75
80
|
|
76
81
|
private
|
77
82
|
|
78
|
-
def download_definitions
|
79
|
-
Progress.progress("Downloading definitions", plain: true) do
|
80
|
-
Utils.parallel(Models::Record.subclasses) do |klass|
|
81
|
-
results = api.list(klass.api_resource, with_downtimes: false) # lookup monitors without adding unnecessary downtime information
|
82
|
-
results.each { |a| Utils.inline_resource_metadata(a, klass) }
|
83
|
-
end.flatten(1)
|
84
|
-
end
|
85
|
-
end
|
86
|
-
|
87
83
|
def filter
|
88
84
|
@filter ||= Filter.new
|
89
85
|
end
|
90
86
|
|
91
87
|
def syncer
|
92
88
|
@syncer ||= begin
|
93
|
-
|
94
|
-
Syncer.new(api,
|
89
|
+
preload
|
90
|
+
Syncer.new(api, generated, definitions, kennel: self, project_filter: filter.project_filter, tracking_id_filter: filter.tracking_id_filter)
|
95
91
|
end
|
96
92
|
end
|
97
93
|
|
@@ -107,9 +103,9 @@ module Kennel
|
|
107
103
|
@parts_serializer ||= PartsSerializer.new(filter: filter)
|
108
104
|
end
|
109
105
|
|
110
|
-
def generated(
|
106
|
+
def generated(**kwargs)
|
111
107
|
@generated ||= begin
|
112
|
-
parts = Progress.progress "Finding parts",
|
108
|
+
parts = Progress.progress "Finding parts", **kwargs do
|
113
109
|
projects = projects_provider.projects
|
114
110
|
projects = filter.filter_projects projects
|
115
111
|
|
@@ -135,5 +131,14 @@ module Kennel
|
|
135
131
|
parts
|
136
132
|
end
|
137
133
|
end
|
134
|
+
|
135
|
+
def definitions(**kwargs)
|
136
|
+
@definitions ||= Progress.progress("Downloading definitions", **kwargs) do
|
137
|
+
Utils.parallel(Models::Record.subclasses) do |klass|
|
138
|
+
results = api.list(klass.api_resource, with_downtimes: false) # lookup monitors without adding unnecessary downtime information
|
139
|
+
results.each { |a| Utils.inline_resource_metadata(a, klass) }
|
140
|
+
end.flatten(1)
|
141
|
+
end
|
142
|
+
end
|
138
143
|
end
|
139
144
|
end
|
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.128.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: 2022-12-
|
11
|
+
date: 2022-12-06 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: diff-lcs
|