Ich habe ein Rakefile, das das Projekt auf zwei Arten kompiliert, entsprechend der globalen Variablen $build_type
, die :debug
oder sein kann :release
(die Ergebnisse werden in separaten Verzeichnissen gespeichert ):
task :build => [:some_other_tasks] do
end
Ich möchte eine Aufgabe erstellen, die das Projekt mit beiden Konfigurationen nacheinander kompiliert.
task :build_all do
[ :debug, :release ].each do |t|
$build_type = t
# call task :build with all the tasks it depends on (?)
end
end
Gibt es eine Möglichkeit, eine Aufgabe so aufzurufen, als wäre es eine Methode? Oder wie kann ich etwas Ähnliches erreichen?
Rake::Task["build"].invoke
kann viel leistungsfähiger sein als die Verwendung, system rake build
da kein neuer Thread erstellt und die Rails-Umgebung geladen werden muss, was system rake build
zu tun ist.