2012-09-27 3 views
10

Qui è il modo corrente corro compiti rak dipendentiparametri passa rastrello per attività dipendenti

task :test => [:prepare_testdir,:run_tests] 

Al momento non ci sono parametri per queste due attività dipendenti. Ma ho bisogno di aggiungere parametri a una delle attività. Dovrebbe essere in esecuzione come su riga di comando

rake prepare_testdir[mydir] 

Come faccio a passare questo nuovo parametro a questo

task :test => [:prepare_testdir,:run_tests] 

ho cercato

task :test => [:prepare_testdir[mydir],:run_tests] 

e

task :test => [:prepare_testdir['mydir'],:run_tests] 

sia non stanno funzionando

Grazie in anticipo

risposta

13

All'interno del file rastrello

task :test, [:dir] => [:prepare_testdir] do |t,args| 
    puts args.inspect # {:dir=>"foo"} 
end 

task :prepare_testdir, :dir do |t, args| 
    puts args.inspect # {:dir=>"foo"} 
end 

Invocazione

rake test[foo] 
+0

Questo è in realtà un po 'diverso, perché si è modificato l'API del test' task '. –