diff --git a/Rakefile b/Rakefile index 5c5bce13..1c36edac 100644 --- a/Rakefile +++ b/Rakefile @@ -33,3 +33,6 @@ task 'travis-api.gemspec' do end task default: 'travis-api.gemspec' + +tasks_path = File.expand_path('../lib/tasks/*.rake', __FILE__) +Dir.glob(tasks_path).each { |r| import r } diff --git a/lib/tasks/build_update_pull_request_data.rake b/lib/tasks/build_update_pull_request_data.rake new file mode 100644 index 00000000..b66b4d90 --- /dev/null +++ b/lib/tasks/build_update_pull_request_data.rake @@ -0,0 +1,21 @@ +namespace :build do + namespace :migrate do + task :pull_request_data do + require 'travis' + Travis::Database.connect + + Build.pull_requests.includes(:request).find_in_batches do |builds| + Build.transaction do + builds.each do |build| + attrs = { + :pull_request_number => build.request.pull_request_number, + :pull_request_title => build.request.pull_request_title + } + + Build.where(id: build.id).update_all(attrs) + end + end + end + end + end +end