2010-06-22 6 views
0

Je développe une application utilisant les rails 2.3.5, gorable et déployable avec vlad, le système d'exploitation est Linux Mint 9 Isadora.
vlad: setup et vlad: mise à jour sont ok. Mais quand je vlad:migrate et ai la même erreur que si je ssh sur le serveur et essayer un râteau gemmes: installerL'installation de gems essaie de charger les gems dans mes tâches de rake personnalisées avant de l'installer.

râteau avorté!
pas de fichier à charger - ya2yaml
/var/www/path/to/releases/20100622030150/Rakefile: 10 (Voir trace complète en exécutant la tâche avec --trace)

Mon config/environment.rb est bon:

RAILS_GEM_VERSION = '2.3.5' unless defined? RAILS_GEM_VERSION 
# Bootstrap the Rails environment, frameworks, and default configuration 
require File.join(File.dirname(__FILE__), 'boot') 
Rails::Initializer.run do |config| 
    config.gem "haml" 

J'ai une tâche personnalisée dans lib/tasks/db_fixtures.rake qui nécessite ya2yaml:

namespace :export do 
desc 'Create YAML test fixtures from data in an existing database. 
Defaults to development database. Set RAILS_ENV to override.' 
require 'rubygems' 
require 'ya2yaml' 
task :fixtures => [:environment] do 

Quand je renommer ce fichier, il n'est pas chargé par râteau et je n'ai pas plus l'erreur quand je rake gems:install

Donc, je suppose que cela ressemble à gemmes râteau: installer tente de charger les libs dans ma commande tâches avant d'installer les gemmes pour une raison quelconque et me jeter une erreur.

Qu'est-ce qu'une solution?
Merci,

Répondre

2

cela pourrait fonctionner? retarder l'exige sur votre tâche Rake en les déplaçant dans la tâche elle-même

task :fixtures => [:environment] do 
    require 'rubygems' 
    require 'ya2yaml' 
    # ... 

par défaut en cours d'exécution de tâches des charges "rake tous les fichiers de râteau

+1

Désolé pour ma réponse tardive. Retarder les besoins a résolu le problème. Merci. – mazhout