class Backupsss::BackupBucket
A class for listing and sorting files in an s3 bucket
Attributes
dir[R]
region[R]
Public Class Methods
new(opts = {})
click to toggle source
# File lib/backupsss/backup_bucket.rb, line 8 def initialize(opts = {}) @dir = opts[:dir] @region = opts[:region] end
Public Instance Methods
ls()
click to toggle source
# File lib/backupsss/backup_bucket.rb, line 13 def ls list_objects.map(&:key) end
ls_rt()
click to toggle source
# File lib/backupsss/backup_bucket.rb, line 21 def ls_rt ls_t.reverse end
ls_t()
click to toggle source
# File lib/backupsss/backup_bucket.rb, line 17 def ls_t list_objects.sort_by(&:last_modified).map(&:key) end
rm(file)
click to toggle source
# File lib/backupsss/backup_bucket.rb, line 25 def rm(file) s3_client.delete_object(bucket: bucket, key: file) file end
Private Instance Methods
bucket()
click to toggle source
# File lib/backupsss/backup_bucket.rb, line 40 def bucket dir.split('/').first end
list_objects()
click to toggle source
# File lib/backupsss/backup_bucket.rb, line 32 def list_objects s3_client.list_objects(bucket: bucket, prefix: prefix).contents end
prefix()
click to toggle source
# File lib/backupsss/backup_bucket.rb, line 44 def prefix dir.split('/').drop(1).join('/') end
s3_client()
click to toggle source
# File lib/backupsss/backup_bucket.rb, line 36 def s3_client Aws::S3::Client.new(region: region) end