Class: Bkwrapper::S3::Uploader
- Inherits:
-
Object
- Object
- Bkwrapper::S3::Uploader
- Defined in:
- lib/bkwrapper/s3/uploader.rb
Instance Method Summary collapse
- #buckets_names ⇒ Object
- #create_bucket(bucket_name) ⇒ Object
- #delete_bucket(bucket_name) ⇒ Object
-
#initialize(access_key_id, secret_access_key, bucket_name, project_name) ⇒ Uploader
constructor
A new instance of Uploader.
- #upload_file(filename) ⇒ Object
Constructor Details
#initialize(access_key_id, secret_access_key, bucket_name, project_name) ⇒ Uploader
Returns a new instance of Uploader.
5 6 7 8 9 10 |
# File 'lib/bkwrapper/s3/uploader.rb', line 5 def initialize(access_key_id, secret_access_key, bucket_name, project_name) @bucket_name, @project_name = bucket_name, project_name creds = ::Aws::Credentials.new(access_key_id, secret_access_key) @s3 = ::Aws::S3::Client.new(credentials: creds, region:'us-east-1') end |
Instance Method Details
#buckets_names ⇒ Object
17 18 19 |
# File 'lib/bkwrapper/s3/uploader.rb', line 17 def buckets_names @s3.list_buckets.buckets.map(&:name) end |
#create_bucket(bucket_name) ⇒ Object
21 22 23 |
# File 'lib/bkwrapper/s3/uploader.rb', line 21 def create_bucket(bucket_name) @s3.create_bucket bucket: bucket_name end |
#delete_bucket(bucket_name) ⇒ Object
25 26 27 |
# File 'lib/bkwrapper/s3/uploader.rb', line 25 def delete_bucket(bucket_name) @s3.delete_bucket bucket: bucket_name end |
#upload_file(filename) ⇒ Object
12 13 14 15 |
# File 'lib/bkwrapper/s3/uploader.rb', line 12 def upload_file(filename) file_open = File.open(filename) @s3.put_object(body: file_open, bucket: "#{@bucket_name}/#{@project_name}", key: File.basename(filename)) end |