cnvrg 0.2.6 → 0.2.7

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: ad8ca6c9d3a841de5937e2491c0c457456e1c4d3
4
- data.tar.gz: 5f1764f5dad22d28863300db640971789cd4b7ce
3
+ metadata.gz: b9b8198ef7c07b5e104013d85ea8cafab151bd82
4
+ data.tar.gz: 285b8c2c3213db29c8e01d8e0d0937e465ee5427
5
5
  SHA512:
6
- metadata.gz: bafe792da2bf576945486186cdd0d15b3773b41262cf34daf5d012d38f0d7c508f759466aad9ede194943c6cfca1db7902f20cd1dd870562d8c4c87d64c1062f
7
- data.tar.gz: 13f386cfcfcd8fd006ce846880a7ef5c0bb985034d3e8e1208f6dc213c0b12fe1ddc77f46c2f57620da307dc10157f3c9c45793dd78d989a9d1a498cdccbebe4
6
+ metadata.gz: 46dc6ef133915f5db232df9452a05ad0ef7be0a210f9e3d88e8a1b484aed0ddcc30657a1ff172148b1648c11ca7d150fb44387ab8970cb087c35d26cfb2c60d7
7
+ data.tar.gz: bf4085d68ce2e0b4de724b6208ea9496a11407e14b720bfcec50e909f0a87d8d6575af344d5289f29912770e39b8d92677197bc5c37c1e79d518829c29bd9085
@@ -2269,6 +2269,33 @@ module Cnvrg
2269
2269
  end
2270
2270
  end
2271
2271
 
2272
+ desc 'show', 'Show specific file from a specific commit'
2273
+ method_option :path, :type => :string, :aliases => ["-p"], :desc => "File path", :default => ""
2274
+ method_option :commit, :type => :string, :aliases => ["-c"], :desc => "Commit sha1", :default => nil
2275
+ def show
2276
+ path = options['path']
2277
+ commit = options['commit']
2278
+
2279
+ verify_logged_in(true)
2280
+ log_start(__method__, args, options)
2281
+ project_home = get_project_home
2282
+ @project = Project.new(project_home)
2283
+
2284
+
2285
+ project_dir = is_cnvrg_dir(Dir.pwd)
2286
+ @files = Cnvrg::Files.new(@project.owner, @project.slug)
2287
+ begin
2288
+
2289
+ file = @files.show_file_s3(path, commit)
2290
+
2291
+ if file
2292
+ puts file
2293
+ else
2294
+ say "Couldn't find file"
2295
+ end
2296
+ end
2297
+ end
2298
+
2272
2299
 
2273
2300
  desc 'data_jump', 'jump to specific commit', :hide => true
2274
2301
 
@@ -460,6 +460,60 @@ module Cnvrg
460
460
  return true
461
461
  end
462
462
 
463
+ def show_file_s3(relative_path, commit_sha1=nil)
464
+ begin
465
+ res = Cnvrg::API.request(@base_resource + "download_file", 'POST', { absolute_path: '', relative_path: relative_path, commit_sha1: commit_sha1, new_version:true })
466
+
467
+ Cnvrg::CLI.is_response_success(res, false)
468
+ if res["result"]
469
+ download_resp = res
470
+ filename = download_resp["result"]["filename"]
471
+
472
+ #absolute_path += ".conflict" if conflict
473
+ sts_path = download_resp["result"]["path_sts"]
474
+ uri = URI.parse(sts_path)
475
+ http_object = Net::HTTP.new(uri.host, uri.port)
476
+ http_object.use_ssl = true if uri.scheme == 'https'
477
+ request = Net::HTTP::Get.new(sts_path)
478
+
479
+ body = ""
480
+ http_object.start do |http|
481
+ response = http.request request
482
+ body = response.read_body
483
+ end
484
+ split = body.split("\n")
485
+ key = split[0]
486
+ iv = split[1]
487
+
488
+ access = Cnvrg::Helpers.decrypt(key, iv, download_resp["result"]["sts_a"])
489
+
490
+ secret = Cnvrg::Helpers.decrypt(key,iv, download_resp["result"]["sts_s"])
491
+
492
+ session = Cnvrg::Helpers.decrypt(key,iv, download_resp["result"]["sts_st"])
493
+ region = Cnvrg::Helpers.decrypt(key,iv, download_resp["result"]["region"])
494
+
495
+ bucket = Cnvrg::Helpers.decrypt(key,iv, download_resp["result"]["bucket"])
496
+ key = Cnvrg::Helpers.decrypt(key,iv, download_resp["result"]["key"])
497
+
498
+ client = Aws::S3::Client.new(
499
+ :access_key_id =>access,
500
+ :secret_access_key => secret,
501
+ :session_token => session,
502
+ :region => region,
503
+ :http_open_timeout => 60, :retry_limit => 20
504
+ )
505
+ resp = client.get_object({bucket:bucket,
506
+ key:key})
507
+ return resp.body.string
508
+ end
509
+
510
+ rescue => e
511
+ puts e
512
+ return false
513
+
514
+ end
515
+ end
516
+
463
517
  def download_dir(absolute_path, relative_path, project_home)
464
518
  FileUtils.mkdir_p("#{project_home}/#{absolute_path}")
465
519
  end
@@ -1,4 +1,4 @@
1
1
  module Cnvrg
2
- VERSION = '0.2.6'
2
+ VERSION = '0.2.7'
3
3
  end
4
4
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cnvrg
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.6
4
+ version: 0.2.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Yochay Ettun
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2017-12-27 00:00:00.000000000 Z
12
+ date: 2018-01-03 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: bundler
@@ -416,7 +416,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
416
416
  version: '0'
417
417
  requirements: []
418
418
  rubyforge_project:
419
- rubygems_version: 2.6.12
419
+ rubygems_version: 2.5.1
420
420
  signing_key:
421
421
  specification_version: 4
422
422
  summary: A CLI tool for interacting with cnvrg.io.