class Middleman::S3SyncExtension
Public Class Methods
new(app, options_hash = {}, &block)
click to toggle source
Calls superclass method
# File lib/middleman-s3_sync/extension.rb, line 35 def initialize(app, options_hash = {}, &block) super end
Public Instance Methods
after_build()
click to toggle source
# File lib/middleman-s3_sync/extension.rb, line 53 def after_build ::Middleman::S3Sync.sync() if options.after_build end
after_configuration()
click to toggle source
# File lib/middleman-s3_sync/extension.rb, line 39 def after_configuration read_config options.aws_access_key_id ||= ENV['AWS_ACCESS_KEY_ID'] options.aws_secret_access_key ||= ENV['AWS_SECRET_ACCESS_KEY'] options.bucket ||= ENV['AWS_BUCKET'] options.http_prefix = app.http_prefix if app.respond_to? :http_prefix options.build_dir ||= app.build_dir if app.respond_to? :build_dir if options.prefix options.prefix = options.prefix.end_with?("/") ? options.prefix : options.prefix + "/" options.prefix = "" if options.prefix == "/" end ::Middleman::S3Sync.s3_sync_options = s3_sync_options end
caching_policy(content_type, policy = {})
click to toggle source
# File lib/middleman-s3_sync/extension.rb, line 92 def caching_policy(content_type, policy = {}) ::Middleman::S3Sync.add_caching_policy(content_type, policy) end
default_caching_policy(policy = {})
click to toggle source
# File lib/middleman-s3_sync/extension.rb, line 88 def default_caching_policy(policy = {}) ::Middleman::S3Sync.add_caching_policy(:default, policy) end
manipulate_resource_list(mm_resources)
click to toggle source
# File lib/middleman-s3_sync/extension.rb, line 57 def manipulate_resource_list(mm_resources) ::Middleman::S3Sync.mm_resources = mm_resources end
read_config(io = nil)
click to toggle source
Read config options from an IO stream and set them on ‘self`. Defaults to reading from the `.s3_sync` file in the MM project root if it exists.
@param io [IO] an IO stream to read from @return [void]
# File lib/middleman-s3_sync/extension.rb, line 70 def read_config(io = nil) unless io root_path = ::Middleman::Application.root config_file_path = File.join(root_path, ".s3_sync") # skip if config file does not exist return unless File.exists?(config_file_path) io = File.open(config_file_path, "r") end config = (YAML.load(io) || {}).symbolize_keys config.each do |key, value| options[key.to_sym] = value end end
s3_sync_options()
click to toggle source
# File lib/middleman-s3_sync/extension.rb, line 61 def s3_sync_options options end