def get_sync_package_servers()
result = []
get_db_connection() do |db|
- rows = db.select_all("SELECT sync_pkg_servers.pkgsvr_url, distributions.name FROM sync_pkg_servers,distributions WHERE sync_pkg_servers.distribution_id = distributions.id")
- rows.each do |row|
+ db.select_all("SELECT sync_pkg_servers.pkgsvr_url, distributions.name FROM sync_pkg_servers,distributions WHERE sync_pkg_servers.distribution_id = distributions.id") do |row |
result.push [row['pkgsvr_url'], row['name']]
end
end
def supported_os_list
result = []
get_db_connection() do |db|
- rows = db.select_all("SELECT * FROM supported_os")
- rows.each do |row|
+ db.select_all("SELECT * FROM supported_os") do |row |
result.push row['name']
end
end
# get supported_os
prj_id = row['id']
os_list = []
- rows = db.select_all("SELECT supported_os.name FROM project_os,supported_os WHERE project_id=#{prj_id} and supported_os.id = project_os.supported_os_id")
- rows.each do |r|
+ db.select_all("SELECT supported_os.name FROM project_os,supported_os WHERE project_id=#{prj_id} and supported_os.id = project_os.supported_os_id") do |r|
os_list.push r['name']
end
# get source info/ package info
source_info = {}
package_info = {}
- rows=db.select_all("SELECT * FROM sources WHERE project_id=#{prj_id}")
- rows.each do |r|
+ db.select_all("SELECT * FROM sources WHERE project_id=#{prj_id}") do |r|
source_info[r['pkg_ver']] = r['location']
source_id = r['id']
- rows2=db.select_all("SELECT packages.pkg_name,supported_os.name as os_name
- FROM packages,supported_os WHERE source_id=#{source_id} and packages.supported_os_id=supported_os.id")
- rows2.each do |r2|
+ db.select_all("SELECT packages.pkg_name,supported_os.name as os_name
+ FROM packages,supported_os WHERE source_id=#{source_id} and packages.supported_os_id=supported_os.id") do |r2|
if package_info[r['pkg_ver']].nil? then
package_info[r['pkg_ver']] = []
end
row = db.select_one("SELECT * FROM projects WHERE id=#{@prj_id}")
if row.nil? then return -1 end
db.do "DELETE FROM project_os WHERE project_id=#{@prj_id}"
- rows=db.select_all("SELECT * FROM sources WHERE project_id=#{@prj_id}")
- rows.each do |r|
+ db.select_all("SELECT * FROM sources WHERE project_id=#{@prj_id}") do |r|
source_id = r['id']
db.do "DELETE FROM packages WHERE source_id=#{source_id}"
end
public
def self.get_all_project_rows(db)
- return db.select_all("SELECT projects.name,distributions.name as dist_name,projects.ptype
- FROM projects,distributions WHERE projects.distribution_id=distributions.id")
+ result = []
+ db.select_all("SELECT projects.name,distributions.name as dist_name,projects.ptype FROM projects,distributions WHERE projects.distribution_id=distributions.id") do |row |
+ result.push row.to_h
+ end
+ return result
end
end
def self.load_all(db)
- rows = db.select_all("SELECT * FROM distributions")
- return rows.map{|x| load_row(x)}
+ result = []
+ db.select_all("SELECT * FROM distributions") do |row |
+ result.push load_row(row)
+ end
+ return result
end
@server.get_db_connection() do |db|
rows = CommonProject.get_all_project_rows(db)
rows.each do |row|
- if row[:ptype] == "GIT" then
- prj = GitBuildProject.load(row[:name], row[:dist_name], @server, db)
+ if row['ptype'] == "GIT" then
+ prj = GitBuildProject.load(row['name'], row['dist_name'], @server, db)
else
- prj = BinaryUploadProject.load(row[:name], row[:dist_name], @server, db)
+ prj = BinaryUploadProject.load(row['name'], row['dist_name'], @server, db)
end
if not prj.nil? then result.push prj end
end
def self.load_all(db, parent)
result = []
- rows = db.select_all("SELECT *,'' as host_os_name FROM remote_build_servers WHERE supported_os_id IS NULL
+ db.select_all("SELECT *,'' as host_os_name FROM remote_build_servers WHERE supported_os_id IS NULL
UNION ALL
- SELECT remote_build_servers.*, supported_os.name as host_os_name FROM remote_build_servers, supported_os WHERE remote_build_servers.supported_os_id = supported_os.id")
- rows.each do |row|
+ SELECT remote_build_servers.*, supported_os.name as host_os_name FROM remote_build_servers, supported_os WHERE remote_build_servers.supported_os_id = supported_os.id") do |row|
result.push load_row(row, parent)
end
BuildCommServer.disconnect(req)
when "PROJECT"
# print GIT projects
- sorted_list = @parent_server.prjmgr.get_all_projects_summary().sort { |x,y| x[:name] <=> y[:name] }
- sorted_list.select{|x| x[:ptype] == "GIT"}.each do |prj|
- BuildCommServer.send(req,"G,#{prj[:name]},#{prj[:dist_name]}")
+ sorted_list = @parent_server.prjmgr.get_all_projects_summary().sort { |x,y| x['name'] <=> y['name'] }
+ sorted_list.select{|x| x['ptype'] == "GIT"}.each do |prj|
+ BuildCommServer.send(req,"G,#{prj['name']},#{prj['dist_name']}")
end
# print BINARY projects
- sorted_list.select{|x| x[:ptype] == "BINARY"}.each do |prj|
- BuildCommServer.send(req,"B,#{prj[:name]},#{prj[:dist_name]}")
+ sorted_list.select{|x| x['ptype'] == "BINARY"}.each do |prj|
+ BuildCommServer.send(req,"B,#{prj['name']},#{prj['dist_name']}")
end
# print REMOTE project
- sorted_list.select{|x| x[:ptype] == "REMOTE"}.each do |prj|
- BuildCommServer.send(req,"R,#{prj[:name]},#{prj[:dist_name]}")
+ sorted_list.select{|x| x['ptype'] == "REMOTE"}.each do |prj|
+ BuildCommServer.send(req,"R,#{prj['name']},#{prj['dist_name']}")
end
BuildCommServer.send_end(req)
BuildCommServer.disconnect(req)