[issue #620] Fixed migration && BuildList#actualize_packages.

This commit is contained in:
George Vinogradov 2012-08-30 20:19:12 +04:00
parent 88d0e358ce
commit 68b86ba09a
7 changed files with 62 additions and 64 deletions

View File

@ -6,8 +6,7 @@ class Platforms::MaintainersController < ApplicationController
def index def index
@maintainers = BuildList::Package.actual.by_platform(@platform) @maintainers = BuildList::Package.actual.by_platform(@platform)
.order('lower(name) ASC') .order('lower(name) ASC, length(name) ASC')
.order('length(name) ASC')
.includes(:project) .includes(:project)
@maintainers = @maintainers.find_by_name(params[:q]) if params[:q].present? @maintainers = @maintainers.find_by_name(params[:q]) if params[:q].present?
@maintainers = @maintainers.paginate(:page => params[:page]) @maintainers = @maintainers.paginate(:page => params[:page])

View File

@ -88,8 +88,7 @@ class Projects::ProjectsController < Projects::BaseController
end end
def autocomplete_maintainers def autocomplete_maintainers
term = params[:term] term, limit = params[:term], params[:limit] || 10
limit = 10
items = User.member_of_project(@project) items = User.member_of_project(@project)
.where("users.name ILIKE ? OR users.uname ILIKE ?", "%#{term}%", "%#{term}%") .where("users.name ILIKE ? OR users.uname ILIKE ?", "%#{term}%", "%#{term}%")
.limit(limit).map { |u| {:value => u.fullname, :label => u.fullname, :id => u.id} } .limit(limit).map { |u| {:value => u.fullname, :label => u.fullname, :id => u.id} }

View File

@ -208,8 +208,8 @@ class BuildList < ActiveRecord::Base
.for_platform(self.build_for_platform_id) .for_platform(self.build_for_platform_id)
.scoped_to_arch(self.arch_id) .scoped_to_arch(self.arch_id)
.for_status(BUILD_PUBLISHED) .for_status(BUILD_PUBLISHED)
.recent.first.packages .recent[-2].try(:packages) # packages from previous build_list
old_pkgs.update_all(:actual => false) old_pkgs.update_all(:actual => false) if old_pkgs
self.packages.update_all(:actual => true) self.packages.update_all(:actual => true)
end end
end end

View File

@ -43,10 +43,10 @@ class Project < ActiveRecord::Base
scope :addable_to_repository, lambda { |repository_id| where %Q( scope :addable_to_repository, lambda { |repository_id| where %Q(
projects.id NOT IN ( projects.id NOT IN (
SELECT SELECT
project_to_repositories.project_id ptr.project_id
FROM FROM
project_to_repositories project_to_repositories AS ptr
WHERE (project_to_repositories.repository_id = #{ repository_id }) WHERE (ptr.repository_id = #{ repository_id })
) )
) } ) }

View File

@ -1,20 +1,20 @@
ru: ru:
layout: layout:
maintainers: maintainers:
list_header: Мэйнтэйнеры list_header: Майнтейнеры
search_by_package: Искать по имени пакета search_by_package: Искать по имени пакета
flash: flash:
maintainer: maintainer:
saved: Мэйнтэйнер успешно сохранен saved: Майнтейнер успешно сохранен
created: Мэйнтэйнер успешно добавлен created: Майнтейнер успешно добавлен
save_error: Не удалось сохранить мэйнтэйнера save_error: Не удалось сохранить майнтейнера
create_error: Не удалось создать мэйнтэйнера create_error: Не удалось создать майнтейнера
destroyed: Мэйнтэйнер успешно удален destroyed: Майнтейнер успешно удален
activerecord: activerecord:
models: models:
maintainer: Мэйнтэйнер maintainer: Майнтейнер
attributes: attributes:
maintainer: maintainer:
package_name: Пакет package_name: Пакет

View File

@ -1,14 +1,14 @@
class AddActualToBuildListPackages < ActiveRecord::Migration class AddActualToBuildListPackages < ActiveRecord::Migration
def self.up def self.up
add_column :build_list_packages, :actual, :boolean, :default => false add_column :build_list_packages, :actual, :boolean, :default => false
add_index :build_list_packages, [:actual, :platform_id], :name => :actual_platform_packages add_index :build_list_packages, [:actual, :platform_id]
add_index :build_lists, [:project_id, :save_to_repository_id, :build_for_platform_id, :arch_id], add_index :build_lists, [:project_id, :save_to_repository_id, :build_for_platform_id, :arch_id],
:name => :maintainer_search_index :name => :maintainer_search_index
end end
def self.down def self.down
remove_index :build_list_packages, [:actual, :platform_id]
remove_column :build_list_packages, :actual remove_column :build_list_packages, :actual
remove_index :build_list_packages, [:actual, :platform_id], :name => :actual_platform_packages remove_index :build_lists, :name => :maintainer_search_index
remove_index :build_lists, [:project_id, :save_to_repository_id, :build_for_platform_id, :arch_id]
end end
end end

View File

@ -17,8 +17,8 @@ ActiveRecord::Schema.define(:version => 20120822210712) do
t.integer "user_id", :null => false t.integer "user_id", :null => false
t.string "kind" t.string "kind"
t.text "data" t.text "data"
t.datetime "created_at" t.datetime "created_at", :null => false
t.datetime "updated_at" t.datetime "updated_at", :null => false
end end
create_table "advisories", :force => true do |t| create_table "advisories", :force => true do |t|
@ -53,8 +53,8 @@ ActiveRecord::Schema.define(:version => 20120822210712) do
create_table "arches", :force => true do |t| create_table "arches", :force => true do |t|
t.string "name", :null => false t.string "name", :null => false
t.datetime "created_at" t.datetime "created_at", :null => false
t.datetime "updated_at" t.datetime "updated_at", :null => false
end end
add_index "arches", ["name"], :name => "index_arches_on_name", :unique => true add_index "arches", ["name"], :name => "index_arches_on_name", :unique => true
@ -63,8 +63,8 @@ ActiveRecord::Schema.define(:version => 20120822210712) do
t.integer "user_id" t.integer "user_id"
t.string "provider" t.string "provider"
t.string "uid" t.string "uid"
t.datetime "created_at" t.datetime "created_at", :null => false
t.datetime "updated_at" t.datetime "updated_at", :null => false
end end
add_index "authentications", ["provider", "uid"], :name => "index_authentications_on_provider_and_uid", :unique => true add_index "authentications", ["provider", "uid"], :name => "index_authentications_on_provider_and_uid", :unique => true
@ -75,8 +75,8 @@ ActiveRecord::Schema.define(:version => 20120822210712) do
t.integer "level" t.integer "level"
t.integer "status" t.integer "status"
t.integer "build_list_id" t.integer "build_list_id"
t.datetime "created_at" t.datetime "created_at", :null => false
t.datetime "updated_at" t.datetime "updated_at", :null => false
t.string "version" t.string "version"
end end
@ -96,7 +96,7 @@ ActiveRecord::Schema.define(:version => 20120822210712) do
t.boolean "actual", :default => false t.boolean "actual", :default => false
end end
add_index "build_list_packages", ["actual", "platform_id"], :name => "actual_platform_packages" add_index "build_list_packages", ["actual", "platform_id"], :name => "index_build_list_packages_on_actual_and_platform_id"
add_index "build_list_packages", ["build_list_id"], :name => "index_build_list_packages_on_build_list_id" add_index "build_list_packages", ["build_list_id"], :name => "index_build_list_packages_on_build_list_id"
add_index "build_list_packages", ["name", "project_id"], :name => "index_build_list_packages_on_name_and_project_id" add_index "build_list_packages", ["name", "project_id"], :name => "index_build_list_packages_on_name_and_project_id"
add_index "build_list_packages", ["platform_id"], :name => "index_build_list_packages_on_platform_id" add_index "build_list_packages", ["platform_id"], :name => "index_build_list_packages_on_platform_id"
@ -110,8 +110,8 @@ ActiveRecord::Schema.define(:version => 20120822210712) do
t.integer "project_id" t.integer "project_id"
t.integer "arch_id" t.integer "arch_id"
t.datetime "notified_at" t.datetime "notified_at"
t.datetime "created_at" t.datetime "created_at", :null => false
t.datetime "updated_at" t.datetime "updated_at", :null => false
t.boolean "is_circle", :default => false t.boolean "is_circle", :default => false
t.text "additional_repos" t.text "additional_repos"
t.string "name" t.string "name"
@ -142,8 +142,8 @@ ActiveRecord::Schema.define(:version => 20120822210712) do
t.string "commentable_type" t.string "commentable_type"
t.integer "user_id" t.integer "user_id"
t.text "body" t.text "body"
t.datetime "created_at" t.datetime "created_at", :null => false
t.datetime "updated_at" t.datetime "updated_at", :null => false
t.decimal "commentable_id", :precision => 50, :scale => 0 t.decimal "commentable_id", :precision => 50, :scale => 0
t.integer "project_id" t.integer "project_id"
end end
@ -160,8 +160,8 @@ ActiveRecord::Schema.define(:version => 20120822210712) do
t.string "controller" t.string "controller"
t.string "action" t.string "action"
t.text "message" t.text "message"
t.datetime "created_at" t.datetime "created_at", :null => false
t.datetime "updated_at" t.datetime "updated_at", :null => false
end end
create_table "flash_notifies", :force => true do |t| create_table "flash_notifies", :force => true do |t|
@ -175,8 +175,8 @@ ActiveRecord::Schema.define(:version => 20120822210712) do
create_table "groups", :force => true do |t| create_table "groups", :force => true do |t|
t.integer "owner_id" t.integer "owner_id"
t.datetime "created_at" t.datetime "created_at", :null => false
t.datetime "updated_at" t.datetime "updated_at", :null => false
t.string "uname" t.string "uname"
t.integer "own_projects_count", :default => 0, :null => false t.integer "own_projects_count", :default => 0, :null => false
t.text "description" t.text "description"
@ -189,8 +189,8 @@ ActiveRecord::Schema.define(:version => 20120822210712) do
t.string "title" t.string "title"
t.text "body" t.text "body"
t.string "status", :default => "open" t.string "status", :default => "open"
t.datetime "created_at" t.datetime "created_at", :null => false
t.datetime "updated_at" t.datetime "updated_at", :null => false
t.integer "user_id" t.integer "user_id"
t.datetime "closed_at" t.datetime "closed_at"
t.integer "closed_by" t.integer "closed_by"
@ -250,8 +250,8 @@ ActiveRecord::Schema.define(:version => 20120822210712) do
t.string "description" t.string "description"
t.string "name", :null => false t.string "name", :null => false
t.integer "parent_platform_id" t.integer "parent_platform_id"
t.datetime "created_at" t.datetime "created_at", :null => false
t.datetime "updated_at" t.datetime "updated_at", :null => false
t.boolean "released", :default => false, :null => false t.boolean "released", :default => false, :null => false
t.integer "owner_id" t.integer "owner_id"
t.string "owner_type" t.string "owner_type"
@ -266,16 +266,16 @@ ActiveRecord::Schema.define(:version => 20120822210712) do
t.integer "platform_id" t.integer "platform_id"
t.string "login" t.string "login"
t.string "password" t.string "password"
t.datetime "created_at" t.datetime "created_at", :null => false
t.datetime "updated_at" t.datetime "updated_at", :null => false
t.integer "user_id" t.integer "user_id"
end end
create_table "product_build_lists", :force => true do |t| create_table "product_build_lists", :force => true do |t|
t.integer "product_id" t.integer "product_id"
t.integer "status", :default => 2, :null => false t.integer "status", :default => 2, :null => false
t.datetime "created_at" t.datetime "created_at", :null => false
t.datetime "updated_at" t.datetime "updated_at", :null => false
end end
add_index "product_build_lists", ["product_id"], :name => "index_product_build_lists_on_product_id" add_index "product_build_lists", ["product_id"], :name => "index_product_build_lists_on_product_id"
@ -283,8 +283,8 @@ ActiveRecord::Schema.define(:version => 20120822210712) do
create_table "products", :force => true do |t| create_table "products", :force => true do |t|
t.string "name", :null => false t.string "name", :null => false
t.integer "platform_id", :null => false t.integer "platform_id", :null => false
t.datetime "created_at" t.datetime "created_at", :null => false
t.datetime "updated_at" t.datetime "updated_at", :null => false
t.text "build_script" t.text "build_script"
t.text "counter" t.text "counter"
t.text "ks" t.text "ks"
@ -303,8 +303,8 @@ ActiveRecord::Schema.define(:version => 20120822210712) do
t.string "name" t.string "name"
t.string "version" t.string "version"
t.datetime "file_mtime" t.datetime "file_mtime"
t.datetime "created_at" t.datetime "created_at", :null => false
t.datetime "updated_at" t.datetime "updated_at", :null => false
t.integer "platform_id" t.integer "platform_id"
end end
@ -313,14 +313,14 @@ ActiveRecord::Schema.define(:version => 20120822210712) do
create_table "project_to_repositories", :force => true do |t| create_table "project_to_repositories", :force => true do |t|
t.integer "project_id" t.integer "project_id"
t.integer "repository_id" t.integer "repository_id"
t.datetime "created_at" t.datetime "created_at", :null => false
t.datetime "updated_at" t.datetime "updated_at", :null => false
end end
create_table "projects", :force => true do |t| create_table "projects", :force => true do |t|
t.string "name" t.string "name"
t.datetime "created_at" t.datetime "created_at", :null => false
t.datetime "updated_at" t.datetime "updated_at", :null => false
t.integer "owner_id" t.integer "owner_id"
t.string "owner_type" t.string "owner_type"
t.string "visibility", :default => "open" t.string "visibility", :default => "open"
@ -347,8 +347,8 @@ ActiveRecord::Schema.define(:version => 20120822210712) do
t.string "token" t.string "token"
t.boolean "approved", :default => false t.boolean "approved", :default => false
t.boolean "rejected", :default => false t.boolean "rejected", :default => false
t.datetime "created_at" t.datetime "created_at", :null => false
t.datetime "updated_at" t.datetime "updated_at", :null => false
t.string "interest" t.string "interest"
t.text "more" t.text "more"
end end
@ -361,16 +361,16 @@ ActiveRecord::Schema.define(:version => 20120822210712) do
t.string "actor_type" t.string "actor_type"
t.integer "target_id" t.integer "target_id"
t.string "target_type" t.string "target_type"
t.datetime "created_at" t.datetime "created_at", :null => false
t.datetime "updated_at" t.datetime "updated_at", :null => false
t.string "role" t.string "role"
end end
create_table "repositories", :force => true do |t| create_table "repositories", :force => true do |t|
t.string "description", :null => false t.string "description", :null => false
t.integer "platform_id", :null => false t.integer "platform_id", :null => false
t.datetime "created_at" t.datetime "created_at", :null => false
t.datetime "updated_at" t.datetime "updated_at", :null => false
t.string "name", :null => false t.string "name", :null => false
end end
@ -381,8 +381,8 @@ ActiveRecord::Schema.define(:version => 20120822210712) do
t.boolean "new_comment_reply", :default => true t.boolean "new_comment_reply", :default => true
t.boolean "new_issue", :default => true t.boolean "new_issue", :default => true
t.boolean "issue_assign", :default => true t.boolean "issue_assign", :default => true
t.datetime "created_at" t.datetime "created_at", :null => false
t.datetime "updated_at" t.datetime "updated_at", :null => false
t.boolean "new_comment_commit_owner", :default => true t.boolean "new_comment_commit_owner", :default => true
t.boolean "new_comment_commit_repo_owner", :default => true t.boolean "new_comment_commit_repo_owner", :default => true
t.boolean "new_comment_commit_commentor", :default => true t.boolean "new_comment_commit_commentor", :default => true
@ -391,8 +391,8 @@ ActiveRecord::Schema.define(:version => 20120822210712) do
create_table "subscribes", :force => true do |t| create_table "subscribes", :force => true do |t|
t.string "subscribeable_type" t.string "subscribeable_type"
t.integer "user_id" t.integer "user_id"
t.datetime "created_at" t.datetime "created_at", :null => false
t.datetime "updated_at" t.datetime "updated_at", :null => false
t.boolean "status", :default => true t.boolean "status", :default => true
t.integer "project_id" t.integer "project_id"
t.decimal "subscribeable_id", :precision => 50, :scale => 0 t.decimal "subscribeable_id", :precision => 50, :scale => 0
@ -405,8 +405,8 @@ ActiveRecord::Schema.define(:version => 20120822210712) do
t.string "reset_password_token" t.string "reset_password_token"
t.datetime "reset_password_sent_at" t.datetime "reset_password_sent_at"
t.datetime "remember_created_at" t.datetime "remember_created_at"
t.datetime "created_at" t.datetime "created_at", :null => false
t.datetime "updated_at" t.datetime "updated_at", :null => false
t.text "ssh_key" t.text "ssh_key"
t.string "uname" t.string "uname"
t.string "role" t.string "role"