Sha256: 0d0e6a4aae8c33264fb7245cec9ed7984c035be867014bb558088bcbcdba2647

Contents?: true

Size: 1.15 KB

Versions: 23

Compression:

Stored size: 1.15 KB

Contents

# tasks for building and releasing the software
require 'git'
require 'pickle/version'

task :build do
  system "gem build pickle.gemspec"
end

namespace :release do
  task :rubygems => :pre do
    system "gem push pickle-#{Pickle::VERSION}.gem"
  end
  
  task :github => :pre do
    tag = "v#{Pickle::VERSION}"
    git = Git.open('.')
    
    if (git.tag(tag) rescue nil)
      raise "** repo is already tagged with: #{tag}"
    end
    
    git.add_tag(tag)
    git.push('origin', tag)
  end
  
  task :pre => [:spec, :cucumber, :build] do
    git = Git.open('.')
    
    if File.exists?("Gemfile.lock") && File.read("Gemfile.lock") != File.read("Gemfile.lock.development")
      cp "Gemfile.lock", "Gemfile.lock.development"
      raise "** Gemfile.lock.development has been updated, please commit these changes."
    end
    
    if (git.status.changed + git.status.added + git.status.deleted).any?
      raise "** repo is not clean, try committing some files"
    end
    
    if git.object('HEAD').sha != git.object('origin/master').sha
      raise "** origin does not match HEAD, have you pushed?"
    end
  end
  
  task :all => ['release:github', 'release:rubygems']
end

Version data entries

23 entries across 23 versions & 2 rubygems

Version Path
pickle-0.9.0 Rakefile.d/release.rake
pickle-0.8.0 Rakefile.d/release.rake
pickle-0.7.2 Rakefile.d/release.rake
pickle-0.7.1 Rakefile.d/release.rake
pickle-0.7.0 Rakefile.d/release.rake
pickle-0.6.2 Rakefile.d/release.rake
pickle-0.6.1 Rakefile.d/release.rake
pickle-0.6.0 Rakefile.d/release.rake
pickle-0.5.5 Rakefile.d/release.rake
pickle-0.5.4 Rakefile.d/release.rake
pickle-0.5.3 Rakefile.d/release.rake
pickle-0.5.2 Rakefile.d/release.rake
spbtv_pickle-0.5.2 Rakefile.d/release.rake
spbtv_pickle-0.5.1 Rakefile.d/release.rake
pickle-0.5.1 Rakefile.d/release.rake
pickle-0.5.0 Rakefile.d/release.rake
pickle-0.4.11 Rakefile.d/release.rake
pickle-0.4.10 Rakefile.d/release.rake
pickle-0.4.9 Rakefile.d/release.rake
pickle-0.4.8 Rakefile.d/release.rake