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, :routing_rules, :scan_build_dir, :cloudfront_distribution_id, :cloudfront_invalidate, :cloudfront_invalidate_all, :cloudfront_invalidation_batch_size, :cloudfront_invalidation_max_retries, :cloudfront_invalidation_batch_delay, :cloudfront_wait, :after_s3_sync ]
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
- #routing_rules ⇒ Object
- #scan_build_dir ⇒ Object
- #version_bucket ⇒ Object
Instance Method Details
#acl ⇒ Object
42 43 44 45 46 47 48 |
# File 'lib/middleman/s3_sync/options.rb', line 42 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
50 51 52 53 |
# File 'lib/middleman/s3_sync/options.rb', line 50 def acl=(value) @acl_explicitly_set = true @acl = value end |
#acl_enabled? ⇒ Boolean
55 56 57 58 59 60 |
# File 'lib/middleman/s3_sync/options.rb', line 55 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
86 87 88 |
# File 'lib/middleman/s3_sync/options.rb', line 86 def after_build @after_build.nil? ? false : @after_build end |
#aws_access_key_id ⇒ Object
66 67 68 |
# File 'lib/middleman/s3_sync/options.rb', line 66 def aws_access_key_id @aws_access_key_id || ENV['AWS_ACCESS_KEY_ID'] end |
#aws_access_key_id=(aws_access_key_id) ⇒ Object
62 63 64 |
# File 'lib/middleman/s3_sync/options.rb', line 62 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
74 75 76 |
# File 'lib/middleman/s3_sync/options.rb', line 74 def aws_secret_access_key @aws_secret_access_key || ENV['AWS_SECRET_ACCESS_KEY'] end |
#aws_secret_access_key=(aws_secret_access_key) ⇒ Object
70 71 72 |
# File 'lib/middleman/s3_sync/options.rb', line 70 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
82 83 84 |
# File 'lib/middleman/s3_sync/options.rb', line 82 def delete @delete.nil? ? true : @delete end |
#encryption ⇒ Object
78 79 80 |
# File 'lib/middleman/s3_sync/options.rb', line 78 def encryption @encryption.nil? ? false : @encryption end |
#ignore_paths ⇒ Object
98 99 100 |
# File 'lib/middleman/s3_sync/options.rb', line 98 def ignore_paths @ignore_paths.nil? ? [] : @ignore_paths end |
#path_style ⇒ Object
94 95 96 |
# File 'lib/middleman/s3_sync/options.rb', line 94 def path_style (@path_style.nil? ? true : @path_style) end |
#prefer_gzip ⇒ Object
90 91 92 |
# File 'lib/middleman/s3_sync/options.rb', line 90 def prefer_gzip (@prefer_gzip.nil? ? true : @prefer_gzip) end |
#prefix ⇒ Object
111 112 113 |
# File 'lib/middleman/s3_sync/options.rb', line 111 def prefix @prefix.nil? || @prefix.empty? ? "" : "#{@prefix}/" end |
#prefix=(prefix) ⇒ Object
102 103 104 105 106 107 108 109 |
# File 'lib/middleman/s3_sync/options.rb', line 102 def prefix=(prefix) http_prefix = @http_prefix ? @http_prefix.sub(%r{^/}, "") : "" if http_prefix.split("/").first == prefix @prefix = "" else @prefix = prefix end end |
#routing_rules ⇒ Object
119 120 121 |
# File 'lib/middleman/s3_sync/options.rb', line 119 def routing_rules @routing_rules || [] end |
#scan_build_dir ⇒ Object
123 124 125 |
# File 'lib/middleman/s3_sync/options.rb', line 123 def scan_build_dir @scan_build_dir.nil? ? false : @scan_build_dir end |
#version_bucket ⇒ Object
115 116 117 |
# File 'lib/middleman/s3_sync/options.rb', line 115 def version_bucket @version_bucket.nil? ? false : @version_bucket end |