2013-07-03 20 views
5

Opracowuję GEM dla mojego końcowego projektu dyplomowego, a budowa Travis CI ciągle się nie udaje.Niepowodzenie Gemspeca

To jest mój związek na Travis: https://travis-ci.org/ricardobond/perpetuus/builds/8709218

Błąd na budowie jest:

$ bundle exec rake 
rake aborted! 
Don't know how to build task 'default' 
/home/travis/.rvm/gems/ruby-1.9.3-p448/bin/ruby_noexec_wrapper:14:in `eval' 
/home/travis/.rvm/gems/ruby-1.9.3-p448/bin/ruby_noexec_wrapper:14:in `<main>' 
(See full trace by running task with --trace) 
The command "bundle exec rake" exited with 1. 
Done. Your build exited with 1. 

Poniżej jest moje perpetuus.gemspec

# coding: utf-8 
lib = File.expand_path('../lib', __FILE__) 
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib) 
require 'perpetuus/version' 

Gem::Specification.new do |spec| 
    spec.name   = "perpetuus" 
    spec.version  = Perpetuus::VERSION 
    spec.authors  = ["Ricardo Caldeira"] 
    spec.email   = ["[email protected]"] 
    spec.description = %q{A continuous deploy GEM} 
    spec.summary  = %q{Built on top of Ruby on Rails} 
    spec.homepage  = "" 
    spec.license  = "MIT" 

    spec.files   = `git ls-files`.split($/) 
    spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) } 
    spec.test_files = spec.files.grep(%r{^(test|spec|features)/}) 
    spec.require_paths = ["lib"] 

    spec.add_development_dependency "bundler", "~> 1.3" 
    spec.add_development_dependency "rake" 
end 

I tu jest moje Gemfile:

source 'https://rubygems.org' 

# Specify your gem's dependencies in perpetuus.gemspec 
gemspec 

group :development, :test do 
    gem "rspec", "~> 2.13" 
end 

Jakieś wskazówki?

Używam Ruby 2.0.0 na Mac OS i RVM 1.19.1

+0

Czy masz plik '.travis.yml' w katalogu głównym projektu? –

Odpowiedz

7

Nie masz domyślnego zadania skonfigurowanego w swoim Rakefile. Jeśli chcesz Travis aby uruchomić zestaw testów należy chyba dodać coś takiego w swoim Rakefile:

require 'rspec/core/rake_task' 
RSpec::Core::RakeTask.new(:spec) 
task :default => :spec 

można przetestować tę konfigurację lokalnie poprzez uruchomienie rake w projekcie reż.

3

Brakuje zadanie domyślnego w Rakefile

Zakładając, że zwykle prowadzony

rake test 

Do uruchom swoją specyfikację, po prostu dodaj to na końcu pliku:

task :default => [:test] 

Można teoretycznie edycji .travis.yml zamiast i dać mu coś innego niż tylko do uruchomienia rake:

script: "bundle exec rake spec:travis" 

. . . ale dodanie domyślnego zadania Rake jest łatwiejsze.