Class: Middleman::S3Sync::Options
- Inherits:
-
Object
- Object
- Middleman::S3Sync::Options
- Defined in:
- lib/middleman/s3_sync/options.rb
Constant Summary collapse
- OPTIONS =
[ :prefix, :http_prefix, :acl, :bucket, :endpoint, :region, :aws_access_key_id, :aws_secret_access_key, :aws_session_token, :after_build, :delete, :encryption, :build_dir, :force, :prefer_gzip, :reduced_redundancy_storage, :path_style, :version_bucket, :dry_run, :verbose, :content_types, :ignore_paths, :index_document, :error_document, :cloudfront_distribution_id, :cloudfront_invalidate, :cloudfront_invalidate_all, :cloudfront_invalidation_batch_size, :cloudfront_invalidation_max_retries, :cloudfront_invalidation_batch_delay, :cloudfront_wait ]
Instance Method Summary collapse
- #acl ⇒ Object
- #acl=(value) ⇒ Object
- #acl_enabled? ⇒ Boolean
- #after_build ⇒ Object
- #aws_access_key_id ⇒ Object
- #aws_access_key_id=(aws_access_key_id) ⇒ Object
- #aws_secret_access_key ⇒ Object
- #aws_secret_access_key=(aws_secret_access_key) ⇒ Object
- #delete ⇒ Object
- #encryption ⇒ Object
- #ignore_paths ⇒ Object
- #path_style ⇒ Object
- #prefer_gzip ⇒ Object
- #prefix ⇒ Object
- #prefix=(prefix) ⇒ Object
- #version_bucket ⇒ Object
Instance Method Details
#acl ⇒ Object
39 40 41 42 43 44 45 |
# File 'lib/middleman/s3_sync/options.rb', line 39 def acl # If @acl is explicitly set to empty string or false, return nil (for buckets with ACLs disabled) # If @acl is nil and was never set, return default 'public-read' # Otherwise return the set value return nil if @acl == '' || @acl == false @acl_explicitly_set ? @acl : (@acl || 'public-read') end |
#acl=(value) ⇒ Object
47 48 49 50 |
# File 'lib/middleman/s3_sync/options.rb', line 47 def acl=(value) @acl_explicitly_set = true @acl = value end |
#acl_enabled? ⇒ Boolean
52 53 54 55 56 57 |
# File 'lib/middleman/s3_sync/options.rb', line 52 def acl_enabled? # ACLs are disabled if explicitly set to nil, empty string, or false return false if @acl_explicitly_set && (@acl.nil? || @acl == '' || @acl == false) # Otherwise ACLs are enabled (using default or explicit value) true end |
#after_build ⇒ Object
83 84 85 |
# File 'lib/middleman/s3_sync/options.rb', line 83 def after_build @after_build.nil? ? false : @after_build end |
#aws_access_key_id ⇒ Object
63 64 65 |
# File 'lib/middleman/s3_sync/options.rb', line 63 def aws_access_key_id @aws_access_key_id || ENV['AWS_ACCESS_KEY_ID'] end |
#aws_access_key_id=(aws_access_key_id) ⇒ Object
59 60 61 |
# File 'lib/middleman/s3_sync/options.rb', line 59 def aws_access_key_id=(aws_access_key_id) @aws_access_key_id = aws_access_key_id if aws_access_key_id end |
#aws_secret_access_key ⇒ Object
71 72 73 |
# File 'lib/middleman/s3_sync/options.rb', line 71 def aws_secret_access_key @aws_secret_access_key || ENV['AWS_SECRET_ACCESS_KEY'] end |
#aws_secret_access_key=(aws_secret_access_key) ⇒ Object
67 68 69 |
# File 'lib/middleman/s3_sync/options.rb', line 67 def aws_secret_access_key=(aws_secret_access_key) @aws_secret_access_key = aws_secret_access_key if aws_secret_access_key end |
#delete ⇒ Object
79 80 81 |
# File 'lib/middleman/s3_sync/options.rb', line 79 def delete @delete.nil? ? true : @delete end |
#encryption ⇒ Object
75 76 77 |
# File 'lib/middleman/s3_sync/options.rb', line 75 def encryption @encryption.nil? ? false : @encryption end |
#ignore_paths ⇒ Object
95 96 97 |
# File 'lib/middleman/s3_sync/options.rb', line 95 def ignore_paths @ignore_paths.nil? ? [] : @ignore_paths end |
#path_style ⇒ Object
91 92 93 |
# File 'lib/middleman/s3_sync/options.rb', line 91 def path_style (@path_style.nil? ? true : @path_style) end |
#prefer_gzip ⇒ Object
87 88 89 |
# File 'lib/middleman/s3_sync/options.rb', line 87 def prefer_gzip (@prefer_gzip.nil? ? true : @prefer_gzip) end |
#prefix ⇒ Object
108 109 110 |
# File 'lib/middleman/s3_sync/options.rb', line 108 def prefix @prefix.nil? || @prefix.empty? ? "" : "#{@prefix}/" end |
#prefix=(prefix) ⇒ Object
99 100 101 102 103 104 105 106 |
# File 'lib/middleman/s3_sync/options.rb', line 99 def prefix=(prefix) http_prefix = @http_prefix ? @http_prefix.sub(%r{^/}, "") : "" if http_prefix.split("/").first == prefix @prefix = "" else @prefix = prefix end end |
#version_bucket ⇒ Object
112 113 114 |
# File 'lib/middleman/s3_sync/options.rb', line 112 def version_bucket @version_bucket.nil? ? false : @version_bucket end |