Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

My rake task is not showing up in rake -T

I don't know wtf is going on but I just created a new Rails app and can't get any rake tasks to work or show up in $ rake -T

lib/tasks/hello.rake

namespace :hello do 
  desc "hello"
  task :you do 
    puts "hello"
  end
end

$ rake -T

it does not show up in there

$ rake hello:you

rake aborted! Don't know how to build task 'hello:you' (see --tasks)

Gemfile

source 'https://rubygems.org'

# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '4.2.2'
# Use sqlite3 as the database for Active Record
gem 'sqlite3'
# Use SCSS for stylesheets
gem 'sass-rails', '~> 5.0'
# Use Uglifier as compressor for JavaScript assets
gem 'uglifier', '>= 1.3.0'
# Use CoffeeScript for .coffee assets and views
gem 'coffee-rails', '~> 4.1.0'
# See https://github.com/rails/execjs#readme for more supported runtimes
# gem 'therubyracer', platforms: :ruby

# Use jquery as the JavaScript library
gem 'jquery-rails'
# Turbolinks makes following links in your web application faster. Read more: https://github.com/rails/turbolinks
gem 'turbolinks'
# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
gem 'jbuilder', '~> 2.0'
# bundle exec rake doc:rails generates the API under doc/api.
gem 'sdoc', '~> 0.4.0', group: :doc

gem 'carrierwave', github: 'carrierwaveuploader/carrierwave'
gem 'mini_magick',             '3.8.0'
# Use ActiveModel has_secure_password
# gem 'bcrypt', '~> 3.1.7'

# Use Unicorn as the app server
# gem 'unicorn'

# Use Capistrano for deployment
# gem 'capistrano-rails', group: :development

group :development, :test do
  # Call 'byebug' anywhere in the code to stop execution and get a debugger console
  gem 'byebug'
end

group :development do
  # Access an IRB console on exception pages or by using <%= console %> in views
  gem 'web-console', '~> 2.0'

  # Spring speeds up development by keeping your application running in the background. Read more: https://github.com/rails/spring
  gem 'spring'
end
like image 328
Timmy Von Heiss Avatar asked May 20 '17 13:05

Timmy Von Heiss


People also ask

Could not detect rake tasks?

A common cause for Rake tasks failing to be detected, is an error in the Rakefile. The most common error is requiring a library that is in the development or test group of the Gemfile and therefore not available when deploying to production.

Does rake come with Ruby?

Rake can be downloaded and included in ruby projects as a ruby gem.

What is a rake task?

Rake is a software task management and build automation tool created by Jim Weirich. It allows the user to specify tasks and describe dependencies as well as to group tasks in a namespace. It is similar in to SCons and Make.


2 Answers

It could be that you've given the task the .rb extension instead of .rake

like image 79
Chris Harrison Avatar answered Oct 11 '22 08:10

Chris Harrison


If you want a really complete list of all rake tasks, you need to run rake -T -A.

I hope that helps.

like image 26
Fatos Morina Avatar answered Oct 11 '22 06:10

Fatos Morina