cnvrg 1.10.18 → 1.11.2
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/cnvrg/cli.rb +8 -10
- data/lib/cnvrg/datafiles.rb +9 -4
- data/lib/cnvrg/dataset.rb +6 -2
- data/lib/cnvrg/downloader/client.rb +9 -2
- data/lib/cnvrg/files.rb +2 -2
- data/lib/cnvrg/helpers.rb +1 -1
- 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: 70906f4870c9aa2b3457673212893d09e6b5f22e15a5dc4c3b0cc2115e74d8d9
|
|
4
|
+
data.tar.gz: ff9de0565cf2c81102c68a21154af1f97d843e65d51fc8eb69f3a490b64bb9a3
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: d839249d813d8004c9d00553f81273e890d7beb3bfab4bb65b64453f459bd6e4c366c59b35cee2773716e2c26f6f5b30223937837e088fe964e98a60b242c6e3
|
|
7
|
+
data.tar.gz: f7cac4b24a2f7fc275e28dd03b2fad4b7374dd52c648dd84f36652d6e7bd61f24e834aa89b1f826ac39e7680aa7cbfc6ca1564bc3611fdfe53dfd650368d7319
|
data/lib/cnvrg/cli.rb
CHANGED
|
@@ -964,10 +964,9 @@ module Cnvrg
|
|
|
964
964
|
Cnvrg::CLI.is_response_success(response,true)
|
|
965
965
|
dataset_name = response["results"]["name"]
|
|
966
966
|
dataset_slug = response["results"]["slug"]
|
|
967
|
-
dataset_home = Dir.pwd+"/"+dataset_slug
|
|
967
|
+
dataset_home = Dir.pwd + "/" + dataset_slug
|
|
968
968
|
Dataset.stop_if_dataset_present(dataset_home, dataset_name) if soft
|
|
969
969
|
|
|
970
|
-
# dataset_home = Dir.pwd
|
|
971
970
|
if Dataset.blank_clone(owner, dataset_name, dataset_slug)
|
|
972
971
|
dataset = Dataset.new(dataset_home)
|
|
973
972
|
log_message("Cloning #{dataset_name}", Thor::Shell::Color::BLUE)
|
|
@@ -986,12 +985,13 @@ module Cnvrg
|
|
|
986
985
|
begin
|
|
987
986
|
log_message("Downloading files", Thor::Shell::Color::BLUE)
|
|
988
987
|
Parallel.map((response["results"]["query_files"]), parallel_options) do |f|
|
|
989
|
-
relative_path = f["fullpath"].gsub(/^#{dataset_home}/, "")
|
|
988
|
+
relative_path = f["fullpath"].gsub(/^#{dataset_home}/, "").gsub(/^#{slug}/, "")
|
|
990
989
|
relative_path_dir = relative_path.split("/")
|
|
991
990
|
file_name = relative_path_dir.pop()
|
|
992
991
|
relative_path_dir = relative_path_dir.join("/")
|
|
993
992
|
abs_path = dataset_home + "/" + relative_path_dir
|
|
994
993
|
abs_path = dataset_home if flatten
|
|
994
|
+
|
|
995
995
|
begin
|
|
996
996
|
FileUtils.mkdir_p(abs_path) unless File.exist? (abs_path + "/" + file_name)
|
|
997
997
|
rescue
|
|
@@ -1781,8 +1781,7 @@ module Cnvrg
|
|
|
1781
1781
|
print_table(list)
|
|
1782
1782
|
end
|
|
1783
1783
|
|
|
1784
|
-
desc 'commits', 'List all commits for a specific Project'
|
|
1785
|
-
|
|
1784
|
+
desc 'commits', 'List all commits for a specific Project', :hide => true
|
|
1786
1785
|
def list_commits()
|
|
1787
1786
|
verify_logged_in(true)
|
|
1788
1787
|
log_start(__method__, args, options)
|
|
@@ -1796,7 +1795,7 @@ module Cnvrg
|
|
|
1796
1795
|
end
|
|
1797
1796
|
|
|
1798
1797
|
|
|
1799
|
-
desc 'unlink', 'Unlink a project from current directory'
|
|
1798
|
+
desc 'unlink', 'Unlink a project from current directory', :hide => true
|
|
1800
1799
|
|
|
1801
1800
|
def unlink
|
|
1802
1801
|
verify_logged_in(false)
|
|
@@ -1906,7 +1905,7 @@ module Cnvrg
|
|
|
1906
1905
|
log_message("Remove dir in order to clone #{project_name}", Thor::Shell::Color::RED)
|
|
1907
1906
|
exit(1)
|
|
1908
1907
|
end
|
|
1909
|
-
|
|
1908
|
+
|
|
1910
1909
|
end
|
|
1911
1910
|
clone_resp = Project.clone_dir(slug, owner, project_name,git)
|
|
1912
1911
|
project_home = Dir.pwd + "/" + project_name
|
|
@@ -2893,7 +2892,7 @@ module Cnvrg
|
|
|
2893
2892
|
end
|
|
2894
2893
|
end
|
|
2895
2894
|
|
|
2896
|
-
desc 'show', 'Show specific file from a specific commit'
|
|
2895
|
+
desc 'show', 'Show specific file from a specific commit', :hide => true
|
|
2897
2896
|
method_option :path, :type => :string, :aliases => ["-p"], :desc => "File path", :default => ""
|
|
2898
2897
|
method_option :commit, :type => :string, :aliases => ["-c"], :desc => "Commit sha1", :default => nil
|
|
2899
2898
|
|
|
@@ -4806,8 +4805,7 @@ module Cnvrg
|
|
|
4806
4805
|
|
|
4807
4806
|
end
|
|
4808
4807
|
|
|
4809
|
-
desc 'list_machines', 'Lists all machines belong to your organization'
|
|
4810
|
-
|
|
4808
|
+
desc 'list_machines', 'Lists all machines belong to your organization', :hide => true
|
|
4811
4809
|
def list_machines
|
|
4812
4810
|
begin
|
|
4813
4811
|
verify_logged_in(false)
|
data/lib/cnvrg/datafiles.rb
CHANGED
|
@@ -52,7 +52,7 @@ module Cnvrg
|
|
|
52
52
|
end
|
|
53
53
|
raise SignalException.new(1, "Cant find file #{file}") unless File.exists? "#{Dir.pwd}/#{file}"
|
|
54
54
|
end
|
|
55
|
-
paths
|
|
55
|
+
paths
|
|
56
56
|
end
|
|
57
57
|
|
|
58
58
|
def get_files_and_folders(paths)
|
|
@@ -429,9 +429,10 @@ module Cnvrg
|
|
|
429
429
|
|
|
430
430
|
file_chunks = files.each_slice(chunk_size).to_a
|
|
431
431
|
# Fetch the required files from the server:
|
|
432
|
-
Parallel.map((file_chunks), in_threads:
|
|
432
|
+
Parallel.map((file_chunks), in_threads: threads) do |chunk|
|
|
433
|
+
files_chunk = chunk.map{|p| p.gsub(/^\.\//, '')}
|
|
433
434
|
Cnvrg::Logger.info("Generating chunk idx")
|
|
434
|
-
tree = @dataset.generate_chunked_idx(files_chunk, prefix: prefix, threads: threads)
|
|
435
|
+
tree = @dataset.generate_chunked_idx(files_chunk, prefix: prefix, threads: threads, cli: cli)
|
|
435
436
|
Cnvrg::Logger.info("Getting files info from server")
|
|
436
437
|
results = request_upload_files(commit_sha1, tree, override, new_branch, partial_commit)
|
|
437
438
|
next unless results
|
|
@@ -1199,7 +1200,9 @@ module Cnvrg
|
|
|
1199
1200
|
end
|
|
1200
1201
|
|
|
1201
1202
|
def end_commit(commit_sha1, force, success: true, uploaded_files: 0, commit_type: nil)
|
|
1203
|
+
counter = 0
|
|
1202
1204
|
begin
|
|
1205
|
+
counter += 1
|
|
1203
1206
|
response = Cnvrg::API.request(
|
|
1204
1207
|
"#{base_resource}/commit/end",
|
|
1205
1208
|
'POST',
|
|
@@ -1211,9 +1214,11 @@ module Cnvrg
|
|
|
1211
1214
|
commit_type: commit_type
|
|
1212
1215
|
}
|
|
1213
1216
|
)
|
|
1214
|
-
Cnvrg::CLI.is_response_success(response,
|
|
1217
|
+
is_success = Cnvrg::CLI.is_response_success(response, false)
|
|
1218
|
+
raise Exception.new("Invalid response #{response}") unless is_success
|
|
1215
1219
|
return response
|
|
1216
1220
|
rescue => e
|
|
1221
|
+
retry if counter <= 20
|
|
1217
1222
|
return false
|
|
1218
1223
|
end
|
|
1219
1224
|
end
|
data/lib/cnvrg/dataset.rb
CHANGED
|
@@ -541,7 +541,7 @@ module Cnvrg
|
|
|
541
541
|
"#{url}/#{self.owner}/datasets/#{self.slug}"
|
|
542
542
|
end
|
|
543
543
|
|
|
544
|
-
def generate_chunked_idx(list_files = [], threads: 15, prefix: '')
|
|
544
|
+
def generate_chunked_idx(list_files = [], threads: 15, prefix: '', cli: nil)
|
|
545
545
|
tree = {}
|
|
546
546
|
Parallel.map(list_files, in_threads: threads) do |file|
|
|
547
547
|
|
|
@@ -552,7 +552,11 @@ module Cnvrg
|
|
|
552
552
|
label = safe_path.gsub(self.local_path + "/", "")
|
|
553
553
|
label = "#{prefix}/#{label}" if prefix.present?
|
|
554
554
|
if not Cnvrg::Files.valid_file_name?(label)
|
|
555
|
-
|
|
555
|
+
if cli
|
|
556
|
+
cli.log_message("#{label} is not a valid file name, skipping it", Thor::Shell::Color::RED)
|
|
557
|
+
else
|
|
558
|
+
puts "#{label} is not a valid file name, , skipping it"
|
|
559
|
+
end
|
|
556
560
|
end
|
|
557
561
|
if File.directory? file
|
|
558
562
|
tree[label + "/"] = nil
|
|
@@ -14,8 +14,15 @@ module Cnvrg
|
|
|
14
14
|
end
|
|
15
15
|
|
|
16
16
|
def extract_key_iv(sts_path)
|
|
17
|
-
|
|
18
|
-
|
|
17
|
+
count = 20
|
|
18
|
+
begin
|
|
19
|
+
count += 1
|
|
20
|
+
sts = open(sts_path, {ssl_verify_mode: 0}).read rescue nil
|
|
21
|
+
rescue => e
|
|
22
|
+
Cnvrg::Logger.log_error(e)
|
|
23
|
+
retry if count <= 20
|
|
24
|
+
raise StandardError.new("Cant access storage: #{e.message}")
|
|
25
|
+
end
|
|
19
26
|
sts.split("\n")
|
|
20
27
|
end
|
|
21
28
|
|
data/lib/cnvrg/files.rb
CHANGED
|
@@ -115,7 +115,7 @@ module Cnvrg
|
|
|
115
115
|
#upload files
|
|
116
116
|
blob_id_chunk = Parallel.map(files.keys, in_threads: ParallelThreads) do |file|
|
|
117
117
|
begin
|
|
118
|
-
|
|
118
|
+
upload_single_file(files[file].merge(parsed_chunk_of_files[file]))
|
|
119
119
|
rescue => e
|
|
120
120
|
Cnvrg::CLI.log_message("Failed to upload #{file}: #{e.message}", 'red') unless suppress_exceptions
|
|
121
121
|
Cnvrg::Logger.log_error(e)
|
|
@@ -188,7 +188,7 @@ module Cnvrg
|
|
|
188
188
|
def upload_single_file(file)
|
|
189
189
|
path = file['path']
|
|
190
190
|
absolute_path = file[:absolute_path]
|
|
191
|
-
@client.
|
|
191
|
+
@client.safe_upload(path, absolute_path)
|
|
192
192
|
end
|
|
193
193
|
|
|
194
194
|
def parse_file(file)
|
data/lib/cnvrg/helpers.rb
CHANGED
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: 1.
|
|
4
|
+
version: 1.11.2
|
|
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: 2020-
|
|
13
|
+
date: 2020-11-06 00:00:00.000000000 Z
|
|
14
14
|
dependencies:
|
|
15
15
|
- !ruby/object:Gem::Dependency
|
|
16
16
|
name: bundler
|
|
@@ -438,7 +438,7 @@ files:
|
|
|
438
438
|
homepage: https://cnvrg.io
|
|
439
439
|
licenses: []
|
|
440
440
|
metadata: {}
|
|
441
|
-
post_install_message:
|
|
441
|
+
post_install_message:
|
|
442
442
|
rdoc_options: []
|
|
443
443
|
require_paths:
|
|
444
444
|
- lib
|
|
@@ -453,8 +453,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
453
453
|
- !ruby/object:Gem::Version
|
|
454
454
|
version: '0'
|
|
455
455
|
requirements: []
|
|
456
|
-
rubygems_version: 3.
|
|
457
|
-
signing_key:
|
|
456
|
+
rubygems_version: 3.0.4
|
|
457
|
+
signing_key:
|
|
458
458
|
specification_version: 4
|
|
459
459
|
summary: A CLI tool for interacting with cnvrg.io.
|
|
460
460
|
test_files: []
|