cnvrg 2.0.1 → 2.0.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/Readme.md +17 -1
- data/lib/cnvrg/cli.rb +3 -3
- data/lib/cnvrg/files.rb +5 -1
- data/lib/cnvrg/helpers/executer.rb +2 -2
- data/lib/cnvrg/project.rb +22 -7
- data/lib/cnvrg/version.rb +1 -1
- metadata +6 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b238ce877c0fa8da80c63c6d3d165ce974c250ea9c3f3d21ff092098356aa5a5
|
4
|
+
data.tar.gz: 7c7b4aa637b3bcaf5f18a7eb973d6995f0f1e25147a16a2ccfb1ce3d6dea91e3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: fb1b724199e92fddfa2be4c04b9eb1a8a94e1df65759482fb6c3173f7c3c7632d236c22836749e5f1d6578115555b838285b58d1a95a42ce2df67d3a354da043
|
7
|
+
data.tar.gz: c840826e01dcd8061fdb1bf065f416d97ca3fe35575649171814741c32332b458c7bac57fa248e9afd45f337b60b18003077cc72d5927527490689572608ad6b
|
data/Readme.md
CHANGED
@@ -23,4 +23,20 @@
|
|
23
23
|
2021-05-05
|
24
24
|
* DEV-8868 - Bug: SDK - e.sync() in git project only creates empty "output" folder in commit
|
25
25
|
## Version v2.0.1
|
26
|
-
2021-06-13
|
26
|
+
2021-06-13
|
27
|
+
## Version v2.0.2
|
28
|
+
2021-06-16
|
29
|
+
* DEV-9694 - Bug: Download artifacts fails on authorization error
|
30
|
+
## Version v2.0.3
|
31
|
+
2021-06-29
|
32
|
+
* DEV-9919 - Bug: clone artifacts fails on "Not Authorize, Are you logged in?"
|
33
|
+
## Version v2.0.4
|
34
|
+
2021-07-08
|
35
|
+
* DEV-9935 - Bug: CLI - cnvrg sync creates new commit but no blob versions
|
36
|
+
## Version v2.0.5
|
37
|
+
2021-07-11
|
38
|
+
* DEV-10171 - Bug: experiment randomly fails with error- "Couldn't clone artifacts"
|
39
|
+
* DEV-10189 - Bug: CLI Sync -file/folder with broken symlink will cause sync to fail
|
40
|
+
## Version v2.0.6
|
41
|
+
2021-07-18
|
42
|
+
* DEV-10209 - Bug: some experiments in grid failed on cnvrg-cli commands (docker container id was missing)
|
data/lib/cnvrg/cli.rb
CHANGED
@@ -3006,12 +3006,12 @@ module Cnvrg
|
|
3006
3006
|
method_option :job_slug, :type => :string, :aliases => ["-j", "--job"], :default => nil
|
3007
3007
|
method_option :job_type, :type => :string, :aliases => ["-jt", "--job_type"], :default => nil
|
3008
3008
|
method_option :files, :type => :string, :aliases => ["--files"], :default => nil
|
3009
|
-
method_option :output_dir, :type => :string, :aliases => ["--output_dir"], :default =>
|
3009
|
+
method_option :output_dir, :type => :string, :aliases => ["--output_dir"], :default => 'output'
|
3010
3010
|
method_option :git_diff, :type => :boolean, :aliases => ["--git_diff"], :default => false
|
3011
3011
|
method_option :suppress_exceptions, :type => :boolean, :aliases => ["--suppress-exceptions"], :default => true
|
3012
3012
|
method_option :debug_mode, :type => :boolean, :aliases => ["--debug-mode"], :default => false
|
3013
3013
|
method_option :chunk_size, :type => :numeric, :aliases => ["--chunk"], :default => 1000
|
3014
|
-
method_option :local, :type => :boolean, :aliases => ["--local"], :default =>
|
3014
|
+
method_option :local, :type => :boolean, :aliases => ["--local"], :default => true
|
3015
3015
|
|
3016
3016
|
def sync(direct = true)
|
3017
3017
|
verify_logged_in(true) if direct
|
@@ -5007,7 +5007,7 @@ module Cnvrg
|
|
5007
5007
|
end
|
5008
5008
|
end
|
5009
5009
|
|
5010
|
-
desc 'experiments', 'List project experiments'
|
5010
|
+
desc 'experiments', 'List project experiments'
|
5011
5011
|
method_option :id, :type => :string, :aliases => ["--id"], :desc => "Get info for specific experiments", :default => ""
|
5012
5012
|
method_option :tag, :type => :string, :aliases => ["-t"], :desc => "Get info for specific experiment tag", :default => ""
|
5013
5013
|
|
data/lib/cnvrg/files.rb
CHANGED
@@ -730,7 +730,11 @@ module Cnvrg
|
|
730
730
|
end
|
731
731
|
res = Cnvrg::API.request(@base_resource + "download_files", 'POST', {files: files, commit: commit})
|
732
732
|
unless Cnvrg::CLI.is_response_success(res, false)
|
733
|
-
|
733
|
+
begin
|
734
|
+
puts(res)
|
735
|
+
rescue
|
736
|
+
end
|
737
|
+
raise StandardError.new("Cant download files from the server.")
|
734
738
|
end
|
735
739
|
self.download_multiple_files_s3(res['result'], @project_home, postfix: postfix, progress: progress, threads: threads)
|
736
740
|
end
|
@@ -3,7 +3,7 @@ require 'cnvrg/helpers/agent'
|
|
3
3
|
class Cnvrg::Helpers::Executer
|
4
4
|
attr_reader :machine_activity, :agent_id, :main_id
|
5
5
|
MAIN_CONTAINER_PORT = ENV['MAIN_CONTAINER_PORT'].try(:to_i) || 4000
|
6
|
-
|
6
|
+
HAS_DOCKER = ENV['HAS_DOCKER'] == "true"
|
7
7
|
|
8
8
|
### this class represent a machine_activity. it will poll the commands, communicate with the
|
9
9
|
# server (poll commands) and let the server know the status of this executer.
|
@@ -84,7 +84,7 @@ class Cnvrg::Helpers::Executer
|
|
84
84
|
agent_id = nil
|
85
85
|
main_id = nil
|
86
86
|
timeout = 2
|
87
|
-
timeout = nil if !@is_new_main
|
87
|
+
timeout = nil if (!@is_new_main || HAS_DOCKER)
|
88
88
|
Timeout.timeout(timeout) do
|
89
89
|
while agent_id.blank? or main_id.blank?
|
90
90
|
grep_by = @job_id
|
data/lib/cnvrg/project.rb
CHANGED
@@ -328,15 +328,21 @@ module Cnvrg
|
|
328
328
|
end
|
329
329
|
|
330
330
|
def get_storage_client
|
331
|
-
|
332
|
-
|
333
|
-
|
331
|
+
client_params = nil
|
332
|
+
i = 0
|
333
|
+
begin
|
334
|
+
response = Cnvrg::API.request("users/#{@owner}/projects/#{@slug}/client", 'GET')
|
335
|
+
unless Cnvrg::CLI.is_response_success(response, false)
|
336
|
+
raise StandardError.new("Can't find project credentials")
|
337
|
+
end
|
334
338
|
client_params = response['client']
|
335
|
-
|
336
|
-
|
339
|
+
rescue StandardError
|
340
|
+
i += 1
|
341
|
+
sleep(5 * i)
|
342
|
+
retry if i < 10
|
337
343
|
client_params = get_storage_client_fallback
|
338
344
|
end
|
339
|
-
|
345
|
+
raise StandardError.new("Can't find project credentials") unless client_params
|
340
346
|
Cnvrg::Downloader::Client.factory(client_params)
|
341
347
|
end
|
342
348
|
|
@@ -381,10 +387,12 @@ module Cnvrg
|
|
381
387
|
def generate_output_dir(output_dir, local: false)
|
382
388
|
Cnvrg::Logger.log_info("Generating output dir for #{output_dir}")
|
383
389
|
upload_list = []
|
390
|
+
list = []
|
384
391
|
list = Dir.glob("/cnvrg/#{output_dir}/**/*", File::FNM_DOTMATCH)
|
385
392
|
if local
|
386
393
|
list += Dir.glob("#{output_dir}/**/*", File::FNM_DOTMATCH)
|
387
394
|
end
|
395
|
+
list.uniq!
|
388
396
|
Parallel.map(list, in_threads: IDXParallelThreads) do |e|
|
389
397
|
next if e.end_with? "/."
|
390
398
|
if File.directory? e
|
@@ -449,6 +457,10 @@ module Cnvrg
|
|
449
457
|
if list_ignore_new.include? label
|
450
458
|
next
|
451
459
|
end
|
460
|
+
if File.symlink?(e)
|
461
|
+
Cnvrg::Logger.log_info("Skipping symlink #{e}")
|
462
|
+
next
|
463
|
+
end
|
452
464
|
if File.directory? e
|
453
465
|
dir_name = (label.ends_with? "/") ? label : (label + "/")
|
454
466
|
tree_idx[dir_name] = nil
|
@@ -701,8 +713,11 @@ module Cnvrg
|
|
701
713
|
res = JSON.parse(resp['result']) rescue nil
|
702
714
|
return if res.blank?
|
703
715
|
config = self.get_config
|
704
|
-
config[:is_git] = res['git']
|
705
716
|
config[:project_name] = res['title']
|
717
|
+
config[:project_slug] = @slug
|
718
|
+
config[:owner] = @owner
|
719
|
+
config[:git] = res['git'] || false
|
720
|
+
config[:is_git] = res['git'] || false
|
706
721
|
self.set_config(config)
|
707
722
|
end
|
708
723
|
|
data/lib/cnvrg/version.rb
CHANGED
metadata
CHANGED
@@ -1,16 +1,16 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cnvrg
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.
|
4
|
+
version: 2.0.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Yochay Ettun
|
8
8
|
- Leah Kolben
|
9
9
|
- Omer Shacham
|
10
|
-
autorequire:
|
10
|
+
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2021-
|
13
|
+
date: 2021-07-20 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: bundler
|
@@ -473,7 +473,7 @@ files:
|
|
473
473
|
homepage: https://cnvrg.io
|
474
474
|
licenses: []
|
475
475
|
metadata: {}
|
476
|
-
post_install_message:
|
476
|
+
post_install_message:
|
477
477
|
rdoc_options: []
|
478
478
|
require_paths:
|
479
479
|
- lib
|
@@ -488,8 +488,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
488
488
|
- !ruby/object:Gem::Version
|
489
489
|
version: '0'
|
490
490
|
requirements: []
|
491
|
-
rubygems_version: 3.
|
492
|
-
signing_key:
|
491
|
+
rubygems_version: 3.2.22
|
492
|
+
signing_key:
|
493
493
|
specification_version: 4
|
494
494
|
summary: A CLI tool for interacting with cnvrg.io.
|
495
495
|
test_files: []
|