summaryrefslogtreecommitdiffstats
path: root/db/migrate/20120115143126_set_default_repositories.rb
blob: 38e06f0ad9dc44f2528973f740e12e6f42ec5384 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
class SetDefaultRepositories < ActiveRecord::Migration
  def self.up
    Repository.update_all(["is_default = ?", false])
    # Sets the last repository as default in case multiple repositories exist for the same project
    Repository.connection.select_values("SELECT r.id FROM #{Repository.table_name} r" +
      " WHERE r.id = (SELECT max(r1.id) FROM #{Repository.table_name} r1 WHERE r1.project_id = r.project_id)").each do |i|
        Repository.where(["id = ?", i]).update_all(["is_default = ?", true])
    end
  end

  def self.down
    Repository.update_all(["is_default = ?", false])
  end
end