lib/datapimp/sync/s3_bucket.rb in datapimp-1.0.9 vs lib/datapimp/sync/s3_bucket.rb in datapimp-1.0.10

- old
+ new

@@ -3,13 +3,31 @@ class S3Bucket < Hashie::Mash include Datapimp::Logging # returns the s3 bucket via fog def s3 - @s3 ||= Datapimp::Sync.amazon.storage.directories.get(remote) + @s3 ||= storage.directories.get(remote).tap do |bucket| + if setup_website == true + bucket.public = true + bucket.save + storage.put_bucket_website(remote, 'index.html', key: 'error.html') + end + + if redirect == true + binding.pry + end + end end + def cloudfront + @cloudfront ||= Datapimp::Sync::CloudfrontDistribution.new(bucket: remote) + end + + def storage + Datapimp::Sync.amazon.storage + end + def website_hostname "#{s3.key}.s3-website-#{ s3.location }.amazonaws.com" end def website_url(proto="http") @@ -112,14 +130,18 @@ end def run_create_action(options={}) directories = Datapimp::Sync.amazon.storage.directories - if existing = directories.get(remote) - return existing + bucket = if existing = directories.get(remote) + existing else - directories.create(key:remote) + directories.create(key:remote, public: true) end + + storage.put_bucket_website(remote, :IndexDocument => 'index.html', :ErrorDocument => 'error.html') + + bucket end def run(action, options={}) action = action.to_sym