datahen 1.5.3 → 1.6.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/datahen/cli/scraper.rb +3 -0
- data/lib/datahen/cli/scraper_job.rb +1 -0
- data/lib/datahen/cli/scraper_resource.rb +35 -0
- data/lib/datahen/cli.rb +1 -0
- data/lib/datahen/client/base.rb +4 -0
- data/lib/datahen/client/job.rb +1 -0
- data/lib/datahen/client/job_resource.rb +11 -0
- data/lib/datahen/client/scraper_job.rb +2 -0
- data/lib/datahen/client/scraper_resource.rb +11 -0
- data/lib/datahen/client.rb +2 -0
- data/lib/datahen/version.rb +1 -1
- metadata +9 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0aeab36656b35d48d158c46e90cf504007727d60000352503468c743b8f519f3
|
4
|
+
data.tar.gz: 62dc78ad8d8388f62db06217507e4ff8f22d004501f264d899dfb14afd9d5df1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f83d2cf14b3b1f00ff2f7b8f319c52bb408301e318a390b419f1b87e7b4a79a0ba7b40468079c8b8b22562d24a8eef6c6bde60d40a11930dbc3af44c16c3acd7
|
7
|
+
data.tar.gz: 8a05fc8d0419c13f0849fdeb53f1c91455d359539431623138e31895c192994a786fc271df7dc2ae223f1d7a6cdaa46eeb81939e093cb6d850aded106809c66c
|
data/lib/datahen/cli/scraper.rb
CHANGED
@@ -112,6 +112,7 @@ module Datahen
|
|
112
112
|
option :soft_refetch_limit, type: :numeric, desc: 'Set the soft refetch limit value.'
|
113
113
|
option :parsing_try_limit, type: :numeric, desc: 'Set the parsing try limit value.'
|
114
114
|
option :prevent_kb_autoscaler, type: :boolean, desc: 'Set true to prevent the autoscaler from restarting the job. Default: false'
|
115
|
+
option :deletion_protected, type: :boolean, desc: 'Set true to prevent the job to be deleted from max job count or job older than X days rules. Default: false'
|
115
116
|
def update(scraper_name)
|
116
117
|
if options[:job]
|
117
118
|
client = Client::Job.new(options)
|
@@ -0,0 +1,35 @@
|
|
1
|
+
module Datahen
|
2
|
+
class CLI < Thor
|
3
|
+
class ScraperResource < Thor
|
4
|
+
package_name "scraper resource"
|
5
|
+
def self.banner(command, namespace = nil, subcommand = false)
|
6
|
+
"#{basename} #{@package_name} #{command.usage}"
|
7
|
+
end
|
8
|
+
|
9
|
+
desc "list", "List resources on a scraper's current job"
|
10
|
+
long_desc <<-LONGDESC
|
11
|
+
List all resources in a scraper's current job or given job ID.\x5
|
12
|
+
LONGDESC
|
13
|
+
option :scraper_name, :aliases => :s, type: :string, desc: 'Filter by a specific scraper_name'
|
14
|
+
option :job, :aliases => :j, type: :numeric, desc: 'Set a specific job ID'
|
15
|
+
option :pod, type: :string, desc: 'Returns only tasks with specific pod.'
|
16
|
+
option :container, type: :string, desc: 'Returns only tasks with specific container.'
|
17
|
+
option :executor, type: :string, desc: 'Returns only tasks with specific executor.'
|
18
|
+
def list()
|
19
|
+
if options[:job]
|
20
|
+
client = Client::JobResource.new(options)
|
21
|
+
puts "#{client.all(options[:job])}"
|
22
|
+
else
|
23
|
+
if options[:scraper_name]
|
24
|
+
client = Client::ScraperResource.new(options)
|
25
|
+
puts "#{client.all(options[:scraper_name])}"
|
26
|
+
else
|
27
|
+
puts 'Must specify either a job ID or a scraper name'
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
end
|
data/lib/datahen/cli.rb
CHANGED
@@ -7,6 +7,7 @@ require 'datahen/cli/scraper_job_var'
|
|
7
7
|
require 'datahen/cli/scraper_job'
|
8
8
|
require 'datahen/cli/scraper_finisher'
|
9
9
|
require 'datahen/cli/global_page'
|
10
|
+
require 'datahen/cli/scraper_resource'
|
10
11
|
require 'datahen/cli/scraper_page'
|
11
12
|
require 'datahen/cli/job_output'
|
12
13
|
require 'datahen/cli/job'
|
data/lib/datahen/client/base.rb
CHANGED
@@ -128,6 +128,10 @@ module Datahen
|
|
128
128
|
query[:force] = opts[:force] if opts[:force]
|
129
129
|
query[:action] = opts[:action] if opts[:action]
|
130
130
|
query[:"include-system"] = opts[:"include-system"] if opts[:"include-system"]
|
131
|
+
query[:"pod"] = opts[:"pod"] if opts[:"pod"]
|
132
|
+
query[:"container"] = opts[:"container"] if opts[:"container"]
|
133
|
+
query[:"executor"] = opts[:"executor"] if opts[:"executor"]
|
134
|
+
|
131
135
|
|
132
136
|
if opts[:query]
|
133
137
|
if opts[:query].is_a?(Hash)
|
data/lib/datahen/client/job.rb
CHANGED
@@ -29,6 +29,7 @@ module Datahen
|
|
29
29
|
body[:soft_refetch_limit] = opts[:soft_refetch_limit] if opts[:soft_refetch_limit]
|
30
30
|
body[:parsing_try_limit] = opts[:parsing_try_limit] if opts[:parsing_try_limit]
|
31
31
|
body[:prevent_kb_autoscaler] = opts[:prevent_kb_autoscaler] if opts.has_key?("prevent_kb_autoscaler") || opts.has_key?(:prevent_kb_autoscaler)
|
32
|
+
body[:deletion_protected] = opts[:deletion_protected] if opts.has_key?("deletion_protected") || opts.has_key?(:deletion_protected)
|
32
33
|
params = @options.merge({body: body.to_json})
|
33
34
|
|
34
35
|
self.class.put("/jobs/#{job_id}", params)
|
@@ -19,6 +19,7 @@ module Datahen
|
|
19
19
|
body[:soft_refetch_limit] = opts[:soft_refetch_limit] if opts[:soft_refetch_limit]
|
20
20
|
body[:parsing_try_limit] = opts[:parsing_try_limit] if opts[:parsing_try_limit]
|
21
21
|
body[:prevent_kb_autoscaler] = opts[:prevent_kb_autoscaler] if opts.has_key?("prevent_kb_autoscaler") || opts.has_key?(:prevent_kb_autoscaler)
|
22
|
+
body[:deletion_protected] = opts[:deletion_protected] if opts.has_key?("deletion_protected") || opts.has_key?(:deletion_protected)
|
22
23
|
if opts[:vars]
|
23
24
|
if opts[:vars].is_a?(Array)
|
24
25
|
body[:vars] = opts[:vars]
|
@@ -53,6 +54,7 @@ module Datahen
|
|
53
54
|
body[:soft_refetch_limit] = opts[:soft_refetch_limit] if opts[:soft_refetch_limit]
|
54
55
|
body[:parsing_try_limit] = opts[:parsing_try_limit] if opts[:parsing_try_limit]
|
55
56
|
body[:prevent_kb_autoscaler] = opts[:prevent_kb_autoscaler] if opts.has_key?("prevent_kb_autoscaler") || opts.has_key?(:prevent_kb_autoscaler)
|
57
|
+
body[:deletion_protected] = opts[:deletion_protected] if opts.has_key?("deletion_protected") || opts.has_key?(:deletion_protected)
|
56
58
|
params = @options.merge({body: body.to_json})
|
57
59
|
|
58
60
|
self.class.put("/scrapers/#{scraper_name}/current_job", params)
|
data/lib/datahen/client.rb
CHANGED
@@ -26,6 +26,8 @@ require "datahen/client/scraper_job_var"
|
|
26
26
|
require "datahen/client/job_finisher"
|
27
27
|
require "datahen/client/job_task"
|
28
28
|
require "datahen/client/scraper_task"
|
29
|
+
require "datahen/client/job_resource"
|
30
|
+
require "datahen/client/scraper_resource"
|
29
31
|
|
30
32
|
module Datahen
|
31
33
|
module Client
|
data/lib/datahen/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: datahen
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.6.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Parama Danoesubroto
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-
|
11
|
+
date: 2024-03-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: thor
|
@@ -227,6 +227,7 @@ files:
|
|
227
227
|
- lib/datahen/cli/scraper_job.rb
|
228
228
|
- lib/datahen/cli/scraper_job_var.rb
|
229
229
|
- lib/datahen/cli/scraper_page.rb
|
230
|
+
- lib/datahen/cli/scraper_resource.rb
|
230
231
|
- lib/datahen/cli/scraper_task.rb
|
231
232
|
- lib/datahen/cli/scraper_var.rb
|
232
233
|
- lib/datahen/cli/seeder.rb
|
@@ -245,6 +246,7 @@ files:
|
|
245
246
|
- lib/datahen/client/job_log.rb
|
246
247
|
- lib/datahen/client/job_output.rb
|
247
248
|
- lib/datahen/client/job_page.rb
|
249
|
+
- lib/datahen/client/job_resource.rb
|
248
250
|
- lib/datahen/client/job_stat.rb
|
249
251
|
- lib/datahen/client/job_task.rb
|
250
252
|
- lib/datahen/client/job_var.rb
|
@@ -257,6 +259,7 @@ files:
|
|
257
259
|
- lib/datahen/client/scraper_job_output.rb
|
258
260
|
- lib/datahen/client/scraper_job_page.rb
|
259
261
|
- lib/datahen/client/scraper_job_var.rb
|
262
|
+
- lib/datahen/client/scraper_resource.rb
|
260
263
|
- lib/datahen/client/scraper_task.rb
|
261
264
|
- lib/datahen/client/scraper_var.rb
|
262
265
|
- lib/datahen/error.rb
|
@@ -281,7 +284,7 @@ metadata:
|
|
281
284
|
allowed_push_host: https://rubygems.org
|
282
285
|
homepage_uri: https://datahen.com
|
283
286
|
source_code_uri: https://github.com/DataHenOfficial/datahen-ruby
|
284
|
-
post_install_message:
|
287
|
+
post_install_message:
|
285
288
|
rdoc_options: []
|
286
289
|
require_paths:
|
287
290
|
- lib
|
@@ -296,8 +299,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
296
299
|
- !ruby/object:Gem::Version
|
297
300
|
version: '0'
|
298
301
|
requirements: []
|
299
|
-
rubygems_version: 3.
|
300
|
-
signing_key:
|
302
|
+
rubygems_version: 3.5.6
|
303
|
+
signing_key:
|
301
304
|
specification_version: 4
|
302
305
|
summary: DataHen toolbelt for developers
|
303
306
|
test_files: []
|