Running migrations through rake task

I want to run all the migrations on all my databases. For this, I have a task called run_migrations. Consider this code:

desc 'Runs migrations on all databases'   task :run_migrations => :environment do     [       'development',       'test',       'production'     ].each do |environment|       ENV['RAILS_ENV'] = environment       Rake::Task['db:migrate'].execute('')       system "RAILS_ENV=#{environment} rake db:migrate"     end   end

This runs migrations only for the development database because further calls to execute the task are ignored. Is there any way to force the execution of the Rake task?

Regards, Mohsin