Sha256: 7482dadf5699c2b500ff1a84ccd0f61fe1a58810fab5a3c78ef24a53688eeccf
Contents?: true
Size: 1.45 KB
Versions: 1
Compression:
Stored size: 1.45 KB
Contents
module Middleman module Deploy module Strategies module Git class Base attr_accessor :branch, :build_dir, :remote, :commit_message def initialize(build_dir, remote, branch, commit_message) self.branch = branch self.build_dir = build_dir self.remote = remote self.commit_message = commit_message end def process raise NotImplementedError end protected def add_signature_to_commit_message(base_message) signature = "#{Middleman::Deploy::PACKAGE} #{Middleman::Deploy::VERSION}" time = "#{Time.now.utc}" "#{base_message} at #{time} by #{signature}" end def checkout_branch # if there is a branch with that name, switch to it, otherwise create a new one and switch to it if `git branch`.split("\n").any? { |b| b =~ /#{self.branch}/i } `git checkout #{self.branch}` else `git checkout -b #{self.branch}` end end def commit_branch(options = '') message = self.commit_message ? self.commit_message : add_signature_to_commit_message('Automated commit') `git add -A` `git commit --allow-empty -am "#{message}"` `git push #{options} origin #{self.branch}` end end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
middleman-deploy-0.3.0 | lib/middleman-deploy/strategies/git/base.rb |