topological_inventory-core 1.1.7 → 1.1.8
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/topological_inventory/core/version.rb +1 -1
- data/lib/topological_inventory/schema/default.rb +13 -11
- 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: e695f0361b4d66ec73f345609275c5184d882b283471b963a802502a3f474bfb
|
4
|
+
data.tar.gz: d3b514bb133871100ec4003041c1605ec203498c9fe995df50260e520324e037
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: bfe84074032bf678982d41a3c86c6db7e97981035930a65c533944e8d7fe1a1409e7db7adb6aa2e6045f6f3fc4451ac817c0491b7a17a3810156f702f479fe2e
|
7
|
+
data.tar.gz: f794a8cae67dc978d1b1e538734243421c23b6e39497347fed8f785a61252cb5aa5b82f93bfb4ea7a56b95d35db289eb156c00c345500907af1fbc48070a4ec4
|
@@ -151,14 +151,15 @@ module TopologicalInventory
|
|
151
151
|
service_instance_tasks_update_by_activerecord(tasks_collection, source, src_refs)
|
152
152
|
end
|
153
153
|
|
154
|
-
def task_update_values(svc_instance_id, source_ref, external_url, status, task_status, finished_timestamp, source_id)
|
154
|
+
def task_update_values(svc_instance_id, source_ref, external_url, status, artifacts, task_status, finished_timestamp, archived_timestamp, source_id)
|
155
155
|
{
|
156
|
-
:state
|
157
|
-
:status
|
156
|
+
:state => finished_timestamp.blank? && archived_timestamp.blank? ? 'running' : 'completed',
|
157
|
+
:status => task_status,
|
158
158
|
:context => {
|
159
159
|
:service_instance => {
|
160
160
|
:id => svc_instance_id,
|
161
161
|
:job_status => status,
|
162
|
+
:artifacts => artifacts,
|
162
163
|
:source_id => source_id,
|
163
164
|
:source_ref => source_ref,
|
164
165
|
:url => external_url
|
@@ -172,12 +173,12 @@ module TopologicalInventory
|
|
172
173
|
service_instances = ServiceInstance.where(:source_id => source.id, :source_ref => svc_instances_source_ref)
|
173
174
|
tasks_by_source_ref = Task.where(:state => 'running', :target_type => 'ServiceInstance', :source_id => source.id, :target_source_ref => service_instances.pluck(:source_ref)).index_by(&:target_source_ref)
|
174
175
|
|
175
|
-
service_instances.select(:id, :external_url, :source_ref, :extra).find_in_batches do |group|
|
176
|
+
service_instances.select(:id, :archived_at, :external_url, :source_ref, :extra).find_in_batches do |group|
|
176
177
|
ActiveRecord::Base.transaction do
|
177
178
|
group.each do |svc_instance|
|
178
179
|
next if (task = tasks_by_source_ref[svc_instance.source_ref]).nil?
|
179
180
|
|
180
|
-
values = task_update_values(svc_instance.id, svc_instance.source_ref, svc_instance.external_url, svc_instance.extra['status'], svc_instance.extra['task_status'], svc_instance.extra['finished'], source.id)
|
181
|
+
values = task_update_values(svc_instance.id, svc_instance.source_ref, svc_instance.external_url, svc_instance.extra['status'], svc_instance.extra['artifacts'], svc_instance.extra['task_status'], svc_instance.extra['finished'], svc_instance.archived_at, source.id)
|
181
182
|
# 1) Updating Task
|
182
183
|
task.update(values)
|
183
184
|
|
@@ -198,19 +199,20 @@ module TopologicalInventory
|
|
198
199
|
|
199
200
|
# Load saved service instances (IDs needed)
|
200
201
|
svc_instances_values = ServiceInstance.where(:source_ref => tasks_source_ref)
|
201
|
-
|
202
|
-
|
203
|
-
|
204
|
-
|
202
|
+
.pluck(:id, :archived_at, :external_url, :source_ref,
|
203
|
+
Arel.sql("extra->'finished'"),
|
204
|
+
Arel.sql("extra->'status'"),
|
205
|
+
Arel.sql("extra->'task_status'"),
|
206
|
+
Arel.sql("extra->'artifacts'"))
|
205
207
|
return if svc_instances_values.blank?
|
206
208
|
|
207
209
|
sql_update_values = []
|
208
210
|
|
209
211
|
# Preparing SQL update values from loaded ServiceInstances
|
210
212
|
svc_instances_values.each do |attrs|
|
211
|
-
id, external_url, source_ref, finished_timestamp, status, task_status = attrs[0], attrs[1], attrs[2], attrs[3], attrs[4], attrs[5]
|
213
|
+
id, archived_at, external_url, source_ref, finished_timestamp, status, task_status, artifacts = attrs[0], attrs[1], attrs[2], attrs[3], attrs[4], attrs[5], attrs[6], attrs[7]
|
212
214
|
|
213
|
-
values = task_update_values(id, external_url, status, task_status, finished_timestamp)
|
215
|
+
values = task_update_values(id, source_ref, external_url, status, artifacts, task_status, finished_timestamp, archived_at, source.id)
|
214
216
|
sql_update_values << "('#{source_ref}', '#{values[:state]}', '#{values[:status]}', '#{values[:context].to_json}'::json)"
|
215
217
|
end
|
216
218
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: topological_inventory-core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1.
|
4
|
+
version: 1.1.8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Adam Grare
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-10-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: acts_as_tenant
|