wormholio 0.0.2.5 → 0.0.2.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- ODMxNmJkNWI5M2ZmMjJlM2VkNGU0YzEyMmUyZGMwN2Y4NzRmODM2Mw==
4
+ ZTA3MDFhYWNmZGMzZGMyODdjZTQ5ZGE4ZTdjMTcxMTUxZTkxZmFjOA==
5
5
  data.tar.gz: !binary |-
6
- NDljZjMyMDFjMmYyZDllMTQxMGE1YzBkMjAxM2I3Y2Y2NTA3NmM3MQ==
6
+ NjI0YWE4MGEwY2YwMWFlY2VhZmU0ZTI1MDU0NDkwZDNjZjFmZmNjYQ==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- ZGY3MDVjNzY0ZThhYzUxNTU5MWI5NjA2NTJmNjBmNDQ2NGFiYmJkMDQ4ZjBk
10
- ZWEyOTNjNTJjNjNkODMyN2UzNDdhMDI2Nzg2ZTI1YTUwMDJkNjFlMTkzMjc3
11
- ZDk2NjQxZjc4MWYwOTEwZGI0Y2RlNjUyZDIzYmRmNDJmMTZiZmE=
9
+ ODE4NTEyMmM4ODM2ZmVmZjBhZDQxZDE1ZGM5MDY0ZDk0ZGEyNmZiYzhlOTE4
10
+ N2YyYmZiZjg1NjdkODMyY2JkZGEzOTA0NzNiNzAyYmYwNThiYzkxZjgxNzc3
11
+ YWYxMTlmODMwYTA2MmQyYzMyOTAwMGQxZTRjODNmNGU0NThlZDI=
12
12
  data.tar.gz: !binary |-
13
- MDZjMzRjZjJjNjFiOTMyM2FiYTcwMWRjNGVjM2ZhNDdmNDRiNGIxODUxMzIw
14
- ZDhjYWFiNTY3MjQ0YTA4ZmU5MmNkN2MwM2VhNzVkNmU4ZWMzY2I4MWRlYjlm
15
- YjNkYzJmYzgzMjAwODI3MWMxNjQ2ODQyNmM3OGMwYWMxMzZjNjA=
13
+ ZmNjODc1NThlMjk5YTdkNzM0NTkyZGUyNGNhYjJlNTE0NDE1NmFjZGQ3Mzdm
14
+ MzAzYThkMzQ4NjhhMDlmNmY0ZDk0ZjFkOTI1ZGYyY2MxMDcwODYxMWI1ODhk
15
+ OGMyMzlkMTE4YTc0ZTI0YTcyODhhOTI1NzZlN2EzMmM2YTFiNWY=
data/lib/wormholio.rb CHANGED
@@ -3,6 +3,7 @@ require "wormholio/ftp"
3
3
  require "wormholio/ftps"
4
4
  require "wormholio/sftp"
5
5
  require "wormholio/scp"
6
+ require "wormholio/s3_client"
6
7
 
7
8
  module Wormholio
8
9
 
@@ -55,7 +56,15 @@ module Wormholio
55
56
  end
56
57
 
57
58
  module S3
58
- # TODO
59
+
60
+ def self.upload(credentials,local_path,filename)
61
+ S3Client.upload(credentials,local_path,filename)
62
+ end
63
+
64
+ def self.download(credentials,local_path,filename)
65
+ S3Client.download(credentials,local_path,filename)
66
+ end
67
+
59
68
  end
60
69
 
61
70
  end
@@ -0,0 +1,31 @@
1
+ require "s3"
2
+
3
+ class S3Client
4
+
5
+ def self.upload(creds,local_path,filename)
6
+ p 'S3 UPLOAD'
7
+ connect(creds)
8
+ file = @wormholio_bucket.objects.build("#{creds['dir_path']}#{filename}")
9
+ file.content = open("#{local_path}#{filename}")
10
+ file.save
11
+ end
12
+
13
+ def self.download(creds,local_path,filename)
14
+ p 'S3 DOWNLOAD'
15
+ connect(creds)
16
+ file = @wormholio_bucket.objects.find("#{creds['dir_path']}#{filename}")
17
+ File.open("#{local_path}#{filename}", 'w') do |f|
18
+ f.write("#{file.content(true)}")
19
+ end
20
+ end
21
+
22
+ private
23
+ def self.connect(creds)
24
+ p 'ESTABLISH S3 CONNECTION'
25
+ s3 = S3::Service.new(
26
+ :access_key_id => creds["access_key_id"],
27
+ :secret_access_key => creds["secret_access_key"]
28
+ )
29
+ @wormholio_bucket = s3.buckets.find(creds["bucket_name"])
30
+ end
31
+ end
data/lib/wormholio/scp.rb CHANGED
@@ -16,13 +16,13 @@ class Scp
16
16
  end
17
17
 
18
18
  private
19
- def self.connect(creds)
20
- p 'ESTABLISH SCP CONNECTION'
21
- host = creds["host"]
22
- username = creds["username"]
23
- password = creds["password"]
24
- port = creds["port"]
19
+ def self.connect(creds)
20
+ p 'ESTABLISH SCP CONNECTION'
21
+ host = creds["host"]
22
+ username = creds["username"]
23
+ password = creds["password"]
24
+ port = creds["port"]
25
25
 
26
- @wormholio_ssh = Net::SSH.start(host, username, :password => password, :port => port)
27
- end
26
+ @wormholio_ssh = Net::SSH.start(host, username, :password => password, :port => port)
27
+ end
28
28
  end
@@ -1,3 +1,3 @@
1
1
  module Wormholio
2
- VERSION = "0.0.2.5"
2
+ VERSION = "0.0.2.6"
3
3
  end
data/wormholio.gemspec CHANGED
@@ -8,8 +8,8 @@ Gem::Specification.new do |spec|
8
8
  spec.version = Wormholio::VERSION
9
9
  spec.authors = ["Christopher Reynolds"]
10
10
  spec.email = ["reynolds87chris@gmail.com"]
11
- spec.summary = %q{(under development) Simple Upload/Download functionality for FTP, FTPS, SFTP and SCP.}
12
- spec.description = %q{Currently under development... (First gem) Wormholio provides simple Upload/Download functionality for all file transfer methods. Currently supported transfer methods: FTP, FTPS, SFTP and SCP; soon to be supported: S3.}
11
+ spec.summary = %q{(under development) Simple Upload/Download functionality for FTP, FTPS, SFTP, SCP and S3.}
12
+ spec.description = %q{(Under development) Wormholio provides simple Upload/Download functionality for all file transfer methods. Currently supported transfer methods: FTP, FTPS, SFTP, SCP and S3.}
13
13
  spec.homepage = "https://github.com/skplunkerin/wormholio"
14
14
  spec.license = "MIT"
15
15
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: wormholio
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2.5
4
+ version: 0.0.2.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Christopher Reynolds
@@ -94,9 +94,9 @@ dependencies:
94
94
  - - ~>
95
95
  - !ruby/object:Gem::Version
96
96
  version: '10.0'
97
- description: ! 'Currently under development... (First gem) Wormholio provides simple
98
- Upload/Download functionality for all file transfer methods. Currently supported
99
- transfer methods: FTP, FTPS, SFTP and SCP; soon to be supported: S3.'
97
+ description: ! '(Under development) Wormholio provides simple Upload/Download functionality
98
+ for all file transfer methods. Currently supported transfer methods: FTP, FTPS,
99
+ SFTP, SCP and S3.'
100
100
  email:
101
101
  - reynolds87chris@gmail.com
102
102
  executables: []
@@ -111,6 +111,7 @@ files:
111
111
  - lib/wormholio.rb
112
112
  - lib/wormholio/ftp.rb
113
113
  - lib/wormholio/ftps.rb
114
+ - lib/wormholio/s3_client.rb
114
115
  - lib/wormholio/scp.rb
115
116
  - lib/wormholio/sftp.rb
116
117
  - lib/wormholio/version.rb
@@ -138,6 +139,6 @@ rubyforge_project:
138
139
  rubygems_version: 2.4.4
139
140
  signing_key:
140
141
  specification_version: 4
141
- summary: (under development) Simple Upload/Download functionality for FTP, FTPS, SFTP
142
- and SCP.
142
+ summary: (under development) Simple Upload/Download functionality for FTP, FTPS, SFTP,
143
+ SCP and S3.
143
144
  test_files: []