From 4ab739a72a30911e8a72abeb19428434cbc03a2e Mon Sep 17 00:00:00 2001 From: David Heinemeier Hansson Date: Mon, 17 Sep 2018 16:30:33 -0700 Subject: Skeleton --- lib/tasks/action_mailbox.rake | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 lib/tasks/action_mailbox.rake (limited to 'lib/tasks/action_mailbox.rake') diff --git a/lib/tasks/action_mailbox.rake b/lib/tasks/action_mailbox.rake new file mode 100644 index 0000000000..58dd59d9eb --- /dev/null +++ b/lib/tasks/action_mailbox.rake @@ -0,0 +1,30 @@ +# frozen_string_literal: true + +namespace :action_mailbox do + # Prevent migration installation task from showing up twice. + Rake::Task["install:migrations"].clear_comments + + desc "Copy over the migration and fixtures" + task install: %w( environment active_storage:install copy_migration copy_fixtures ) + + task :copy_migration do + if Rake::Task.task_defined?("action_mailbox:install:migrations") + Rake::Task["action_mailbox:install:migrations"].invoke + else + Rake::Task["app:action_mailbox:install:migrations"].invoke + end + end + + FIXTURE_TEMPLATE_PATH = File.expand_path("../templates/fixtures.yml", __dir__) + FIXTURE_APP_DIR_PATH = Rails.root.join("test/fixtures/action_mailbox") + FIXTURE_APP_PATH = FIXTURE_APP_DIR_PATH.join("inbound_emails.yml") + + task :copy_fixtures do + if File.exist?(FIXTURE_APP_PATH) + puts "Won't copy Action Mailbox fixtures as it already exists" + else + FileUtils.mkdir FIXTURE_APP_DIR_PATH + FileUtils.cp FIXTURE_TEMPLATE_PATH, FIXTURE_APP_PATH + end + end +end -- cgit v1.2.3