Class: Heirloom::Archive
- Inherits:
-
Object
- Object
- Heirloom::Archive
- Defined in:
- lib/heirloom/archive.rb
Instance Method Summary collapse
- #authorize(accounts) ⇒ Object
- #buckets_exist?(args) ⇒ Boolean
- #build(args) ⇒ Object
- #count ⇒ Object
- #delete_buckets(args) ⇒ Object
- #delete_domain ⇒ Object
- #destroy ⇒ Object
- #domain_exists? ⇒ Boolean
- #download(args) ⇒ Object
- #exists? ⇒ Boolean
-
#initialize(args) ⇒ Archive
constructor
A new instance of Archive.
- #list(limit = 10) ⇒ Object
- #regions ⇒ Object
- #rotate(args) ⇒ Object
- #setup(args) ⇒ Object
- #show ⇒ Object
- #update(args) ⇒ Object
- #upload(args) ⇒ Object
Constructor Details
#initialize(args) ⇒ Archive
Returns a new instance of Archive.
19 20 21 22 23 |
# File 'lib/heirloom/archive.rb', line 19 def initialize(args) @config = args[:config] @name = args[:name] @id = args[:id] end |
Instance Method Details
#authorize(accounts) ⇒ Object
25 26 27 28 |
# File 'lib/heirloom/archive.rb', line 25 def (accounts) . :accounts => accounts, :regions => regions end |
#buckets_exist?(args) ⇒ Boolean
66 67 68 |
# File 'lib/heirloom/archive.rb', line 66 def buckets_exist?(args) verifier.buckets_exist? args end |
#build(args) ⇒ Object
30 31 32 |
# File 'lib/heirloom/archive.rb', line 30 def build(args) builder.build args end |
#count ⇒ Object
34 35 36 |
# File 'lib/heirloom/archive.rb', line 34 def count reader.count end |
#delete_buckets(args) ⇒ Object
46 47 48 |
# File 'lib/heirloom/archive.rb', line 46 def delete_buckets(args) teardowner.delete_buckets args end |
#delete_domain ⇒ Object
50 51 52 |
# File 'lib/heirloom/archive.rb', line 50 def delete_domain teardowner.delete_domain end |
#destroy ⇒ Object
74 75 76 |
# File 'lib/heirloom/archive.rb', line 74 def destroy destroyer.destroy :regions => regions end |
#domain_exists? ⇒ Boolean
70 71 72 |
# File 'lib/heirloom/archive.rb', line 70 def domain_exists? verifier.domain_exists? end |
#download(args) ⇒ Object
38 39 40 |
# File 'lib/heirloom/archive.rb', line 38 def download(args) downloader.download args end |
#exists? ⇒ Boolean
62 63 64 |
# File 'lib/heirloom/archive.rb', line 62 def exists? reader.exists? end |
#list(limit = 10) ⇒ Object
99 100 101 |
# File 'lib/heirloom/archive.rb', line 99 def list(limit=10) lister.list(limit) end |
#regions ⇒ Object
103 104 105 |
# File 'lib/heirloom/archive.rb', line 103 def regions reader.regions end |
#rotate(args) ⇒ Object
82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 |
# File 'lib/heirloom/archive.rb', line 82 def rotate(args) temp_dir = Dir.mktmpdir temp_file = Tempfile.new('archive.tar.gz') unless download({ :output => temp_dir, :secret => args[:old_secret], :extract => true }.merge(args)) raise Heirloom::Exceptions::RotateFailed.new "Download failed - aborting rotation" end unless build({ :directory => temp_dir, :secret => args[:new_secret], :file => temp_file.path }.merge(args)) raise Heirloom::Exceptions::RotateFailed.new "Build failed - aborting rotation" end destroy upload({ :file => temp_file.path, :secret => args[:new_secret] }.merge(args)) ensure temp_file.close! FileUtils.remove_entry temp_dir end |
#setup(args) ⇒ Object
42 43 44 |
# File 'lib/heirloom/archive.rb', line 42 def setup(args) setuper.setup args end |
#show ⇒ Object
78 79 80 |
# File 'lib/heirloom/archive.rb', line 78 def show reader.show.merge reader.object_acls end |
#update(args) ⇒ Object
54 55 56 |
# File 'lib/heirloom/archive.rb', line 54 def update(args) updater.update args end |
#upload(args) ⇒ Object
58 59 60 |
# File 'lib/heirloom/archive.rb', line 58 def upload(args) uploader.upload({ :regions => regions }.merge(args)) end |