Вы уже ответили на свой вопрос:
Либо вы используете capistrano (рекомендуемый способ), либо вы пишете свои собственные пользовательские грабли Задачи, которые делают то, что вы хотите.
Написание Rake-задач не представляет собой ничего сложного, вы просто определяете задачи, которые зависят друг от друга для каждого этапа развертывания, а затем запускаете их.
Помните: Rake-задачи - это просто Ruby, и поэтому вы можете использовать любой Gem, который соответствует вашим потребностям.
Только если вы немного подробнее расскажете о том, какие задачи вы хотите выполнить во время развертывания, я могу начать рекомендовать Gems или какие задачи вам может понадобиться написать.
Статья Мартина Фаулера о граблях: http://martinfowler.com/articles/rake.html
Обычно файл Rake выглядит примерно так:
task :default => [:test]
task :test do
# You can write regular ruby here and do anything you want
puts "Foo"
end
task :dependant => [:test] do
# This task will automatically make sure task test is run before running.
puts "Hello World"
end