Sha256: 69485525db41720808425e690428a135239e982b0f4979e64b5983021bb68cee

Contents?: true

Size: 1.26 KB

Versions: 10

Compression:

Stored size: 1.26 KB

Contents

# encoding: utf-8
$:.push File.expand_path("../lib", __FILE__)

require 'bundler'
require 'bundler/setup'
require 'thor/rake_compat'
require 'berkshelf/vagrant'

GEM_PKG = "vagrant-berkshelf-#{Berkshelf::Vagrant::VERSION}.gem".freeze

class Gem < Thor
  include Thor::RakeCompat
  Bundler::GemHelper.install_tasks

  desc "build", "Build #{GEM_PKG} into the pkg directory"
  def build
    Rake::Task["build"].execute
  end

  desc "release", "Create tag v#{Berkshelf::Vagrant::VERSION} and build and push #{GEM_PKG} to Rubygems"
  def release
    Rake::Task["release"].execute
  end

  desc "install", "Build and install #{GEM_PKG} into system gems"
  def install
    Rake::Task["install"].execute
  end
end

class Spec < Thor
  include Thor::Actions
  default_task :unit

  desc "plug", "Install #{GEM_PKG} into vagrant"
  def plug
    build
    run "vagrant plugin install pkg/#{GEM_PKG}"
  end

  desc "ci", "Run all possible tests on Travis-CI"
  def ci
    ENV['CI'] = 'true' # Travis-CI also sets this, but set it here for local testing
    invoke(:unit)
  end

  desc "unit", "Run unit tests"
  def unit
    unless run_unit
      exit 1
    end
  end

  no_tasks do
    def run_unit(*flags)
      run "rspec --color --format=documentation #{flags.join(' ')} spec"
    end
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
vagrant-berkshelf-3.0.1 Thorfile
vagrant-berkshelf-3.0.0 Thorfile
vagrant-berkshelf-3.0.0.rc2 Thorfile
vagrant-berkshelf-3.0.0.rc1 Thorfile
vagrant-berkshelf-2.0.1 Thorfile
vagrant-berkshelf-2.0.0.rc4 Thorfile
vagrant-berkshelf-2.0.0.rc3 Thorfile
vagrant-berkshelf-2.0.0.rc2 Thorfile
vagrant-berkshelf-2.0.0.rc1 Thorfile
vagrant-berkshelf-1.4.0.dev1 Thorfile