#778: merge master and 753-remove-xml-rpc into branch
This commit is contained in:
commit
8e63d78f77
|
@ -26,6 +26,7 @@ class Api::V1::BuildListsController < Api::V1::BaseController
|
||||||
|
|
||||||
@build_list.user = current_user
|
@build_list.user = current_user
|
||||||
@build_list.priority = current_user.build_priority # User builds more priority than mass rebuild with zero priority
|
@build_list.priority = current_user.build_priority # User builds more priority than mass rebuild with zero priority
|
||||||
|
@build_list.new_core = BuildList.has_access_to_new_core?(current_user) && bl_params[:new_core] == '1'
|
||||||
|
|
||||||
if @build_list.save
|
if @build_list.save
|
||||||
render :action => 'show'
|
render :action => 'show'
|
||||||
|
|
|
@ -44,6 +44,7 @@ class Platforms::ProductBuildListsController < Platforms::BaseController
|
||||||
def create
|
def create
|
||||||
pbl = @product.product_build_lists.new params[:product_build_list]
|
pbl = @product.product_build_lists.new params[:product_build_list]
|
||||||
pbl.project = @product.project
|
pbl.project = @product.project
|
||||||
|
pbl.user = current_user
|
||||||
pbl.base_url = "http://#{request.host_with_port}"
|
pbl.base_url = "http://#{request.host_with_port}"
|
||||||
|
|
||||||
if pbl.save
|
if pbl.save
|
||||||
|
|
|
@ -30,8 +30,8 @@ class Platform < ActiveRecord::Base
|
||||||
end
|
end
|
||||||
}
|
}
|
||||||
|
|
||||||
after_create :create_directory
|
before_create :create_directory
|
||||||
before_destroy :destroy_directory
|
before_destroy :delete_destroy
|
||||||
|
|
||||||
after_update :freeze_platform_and_update_repos
|
after_update :freeze_platform_and_update_repos
|
||||||
after_update :update_owner_relation
|
after_update :update_owner_relation
|
||||||
|
@ -57,8 +57,7 @@ class Platform < ActiveRecord::Base
|
||||||
system("rm -Rf #{ APP_CONFIG['root_path'] }/platforms/#{ self.name }/repository/*")
|
system("rm -Rf #{ APP_CONFIG['root_path'] }/platforms/#{ self.name }/repository/*")
|
||||||
end
|
end
|
||||||
|
|
||||||
def urpmi_list(host = nil, pair = nil, add_commands = true, repository_name = 'main')
|
def urpmi_list(host, pair = nil)
|
||||||
host ||= default_host
|
|
||||||
blank_pair = {:login => 'login', :pass => 'password'}
|
blank_pair = {:login => 'login', :pass => 'password'}
|
||||||
pair = blank_pair if pair.blank?
|
pair = blank_pair if pair.blank?
|
||||||
urpmi_commands = ActiveSupport::OrderedHash.new
|
urpmi_commands = ActiveSupport::OrderedHash.new
|
||||||
|
@ -68,10 +67,8 @@ class Platform < ActiveRecord::Base
|
||||||
local_pair = pl.id != self.id ? blank_pair : pair
|
local_pair = pl.id != self.id ? blank_pair : pair
|
||||||
head = hidden? ? "http://#{local_pair[:login]}@#{local_pair[:pass]}:#{host}/private/" : "http://#{host}/downloads/"
|
head = hidden? ? "http://#{local_pair[:login]}@#{local_pair[:pass]}:#{host}/private/" : "http://#{host}/downloads/"
|
||||||
Arch.all.each do |arch|
|
Arch.all.each do |arch|
|
||||||
tail = "/#{arch.name}/#{repository_name}/release"
|
tail = "/#{arch.name}/main/release"
|
||||||
command = add_commands ? "urpmi.addmedia #{name} " : ''
|
urpmi_commands[pl.name][arch.name] = "urpmi.addmedia #{name} #{head}#{name}/repository/#{pl.name}#{tail}"
|
||||||
command << "#{head}#{name}/repository/#{pl.name}#{tail}"
|
|
||||||
urpmi_commands[pl.name][arch.name] = command
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -95,7 +92,7 @@ class Platform < ActiveRecord::Base
|
||||||
end
|
end
|
||||||
|
|
||||||
def prefix_url(pub, options = {})
|
def prefix_url(pub, options = {})
|
||||||
options[:host] ||= default_host
|
options[:host] ||= EventLog.current_controller.request.host_with_port rescue ::Rosa::Application.config.action_mailer.default_url_options[:host]
|
||||||
pub ? "http://#{options[:host]}/downloads" : "http://#{options[:login]}:#{options[:password]}@#{options[:host]}/private"
|
pub ? "http://#{options[:host]}/downloads" : "http://#{options[:login]}:#{options[:password]}@#{options[:host]}/private"
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -142,7 +139,7 @@ class Platform < ActiveRecord::Base
|
||||||
|
|
||||||
def full_clone(attrs = {})
|
def full_clone(attrs = {})
|
||||||
base_clone(attrs).tap do |c|
|
base_clone(attrs).tap do |c|
|
||||||
with_skip {c.save} and c.clone_relations(self) and c.xml_rpc_clone # later with resque
|
with_skip {c.save} and c.clone_relations(self) and c.fs_clone # later with resque
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -156,6 +153,10 @@ class Platform < ActiveRecord::Base
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def create_directory
|
||||||
|
system("sudo mkdir -p -m 0777 #{build_path [name, 'repositories']}")
|
||||||
|
end
|
||||||
|
|
||||||
def symlink_directory
|
def symlink_directory
|
||||||
# umount_directory_for_rsync # TODO ignore errors
|
# umount_directory_for_rsync # TODO ignore errors
|
||||||
system("ln -s #{path} #{symlink_path}")
|
system("ln -s #{path} #{symlink_path}")
|
||||||
|
@ -176,6 +177,33 @@ class Platform < ActiveRecord::Base
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def build_all(opts={})
|
||||||
|
# Set options to build all need
|
||||||
|
repositories = opts[:repositories] ? self.repositories.where(:id => opts[:repositories]) : self.repositories
|
||||||
|
arches = opts[:arches] ? Arch.where(:id => opts[:arches]) : Arch.all
|
||||||
|
auto_publish = opts[:auto_publish] || false
|
||||||
|
user = opts[:user]
|
||||||
|
mass_build_id = opts[:mass_build_id]
|
||||||
|
mass_build = MassBuild.find mass_build_id
|
||||||
|
|
||||||
|
repositories.each do |rep|
|
||||||
|
rep.projects.find_in_batches(:batch_size => 2) do |group|
|
||||||
|
sleep 1
|
||||||
|
group.each do |p|
|
||||||
|
arches.map(&:name).each do |arch|
|
||||||
|
begin
|
||||||
|
return if mass_build.reload.stop_build
|
||||||
|
p.build_for(self, rep.id, user, arch, auto_publish, mass_build_id)
|
||||||
|
rescue RuntimeError, Exception
|
||||||
|
# p.async(:build_for, self, user, arch, auto_publish, mass_build_id) # TODO need this?
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
later :build_all, :loner => true, :queue => :clone_build
|
||||||
|
|
||||||
def destroy
|
def destroy
|
||||||
with_skip {super} # avoid cascade XML RPC requests
|
with_skip {super} # avoid cascade XML RPC requests
|
||||||
end
|
end
|
||||||
|
@ -183,40 +211,21 @@ class Platform < ActiveRecord::Base
|
||||||
|
|
||||||
protected
|
protected
|
||||||
|
|
||||||
def default_host
|
|
||||||
EventLog.current_controller.request.host_with_port rescue ::Rosa::Application.config.action_mailer.default_url_options[:host]
|
|
||||||
end
|
|
||||||
|
|
||||||
def build_path(dir)
|
def build_path(dir)
|
||||||
File.join(APP_CONFIG['root_path'], 'platforms', dir)
|
File.join(APP_CONFIG['root_path'], 'platforms', dir)
|
||||||
end
|
end
|
||||||
|
|
||||||
def create_directory
|
def detele_directory
|
||||||
Resque.enqueue(AbfWorker::FileSystemWorker,
|
FileUtils.rm_rf path
|
||||||
{:id => id, :action => 'create', :type => 'platform'})
|
|
||||||
return true
|
|
||||||
end
|
end
|
||||||
|
|
||||||
def destroy_directory
|
def fs_clone(old_name = parent.name, new_name = name)
|
||||||
Resque.enqueue(AbfWorker::FileSystemWorker,
|
FileUtils.cp_r "#{parent.path}/repository", path
|
||||||
{:id => id, :action => 'destroy', :type => 'platform'})
|
|
||||||
return true
|
|
||||||
end
|
end
|
||||||
|
later :fs_clone, :loner => true, :queue => :clone_build
|
||||||
def xml_rpc_clone(old_name = parent.name, new_name = name)
|
|
||||||
result = BuildServer.clone_platform new_name, old_name, APP_CONFIG['root_path'] + '/platforms'
|
|
||||||
if result == BuildServer::SUCCESS
|
|
||||||
return true
|
|
||||||
else
|
|
||||||
raise "Failed to clone platform #{old_name} with code #{result}. Path: #{build_path(old_name)} to platform #{new_name}"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
later :xml_rpc_clone, :loner => true, :queue => :clone_build
|
|
||||||
|
|
||||||
def freeze_platform_and_update_repos
|
def freeze_platform_and_update_repos
|
||||||
if released_changed? && released == true
|
if released_changed? && released == true
|
||||||
result = BuildServer.freeze(name)
|
|
||||||
raise "Failed freeze platform #{name} with code #{result}" if result != BuildServer::SUCCESS
|
|
||||||
repositories.update_all(:publish_without_qa => false)
|
repositories.update_all(:publish_without_qa => false)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -31,6 +31,7 @@ class ProductBuildList < ActiveRecord::Base
|
||||||
belongs_to :product
|
belongs_to :product
|
||||||
belongs_to :project
|
belongs_to :project
|
||||||
belongs_to :arch
|
belongs_to :arch
|
||||||
|
belongs_to :user
|
||||||
|
|
||||||
|
|
||||||
validates :product_id,
|
validates :product_id,
|
||||||
|
@ -130,12 +131,14 @@ class ProductBuildList < ActiveRecord::Base
|
||||||
|
|
||||||
def abf_worker_args
|
def abf_worker_args
|
||||||
file_name = "#{project.owner.uname}-#{project.name}-#{commit_hash}"
|
file_name = "#{project.owner.uname}-#{project.name}-#{commit_hash}"
|
||||||
|
opts = {:host => ActionMailer::Base.default_url_options[:host]}
|
||||||
|
opts.merge!({:user => user.authentication_token, :password => ''}) if user.present?
|
||||||
srcpath = url_helpers.archive_url(
|
srcpath = url_helpers.archive_url(
|
||||||
project.owner,
|
project.owner,
|
||||||
project.name,
|
project.name,
|
||||||
file_name,
|
file_name,
|
||||||
'tar.gz',
|
'tar.gz',
|
||||||
:host => ActionMailer::Base.default_url_options[:host]
|
opts
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
:id => id,
|
:id => id,
|
||||||
|
@ -146,7 +149,8 @@ class ProductBuildList < ActiveRecord::Base
|
||||||
:time_living => time_living,
|
:time_living => time_living,
|
||||||
:main_script => main_script,
|
:main_script => main_script,
|
||||||
:arch => arch.name,
|
:arch => arch.name,
|
||||||
:distrib_type => product.platform.distrib_type
|
:distrib_type => product.platform.distrib_type,
|
||||||
|
:user => {:uname => user.try(:uname), :email => user.try(:email)}
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -10,6 +10,8 @@
|
||||||
|
|
||||||
= render 'show_field', :key => :id, :value => pbl.id
|
= render 'show_field', :key => :id, :value => pbl.id
|
||||||
= render 'show_field', :key => :status, :value => pbl.human_status
|
= render 'show_field', :key => :status, :value => pbl.human_status
|
||||||
|
- if pbl.user
|
||||||
|
= render 'show_field', :key => :user, :value => link_to(pbl.user.try(:fullname), pbl.user)
|
||||||
|
|
||||||
= render 'show_field', :key => :product, :value => link_to(pbl.product.name, platform_product_path(platform, product))
|
= render 'show_field', :key => :product, :value => link_to(pbl.product.name, platform_product_path(platform, product))
|
||||||
|
|
||||||
|
|
|
@ -31,6 +31,7 @@ en:
|
||||||
attributes:
|
attributes:
|
||||||
product_build_list:
|
product_build_list:
|
||||||
id: Id
|
id: Id
|
||||||
|
user: User
|
||||||
product: Product
|
product: Product
|
||||||
container_path: Container
|
container_path: Container
|
||||||
status: Status
|
status: Status
|
||||||
|
|
|
@ -31,6 +31,7 @@ ru:
|
||||||
attributes:
|
attributes:
|
||||||
product_build_list:
|
product_build_list:
|
||||||
id: Id
|
id: Id
|
||||||
|
user: Пользователь
|
||||||
product: Продукт
|
product: Продукт
|
||||||
container_path: Контейнер
|
container_path: Контейнер
|
||||||
status: Статус
|
status: Статус
|
||||||
|
|
|
@ -0,0 +1,5 @@
|
||||||
|
class AddUserToProductBuildList < ActiveRecord::Migration
|
||||||
|
def change
|
||||||
|
add_column :product_build_lists, :user_id, :integer
|
||||||
|
end
|
||||||
|
end
|
117
db/schema.rb
117
db/schema.rb
|
@ -11,14 +11,14 @@
|
||||||
#
|
#
|
||||||
# It's strongly recommended to check this file into your version control system.
|
# It's strongly recommended to check this file into your version control system.
|
||||||
|
|
||||||
ActiveRecord::Schema.define(:version => 20121211132948) do
|
ActiveRecord::Schema.define(:version => 20121214145009) do
|
||||||
|
|
||||||
create_table "activity_feeds", :force => true do |t|
|
create_table "activity_feeds", :force => true do |t|
|
||||||
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", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
end
|
end
|
||||||
|
|
||||||
create_table "advisories", :force => true do |t|
|
create_table "advisories", :force => true do |t|
|
||||||
|
@ -53,8 +53,8 @@ ActiveRecord::Schema.define(:version => 20121211132948) 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", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
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 => 20121211132948) 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", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
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 => 20121211132948) 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", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
t.string "version"
|
t.string "version"
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -110,8 +110,8 @@ ActiveRecord::Schema.define(:version => 20121211132948) 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", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
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"
|
||||||
|
@ -145,8 +145,8 @@ ActiveRecord::Schema.define(:version => 20121211132948) 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", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
t.decimal "commentable_id", :precision => 50, :scale => 0
|
t.decimal "commentable_id", :precision => 50, :scale => 0
|
||||||
t.integer "project_id"
|
t.integer "project_id"
|
||||||
t.text "data"
|
t.text "data"
|
||||||
|
@ -164,8 +164,8 @@ ActiveRecord::Schema.define(:version => 20121211132948) do
|
||||||
t.string "controller"
|
t.string "controller"
|
||||||
t.string "action"
|
t.string "action"
|
||||||
t.text "message"
|
t.text "message"
|
||||||
t.datetime "created_at", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
end
|
end
|
||||||
|
|
||||||
create_table "flash_notifies", :force => true do |t|
|
create_table "flash_notifies", :force => true do |t|
|
||||||
|
@ -179,8 +179,8 @@ ActiveRecord::Schema.define(:version => 20121211132948) 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", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
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"
|
||||||
|
@ -197,8 +197,8 @@ ActiveRecord::Schema.define(:version => 20121211132948) 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", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
t.integer "user_id"
|
t.integer "user_id"
|
||||||
t.datetime "closed_at"
|
t.datetime "closed_at"
|
||||||
t.integer "closed_by"
|
t.integer "closed_by"
|
||||||
|
@ -260,14 +260,14 @@ ActiveRecord::Schema.define(:version => 20121211132948) 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", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
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"
|
||||||
t.string "visibility", :default => "open", :null => false
|
t.string "visibility", :default => "open", :null => false
|
||||||
t.string "platform_type", :default => "main", :null => false
|
t.string "platform_type", :default => "main", :null => false
|
||||||
t.string "distrib_type"
|
t.string "distrib_type", :null => false
|
||||||
end
|
end
|
||||||
|
|
||||||
add_index "platforms", ["name"], :name => "index_platforms_on_name", :unique => true, :case_sensitive => false
|
add_index "platforms", ["name"], :name => "index_platforms_on_name", :unique => true, :case_sensitive => false
|
||||||
|
@ -276,16 +276,16 @@ ActiveRecord::Schema.define(:version => 20121211132948) 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", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
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 => 3, :null => false
|
t.integer "status", :default => 2, :null => false
|
||||||
t.datetime "created_at", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
t.integer "project_id"
|
t.integer "project_id"
|
||||||
t.string "project_version"
|
t.string "project_version"
|
||||||
t.string "commit_hash"
|
t.string "commit_hash"
|
||||||
|
@ -294,6 +294,7 @@ ActiveRecord::Schema.define(:version => 20121211132948) do
|
||||||
t.text "results"
|
t.text "results"
|
||||||
t.integer "arch_id"
|
t.integer "arch_id"
|
||||||
t.integer "time_living"
|
t.integer "time_living"
|
||||||
|
t.integer "user_id"
|
||||||
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"
|
||||||
|
@ -301,8 +302,8 @@ ActiveRecord::Schema.define(:version => 20121211132948) 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", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
t.text "description"
|
t.text "description"
|
||||||
t.integer "project_id"
|
t.integer "project_id"
|
||||||
t.string "params"
|
t.string "params"
|
||||||
|
@ -315,8 +316,8 @@ ActiveRecord::Schema.define(:version => 20121211132948) 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", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
t.integer "platform_id"
|
t.integer "platform_id"
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -325,27 +326,27 @@ ActiveRecord::Schema.define(:version => 20121211132948) 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", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
end
|
end
|
||||||
|
|
||||||
add_index "project_to_repositories", ["repository_id", "project_id"], :name => "index_project_to_repositories_on_repository_id_and_project_id", :unique => true
|
add_index "project_to_repositories", ["repository_id", "project_id"], :name => "index_project_to_repositories_on_repository_id_and_project_id", :unique => true
|
||||||
|
|
||||||
create_table "projects", :force => true do |t|
|
create_table "projects", :force => true do |t|
|
||||||
t.string "name"
|
t.string "name"
|
||||||
t.datetime "created_at", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
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"
|
||||||
t.text "description"
|
t.text "description"
|
||||||
t.string "ancestry"
|
t.string "ancestry"
|
||||||
t.boolean "has_issues", :default => true
|
t.boolean "has_issues", :default => true
|
||||||
t.boolean "has_wiki", :default => false
|
|
||||||
t.string "srpm_file_name"
|
t.string "srpm_file_name"
|
||||||
t.string "srpm_content_type"
|
|
||||||
t.integer "srpm_file_size"
|
t.integer "srpm_file_size"
|
||||||
t.datetime "srpm_updated_at"
|
t.datetime "srpm_updated_at"
|
||||||
|
t.string "srpm_content_type"
|
||||||
|
t.boolean "has_wiki", :default => false
|
||||||
t.string "default_branch", :default => "master"
|
t.string "default_branch", :default => "master"
|
||||||
t.boolean "is_package", :default => true, :null => false
|
t.boolean "is_package", :default => true, :null => false
|
||||||
t.integer "average_build_time", :default => 0, :null => false
|
t.integer "average_build_time", :default => 0, :null => false
|
||||||
|
@ -375,8 +376,8 @@ ActiveRecord::Schema.define(:version => 20121211132948) 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", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
t.string "interest"
|
t.string "interest"
|
||||||
t.text "more"
|
t.text "more"
|
||||||
t.string "language"
|
t.string "language"
|
||||||
|
@ -390,16 +391,16 @@ ActiveRecord::Schema.define(:version => 20121211132948) 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", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
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", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
t.string "name", :null => false
|
t.string "name", :null => false
|
||||||
t.boolean "publish_without_qa", :default => true
|
t.boolean "publish_without_qa", :default => true
|
||||||
end
|
end
|
||||||
|
@ -413,8 +414,8 @@ ActiveRecord::Schema.define(:version => 20121211132948) 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", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
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
|
||||||
|
@ -425,8 +426,8 @@ ActiveRecord::Schema.define(:version => 20121211132948) 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", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
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
|
||||||
|
@ -434,21 +435,18 @@ ActiveRecord::Schema.define(:version => 20121211132948) do
|
||||||
|
|
||||||
create_table "users", :force => true do |t|
|
create_table "users", :force => true do |t|
|
||||||
t.string "name"
|
t.string "name"
|
||||||
t.string "email", :default => "", :null => false
|
t.string "email", :default => "", :null => false
|
||||||
t.string "encrypted_password", :default => "", :null => false
|
t.string "encrypted_password", :limit => 128, :default => "", :null => false
|
||||||
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", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
t.text "ssh_key"
|
t.text "ssh_key"
|
||||||
t.string "uname"
|
t.string "uname"
|
||||||
t.string "role"
|
t.string "role"
|
||||||
t.string "language", :default => "en"
|
t.string "language", :default => "en"
|
||||||
t.integer "own_projects_count", :default => 0, :null => false
|
t.integer "own_projects_count", :default => 0, :null => false
|
||||||
t.string "confirmation_token"
|
|
||||||
t.datetime "confirmed_at"
|
|
||||||
t.datetime "confirmation_sent_at"
|
|
||||||
t.text "professional_experience"
|
t.text "professional_experience"
|
||||||
t.string "site"
|
t.string "site"
|
||||||
t.string "company"
|
t.string "company"
|
||||||
|
@ -457,11 +455,14 @@ ActiveRecord::Schema.define(:version => 20121211132948) do
|
||||||
t.string "avatar_content_type"
|
t.string "avatar_content_type"
|
||||||
t.integer "avatar_file_size"
|
t.integer "avatar_file_size"
|
||||||
t.datetime "avatar_updated_at"
|
t.datetime "avatar_updated_at"
|
||||||
t.integer "failed_attempts", :default => 0
|
t.integer "failed_attempts", :default => 0
|
||||||
t.string "unlock_token"
|
t.string "unlock_token"
|
||||||
t.datetime "locked_at"
|
t.datetime "locked_at"
|
||||||
|
t.string "confirmation_token"
|
||||||
|
t.datetime "confirmed_at"
|
||||||
|
t.datetime "confirmation_sent_at"
|
||||||
t.string "authentication_token"
|
t.string "authentication_token"
|
||||||
t.integer "build_priority", :default => 50
|
t.integer "build_priority", :default => 50
|
||||||
end
|
end
|
||||||
|
|
||||||
add_index "users", ["authentication_token"], :name => "index_users_on_authentication_token"
|
add_index "users", ["authentication_token"], :name => "index_users_on_authentication_token"
|
||||||
|
|
|
@ -33,6 +33,7 @@ Capistrano::Configuration.instance(:must_exist).load do
|
||||||
:notification,
|
:notification,
|
||||||
:iso_worker_observer,
|
:iso_worker_observer,
|
||||||
:rpm_worker_observer,
|
:rpm_worker_observer,
|
||||||
|
:publish_build_list_container_observer,
|
||||||
:file_system_worker
|
:file_system_worker
|
||||||
].join(',')
|
].join(',')
|
||||||
run "cd #{fetch :current_path} && COUNT=#{workers_count} QUEUE=#{queue} #{rails_env} BACKGROUND=yes bundle exec rake resque:workers"
|
run "cd #{fetch :current_path} && COUNT=#{workers_count} QUEUE=#{queue} #{rails_env} BACKGROUND=yes bundle exec rake resque:workers"
|
||||||
|
|
Loading…
Reference in New Issue