Sha256: 08fca0bd610fd4029ca54e75ba526eaea506e4eaec7e5f829a83998571bc5e84
Contents?: true
Size: 1.62 KB
Versions: 2
Compression:
Stored size: 1.62 KB
Contents
unless defined?(Bundler) require "automateit" require "rails" require "rake" require "bundler" end module Rmails class Publisher def initialize(params={}) @interpreter = ::AutomateIt.new(:project => "system") @interpreter.include_in(self) end def run # prepare pre-install Gemfile @interpreter.render :file => "#{dist}rmails/Gemfile.1", :to => "#{Rails.root}/Gemfile", :backup => false Bundler.with_clean_env do @interpreter.shell_manager.sh("bundle install --without development assets") end # increase version number versions = [] edit :file => "#{Rails.root}/lib/rmails/version.rb", :backup => false do replace /^\s*RELEASE.*$/, " RELEASE = '#{Time.now.strftime('%Y-%m-%d')}'" manipulate do |content| content =~ /^\s*VERSION\s*=\s*['"](.*)['"].*$/ versions = $1.split('.') versions[2] = (versions[2].to_i + 1).to_s content.gsub /^\s*VERSION.*$/, " VERSION = '#{versions.join('.')}'" end end # publish on Rubygems and Github @interpreter.shell_manager.sh("gem build rmails.gemspec") @interpreter.shell_manager.sh("gem push rmails-#{versions.join('.')}.gem") @interpreter.shell_manager.sh("git commit -am 'version increased, rubygem published'") @interpreter.shell_manager.sh("git push") # prepare post-install/devel Gemfile @interpreter.render :file => "#{dist}rmails/Gemfile.2", :to => "#{Rails.root}/Gemfile", :backup => false Bundler.with_clean_env do @interpreter.shell_manager.sh("bundle install") end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
rmails-0.2.5 | lib/rmails/publisher.rb |
rmails-0.2.4 | lib/rmails/publisher.rb |