cantemo-portal-agent 1.2.5 → 1.2.6
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/cantemo/portal/agent/cli/commands/watch_folders.rb +1 -1
- data/lib/cantemo/portal/agent/version.rb +1 -1
- data/lib/cantemo/portal/api/client.rb +7 -0
- data/lib/envoi/mam/cantemo/agent.rb +1 -0
- data/lib/envoi/mam/cantemo/agent/watch_folder_manager.rb +5 -3
- data/lib/envoi/watch_folder_utility/watch_folder.rb +2 -3
- data/lib/envoi/watch_folder_utility/watch_folder/handler/listen.rb +16 -8
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6f0d27e760275d391be6c1ddcf25ef719b0dfc3c
|
4
|
+
data.tar.gz: 48467f20279721c70111f4cb9f5df80434449e64
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2f5839f0f15c28da04609aa8e8b4c699b252a0fc16915cc68c935a2fa801b01fd1ff99089ff6bf1320e6236747a159d380c55df35fd84d8ac40f2d1df29b1592
|
7
|
+
data.tar.gz: a27477de9b6679772c3b45bec647a45588d4567765b628180bdf4897c4534df99da9ef4ca9a089885fd101e7b1b7aac03c5e48508ac88d9c3f1fdbbbef713439
|
@@ -17,6 +17,10 @@ module Cantemo
|
|
17
17
|
api_base_path = args[:api_base_path]
|
18
18
|
api_default_query_data = args[:default_query_data]
|
19
19
|
|
20
|
+
api_log_level = args[:log_level]
|
21
|
+
api_log_to = args[:log_to]
|
22
|
+
api_logger = args[:logger]
|
23
|
+
|
20
24
|
api_url = args[:url] || args[:uri]
|
21
25
|
if api_url
|
22
26
|
api_uri = URI(api_url)
|
@@ -50,6 +54,9 @@ module Cantemo
|
|
50
54
|
client_args[:default_query_data] = api_default_query_data if api_default_query_data
|
51
55
|
client_args[:api_endpoint_prefix] = api_endpoint_prefix
|
52
56
|
client_args[:api_noauth_endpoint_prefix] = api_noauth_endpoint_prefix
|
57
|
+
client_args[:log_level] = api_log_level if api_log_level
|
58
|
+
client_args[:log_to] = api_log_to if api_log_to
|
59
|
+
client_args[:logger] = api_logger if api_logger
|
53
60
|
|
54
61
|
if api_auth_token
|
55
62
|
# Cantemo Portal supports an auth token for authentication, replace basic auth with auth-token
|
@@ -44,6 +44,7 @@ module Envoi
|
|
44
44
|
api_config = agent_config
|
45
45
|
@api_client = args[:api_client] || begin
|
46
46
|
client_args = Hash[api_config.map { |k,v| [ k.respond_to?(:to_sym) ? k.to_sym.downcase : k, v ]}]
|
47
|
+
client_args[:logger] = logger
|
47
48
|
_client = ::Cantemo::Portal::API::Client.new(client_args)
|
48
49
|
|
49
50
|
begin
|
@@ -43,6 +43,7 @@ module Envoi::Mam::Cantemo
|
|
43
43
|
|
44
44
|
@config = Envoi::Mam::Cantemo::Agent.load_config_from_file(args)
|
45
45
|
initialize_logger_from_config
|
46
|
+
args[:logger] = @logger
|
46
47
|
|
47
48
|
cantemo_config = config[:cantemo] || config['cantemo']
|
48
49
|
|
@@ -75,10 +76,9 @@ module Envoi::Mam::Cantemo
|
|
75
76
|
|
76
77
|
def initialize_logger(args = {})
|
77
78
|
@logger = args[:logger] ||= Logger.new(args[:log_to] || STDOUT)
|
78
|
-
log_level = args[:log_level]
|
79
|
+
log_level = args[:log_level] ||= Logger::INFO
|
79
80
|
if log_level
|
80
81
|
@logger.level = log_level
|
81
|
-
args[:logger] = @logger
|
82
82
|
end
|
83
83
|
@logger
|
84
84
|
end
|
@@ -89,7 +89,7 @@ module Envoi::Mam::Cantemo
|
|
89
89
|
logger_args[:log_to] = log_to if log_to
|
90
90
|
log_level = _config['log_level']
|
91
91
|
if log_level
|
92
|
-
_log_level = ['fatal', 'error', 'warn', 'info', 'debug'].find
|
92
|
+
_log_level = ['fatal', 'error', 'warn', 'info', 'debug'].find { |v| v = log_level.downcase }
|
93
93
|
logger_args[:log_level] = _log_level.upcase if _log_level
|
94
94
|
end
|
95
95
|
initialize_logger(logger_args) unless logger_args.empty?
|
@@ -240,6 +240,7 @@ module Envoi::Mam::Cantemo
|
|
240
240
|
end
|
241
241
|
|
242
242
|
stable_files.each do |file|
|
243
|
+
file.watch_folder ||= wf
|
243
244
|
next if file.respond_to?(:ignore?) ? file.ignore? : ignored_file_paths.include?(file.path)
|
244
245
|
next if file.processing || file.processed
|
245
246
|
|
@@ -268,6 +269,7 @@ module Envoi::Mam::Cantemo
|
|
268
269
|
begin
|
269
270
|
process_file(file)
|
270
271
|
rescue => e
|
272
|
+
logger.error { "Exception '#{e.message}' in thread for `` `#{file.path}`. " }
|
271
273
|
logger.error { "Exception '#{e.message}' in thread for `#{wf.name || wf.paths}` `#{file.path}`. " }
|
272
274
|
raise e
|
273
275
|
ensure
|
@@ -49,7 +49,7 @@ module Envoi
|
|
49
49
|
|
50
50
|
def initialize_logger(args = {})
|
51
51
|
@logger = args[:logger] ||= Logger.new(args[:log_to] || STDOUT)
|
52
|
-
log_level = args[:log_level]
|
52
|
+
log_level = args[:log_level] ||= Logger::INFO
|
53
53
|
if log_level
|
54
54
|
@logger.level = log_level
|
55
55
|
args[:logger] = @logger
|
@@ -248,7 +248,7 @@ module Envoi
|
|
248
248
|
_add_item_to_collection = true
|
249
249
|
watch_folder_def.delete('collection_name')
|
250
250
|
else
|
251
|
-
file_path_collection_name_position =
|
251
|
+
file_path_collection_name_position = watch_folder_def['file_path_collection_name_position']
|
252
252
|
if file_path_collection_name_position
|
253
253
|
import_args[:file_path_collection_name_position] = file_path_collection_name_position
|
254
254
|
_add_item_to_collection = true
|
@@ -294,7 +294,6 @@ module Envoi
|
|
294
294
|
watch_folder_def['upload_args'] = upload_args
|
295
295
|
logger.debug { "Parameter 'upload/import arguments' initialized." }
|
296
296
|
|
297
|
-
|
298
297
|
maximum_active_processors = watch_folder_def['maximum_active_processors']
|
299
298
|
if maximum_active_processors.nil?
|
300
299
|
maximum_active_processors = @default_maximum_active_processors
|
@@ -24,11 +24,11 @@ module Envoi
|
|
24
24
|
class DiscoveredPath < OpenStruct
|
25
25
|
|
26
26
|
def min_stable_time
|
27
|
-
|
27
|
+
handler.min_stable_time
|
28
28
|
end
|
29
29
|
|
30
30
|
def min_stable_poll_count
|
31
|
-
|
31
|
+
handler.min_stable_poll_count
|
32
32
|
end
|
33
33
|
|
34
34
|
def stable?
|
@@ -53,24 +53,32 @@ module Envoi
|
|
53
53
|
|
54
54
|
def summary
|
55
55
|
_table = @table.dup
|
56
|
-
_table.delete(:
|
56
|
+
_table.delete(:handler)
|
57
57
|
_table
|
58
58
|
end
|
59
59
|
|
60
60
|
def watch_folder
|
61
|
-
self[:
|
61
|
+
self[:watch_folder]
|
62
62
|
end
|
63
63
|
|
64
64
|
def watch_folder=(wf)
|
65
|
-
self[:
|
65
|
+
self[:watch_folder] = wf
|
66
|
+
end
|
67
|
+
|
68
|
+
def handler
|
69
|
+
self[:handler]
|
70
|
+
end
|
71
|
+
|
72
|
+
def handler=(_handler)
|
73
|
+
self[:handler] = _handler
|
66
74
|
end
|
67
75
|
|
68
76
|
def ignore
|
69
|
-
|
77
|
+
handler.add_to_ignore(self)
|
70
78
|
end
|
71
79
|
|
72
80
|
def ignore?
|
73
|
-
|
81
|
+
handler.ignored_files_map[self[:path]] == self
|
74
82
|
end
|
75
83
|
|
76
84
|
end
|
@@ -137,7 +145,7 @@ module Envoi
|
|
137
145
|
return path.each { |path| process_add_or_modified_path(path, event_type) } if path.is_a?(Array)
|
138
146
|
logger.debug { "PATH #{event_type} '#{path}'" }
|
139
147
|
# lock.synchronize { known_path_map[path] = OpenStruct.new({ type: event_type, path: path, stable_poll_count: 0, timestamp: Time.now}) }
|
140
|
-
file = known_path_map[path] ||= DiscoveredPath.new({ path: path, processed: false,
|
148
|
+
file = known_path_map[path] ||= DiscoveredPath.new({ path: path, processed: false, handler: self })
|
141
149
|
file.event_type = event_type
|
142
150
|
file.event_timestamp = Time.now
|
143
151
|
file.stable_poll_count = 0
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cantemo-portal-agent
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.2.
|
4
|
+
version: 1.2.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- John Whitson
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-01-
|
11
|
+
date: 2019-01-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: asperalm
|
@@ -72,14 +72,14 @@ dependencies:
|
|
72
72
|
requirements:
|
73
73
|
- - "~>"
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version:
|
75
|
+
version: 1.6.2
|
76
76
|
type: :runtime
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
80
|
- - "~>"
|
81
81
|
- !ruby/object:Gem::Version
|
82
|
-
version:
|
82
|
+
version: 1.6.2
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
84
|
name: bundler
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|