middleman-deploy/lib/middleman-deploy/extension.rb

49 lines
1.0 KiB
Ruby

# Require core library
require "middleman-core"
# Extension namespace
module Middleman
module Deploy
class Options < Struct.new(:whatisthis, :method, :host, :port, :user, :password, :path, :clean, :remote, :branch, :strategy, :build_before, :flags, :commit_message); end
class << self
def options
@@options
end
def registered(app, options_hash={}, &block)
options = Options.new(options_hash)
yield options if block_given?
# Default options for the rsync method.
options.port ||= 22
options.clean ||= false
# Default options for the git method.
options.remote ||= "origin"
options.branch ||= "gh-pages"
options.strategy ||= :force_push
options.commit_message ||= nil
options.build_before ||= false
@@options = options
app.send :include, Helpers
end
alias :included :registered
end
module Helpers
def options
::Middleman::Deploy.options
end
end
end
end