pytanie takie, czy za pomocą polecenia rake jest możliwość przygotowania takiego jakby autoexec’a, ktory by potrafil uruchamiac odpowiednie bloki zadań, cos w stylu tego co ponizej:
Wybierz co chcesz zrobic:
0 - wyswietl pomoc (i tutaj wyswietla pomoc w konsoli)
1 - zrob cos (robi cos)
2 - zrob cos 2 (robi cos 2)
3 - wyjdz (zamyka zadanie rake’owe)
chcialem moc w tych liczbach moc zawrzec kilka zadan rake’owych i wywolujac jedno zadanie rake do:cossss mialbym wyswietlone takie menu i dopiero po wyborze odpowiedniego numerka mialbym wykonana dana akcje (zadanie)
jezeli ktos gdzies takie cos wykorystuje to bede wdzieczny za wskazowki
Może wystarczy parametr tak jak w railsowym db:migrate:up/db:migrate:down?
rake db:migrate:up VERSION=20090716103439
W tasku jakiś switch czy if/elsif, a jak nie ma parametru to raise.
desc 'Runs the "up" for a given migration VERSION.'
task :up => :environment do
version = ENV["VERSION"] ? ENV["VERSION"].to_i : nil
raise "VERSION is required" unless version
ActiveRecord::Migrator.run(:up, "db/migrate/", version)
Rake::Task["db:schema:dump"].invoke if ActiveRecord::Base.schema_format == :ruby
end
no wlasnie, chcialbym wywyolywac rake’a bez parametrow, a dopiero jak “zaskoczy”, to zeby zadal pytanie “co chcesz zrobic” - wtedy czeka na nacisniecie (wpisanie) liczby i dopiero wtedy wykonuje okreslone zadanie… z ENV probowalem, ale w miare możliwości chcialem moc wyswietlic opis (pomoc) zeby ktos wiedzial ze jak wywola rake db:cossss to tam wszystko zostanie opisane co moze zrobic…
ze moze wykonac cos co jest pod 1, cos co jest pod 2, albo wyjsc z zadania…
jesli sie nie da, to trudno, jakos sie nie upieram… tak dla kogos kto wie co ma w rake’u podac to dziala, ale dla kogos innego co ma to wywolac, to nie wie jakie moze parametry zastosowac… tylko w tym widze problem…
Można (taski rake to normalny kod Ruby), ale to się kłóci z filozofią rake.
Do podejmowania decyzji co dokładnie zrobić są właśnie parametry, przestrzenie nazw dla tasków oraz ich opisy…