diff --git a/docs/backend/data-update-scripts.md b/docs/backend/data-update-scripts.md index ceb7e1b5e..77603ade5 100644 --- a/docs/backend/data-update-scripts.md +++ b/docs/backend/data-update-scripts.md @@ -45,7 +45,7 @@ The generator will also automatically create the corresponding spec file. ```ruby require "rails_helper" require Rails.root.join( - "20201103042915_backfill_column_for_articles.rb", + "lib/data_updates/20201103042915_backfill_column_for_articles.rb", ) describe DataUpdateScripts::BackfillColumnForArticles do diff --git a/lib/generators/data_update/data_update_generator.rb b/lib/generators/data_update/data_update_generator.rb index 40b92be8d..65d510446 100644 --- a/lib/generators/data_update/data_update_generator.rb +++ b/lib/generators/data_update/data_update_generator.rb @@ -3,10 +3,7 @@ class DataUpdateGenerator < Rails::Generators::NamedBase class_option :spec, type: :boolean, default: true def create_data_update_file - template( - "data_update.rb.tt", - File.join("lib", "data_update_scripts", class_path, script_name), - ) + template("data_update.rb.tt", script_path) return unless options["spec"] @@ -16,7 +13,10 @@ class DataUpdateGenerator < Rails::Generators::NamedBase ) end - def script_name - @script_name ||= "#{Time.current.utc.strftime('%Y%m%d%H%M%S')}_#{file_name}.rb" + def script_path + @script_path ||= begin + script_name = "#{Time.current.utc.strftime('%Y%m%d%H%M%S')}_#{file_name}.rb" + File.join("lib", "data_update_scripts", class_path, script_name) + end end end diff --git a/lib/generators/data_update/templates/data_update_spec.rb.tt b/lib/generators/data_update/templates/data_update_spec.rb.tt index f4004910c..4b9af4b03 100644 --- a/lib/generators/data_update/templates/data_update_spec.rb.tt +++ b/lib/generators/data_update/templates/data_update_spec.rb.tt @@ -1,6 +1,6 @@ require "rails_helper" require Rails.root.join( - "<%= script_name %>", + "<%= script_path %>", ) describe DataUpdateScripts::<%= class_name %> do