Method: Rails::Generators::Actions#rakefile

Defined in:
railties/lib/rails/generators/actions.rb

#rakefile(filename, data = nil) ⇒ Object

Creates a Rake tasks file in lib/tasks/. The code can be specified as an argument or as the return value of the block.

rakefile "bootstrap.rake", <<~RUBY
  task :bootstrap do
    puts "Boots! Boots! Boots!"
  end
RUBY

rakefile "bootstrap.rake" do
  project = ask("What is the UNIX name of your project?")

  <<~RUBY
    namespace :#{project} do
      task :bootstrap do
        puts "Boots! Boots! Boots!"
      end
    end
  RUBY
end


302
303
304
305
306
# File 'railties/lib/rails/generators/actions.rb', line 302

def rakefile(filename, data = nil)
  log :rakefile, filename
  data ||= yield if block_given?
  create_file("lib/tasks/#{filename}", optimize_indentation(data), verbose: false)
end