Описание тега rake
Rake использует Rakefiles (см. Makefiles), определенный в чистом Ruby, утилите сборки, созданной покойным Джимом Вейрихом. Поддерживаются шаблоны правил для синтеза неявных задач, и разработчики могут легко определять цепочки зависимостей до и после задачи. Rake включает библиотеку предварительно упакованных задач, чтобы упростить создание Rake-файлов.
Rake использует анонимные функциональные блоки Ruby для определения различных задач, позволяя использовать синтаксис Ruby. Он имеет библиотеку общих задач: например, функции для выполнения общих задач по работе с файлами и библиотеку для удаления скомпилированных файлов ("чистая" задача). Как и Make, Rake также может синтезировать задачи на основе шаблонов: например, автоматически создавать задачу компиляции файлов на основе шаблонов имен файлов. Rake теперь является частью стандартной библиотеки, начиная с версии Ruby 1.9.
Пример файла Rake
namespace :pick do
desc "Pick a random user as the winner"
task :winner => :environment do
puts "Winner: #{pick(User).name}"
end
desc "Pick a random product as the prize"
task :prize => :environment do
puts "Prize: #{pick(Product).name}"
end
desc "Pick a random prize and winner"
task :all => [:prize, :winner]
def pick(model_class)
model_class.find(:first, :order => 'RAND()')
end
end
Полезные ссылки
- Официальная документация по Rake
- Учебник Лукаша Вробеля по рейку
- Учебник Джейсона Сейфера по граблям
- Ссылка на Github для рейка
Теги для конкретной реализации
Вы можете указать свой вопрос, добавив реализацию, которую вы использовали, в качестве тега.