Method: Jets::Commands::RakeTasks.load_webpacker_tasks

Defined in:
lib/jets/commands/rake_tasks.rb

.load_webpacker_tasksObject

Handles load errors gracefuly per Booter.required_bundle_gems comments.



27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
# File 'lib/jets/commands/rake_tasks.rb', line 27

def load_webpacker_tasks
  begin
    require "webpacker"
  rescue LoadError
    # puts "WARN: unable to load gem. #{$!}. Running with 'bundle exec' might fix this warning."
    # Happens whne user calls jets help outside the jets project folder.
    return
  end

  Webpacker::RakeTasks.load!
  # Thanks: https://coderwall.com/p/qhdhgw/adding-a-post-execution-hook-to-the-rails-db-migrate-task
  # Enchancing in case the user runs webpacker:install afterwards
  # instead of jets new.
  Rake::Task['webpacker:install'].enhance do
    # FORCE from rake webpacker:install FORCE=1
    # using ENV because rake webpacker:install is a rake task
    args ||= []
    args += ["--force"] if ENV['FORCE']
    Jets::Commands::WebpackerTemplate.start(args)
  end
end