summaryrefslogtreecommitdiffstats
path: root/lib/tasks
diff options
context:
space:
mode:
authorJean-Baptiste Barth <jeanbaptiste.barth@gmail.com>2013-05-06 20:39:03 +0000
committerJean-Baptiste Barth <jeanbaptiste.barth@gmail.com>2013-05-06 20:39:03 +0000
commit2b3111122e0a138b282cdc478e341c0774ad19ae (patch)
tree2d12bdff7a53bcc41c34eaf15b383e3623d97ac3 /lib/tasks
parentdb3b3d3a1c4ac9b51253fc0fe957a556b3499294 (diff)
downloadredmine-2b3111122e0a138b282cdc478e341c0774ad19ae.tar.gz
redmine-2b3111122e0a138b282cdc478e341c0774ad19ae.zip
Ensure Tranc and Mantis importers don't reset global notification settings (#13989).
Contributed by Brandon Valentine git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@11795 e93f8b46-1217-0410-a6f0-8f06a7374b81
Diffstat (limited to 'lib/tasks')
-rw-r--r--lib/tasks/migrate_from_mantis.rake15
-rw-r--r--lib/tasks/migrate_from_trac.rake14
2 files changed, 21 insertions, 8 deletions
diff --git a/lib/tasks/migrate_from_mantis.rake b/lib/tasks/migrate_from_mantis.rake
index 465ca9958..ae8d3bb66 100644
--- a/lib/tasks/migrate_from_mantis.rake
+++ b/lib/tasks/migrate_from_mantis.rake
@@ -503,10 +503,17 @@ task :migrate_from_mantis => :environment do
# Make sure bugs can refer bugs in other projects
Setting.cross_project_issue_relations = 1 if Setting.respond_to? 'cross_project_issue_relations'
- # Turn off email notifications
- Setting.notified_events = []
+ old_notified_events = Setting.notified_events
+ begin
+ # Turn off email notifications temporarily
+ Setting.notified_events = []
+ # Run the migration
+ MantisMigrate.establish_connection db_params
+ MantisMigrate.migrate
+ ensure
+ # Restore previous notification settings even if the migration fails
+ Setting.notified_events = old_notified_events
+ end
- MantisMigrate.establish_connection db_params
- MantisMigrate.migrate
end
end
diff --git a/lib/tasks/migrate_from_trac.rake b/lib/tasks/migrate_from_trac.rake
index 923b0c620..406a5b221 100644
--- a/lib/tasks/migrate_from_trac.rake
+++ b/lib/tasks/migrate_from_trac.rake
@@ -762,10 +762,16 @@ namespace :redmine do
prompt('Target project identifier') {|identifier| TracMigrate.target_project_identifier identifier}
puts
- # Turn off email notifications
- Setting.notified_events = []
-
- TracMigrate.migrate
+ old_notified_events = Setting.notified_events
+ begin
+ # Turn off email notifications temporarily
+ Setting.notified_events = []
+ # Run the migration
+ TracMigrate.migrate
+ ensure
+ # Restore previous notification settings even if the migration fails
+ Setting.notified_events = old_notified_events
+ end
end
end