Class: WayOfWorking::RakeTasks::Generators::Init

Inherits:
Thor::Group
  • Object
show all
Includes:
Thor::Actions
Defined in:
lib/way_of_working/rake_tasks/generators/init.rb

Overview

This generator installs way of working rake tasks into this project

Constant Summary collapse

RAKEFILE_FILENAME =
'Rakefile'
RAILS_LOC =
%r{require_relative ["']config/application["']\n}
BUNDLER_LOC =
%r{require ["']bundler/gem_tasks["']\n}

Instance Method Summary collapse

Instance Method Details

#add_to_rakefileObject



14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/way_of_working/rake_tasks/generators/init.rb', line 14

def add_to_rakefile
  case rakefile_type
  when :rails
    inject_into_file RAKEFILE_FILENAME,
                     "require 'way_of_working/tasks' if Rails.env.development? " \
                     "|| Rails.env.test?\n",
                     after: RAILS_LOC
  when :bundler
    inject_into_file RAKEFILE_FILENAME,
                     "require 'way_of_working/tasks'\n",
                     after: BUNDLER_LOC
  when :none
    create_file RAKEFILE_FILENAME, "\nrequire 'way_of_working/tasks'\n"
  else
    append_to_file RAKEFILE_FILENAME, "\nrequire 'way_of_working/tasks'\n"
  end
end