9

I have a gem with a default configuration YAML file, some_config.yml. I want to create a rake task to copy that file into the config/ directory of my rails application. How can I achieve this?

neojin
  • 212
  • 1
  • 6

1 Answers1

11

If we assume the target gem is in your Gemfile and you want to include the Rake task in your Rails Rakefile, then you could try something like:

namespace :config do
  # desc "Copy the config"
  task :copy do
    source = File.join(Gem.loaded_specs["myGem"].full_gem_path, "config", "config.yml")
    target = File.join(Rails.root, "config", "myGemConfig.yml")
    FileUtils.cp_r source, target
  end
end
derwiki
  • 51
  • 7
Martin Harrigan
  • 1,044
  • 11
  • 28