Added projects with tmp builds
This commit is contained in:
5
Gemfile
5
Gemfile
@@ -17,9 +17,7 @@ gem "inifile", "~> 3.0"
|
|||||||
|
|
||||||
gem "carrierwave", "~> 3.1"
|
gem "carrierwave", "~> 3.1"
|
||||||
|
|
||||||
gem "data_mapper", "~> 1.2"
|
gem "json", "~> 2.5"
|
||||||
|
|
||||||
gem "json", "~> 1.8"
|
|
||||||
|
|
||||||
gem "stringio", "~> 3.1"
|
gem "stringio", "~> 3.1"
|
||||||
|
|
||||||
@@ -38,3 +36,4 @@ gem "ffi", "~> 1.17"
|
|||||||
gem "ptools", "~> 1.5"
|
gem "ptools", "~> 1.5"
|
||||||
|
|
||||||
gem "ostruct", "~> 0.6.1"
|
gem "ostruct", "~> 0.6.1"
|
||||||
|
|
||||||
|
|||||||
156
Gemfile.lock
156
Gemfile.lock
@@ -1,16 +1,16 @@
|
|||||||
GEM
|
GEM
|
||||||
remote: https://rubygems.org/
|
remote: https://rubygems.org/
|
||||||
specs:
|
specs:
|
||||||
activemodel (8.0.1)
|
activemodel (8.1.1)
|
||||||
activesupport (= 8.0.1)
|
activesupport (= 8.1.1)
|
||||||
activesupport (8.0.1)
|
activesupport (8.1.1)
|
||||||
base64
|
base64
|
||||||
benchmark (>= 0.3)
|
|
||||||
bigdecimal
|
bigdecimal
|
||||||
concurrent-ruby (~> 1.0, >= 1.3.1)
|
concurrent-ruby (~> 1.0, >= 1.3.1)
|
||||||
connection_pool (>= 2.2.5)
|
connection_pool (>= 2.2.5)
|
||||||
drb
|
drb
|
||||||
i18n (>= 1.6, < 2)
|
i18n (>= 1.6, < 2)
|
||||||
|
json
|
||||||
logger (>= 1.4.2)
|
logger (>= 1.4.2)
|
||||||
minitest (>= 5.1)
|
minitest (>= 5.1)
|
||||||
securerandom (>= 0.3)
|
securerandom (>= 0.3)
|
||||||
@@ -18,13 +18,9 @@ GEM
|
|||||||
uri (>= 0.13.1)
|
uri (>= 0.13.1)
|
||||||
addressable (2.8.7)
|
addressable (2.8.7)
|
||||||
public_suffix (>= 2.0.2, < 7.0)
|
public_suffix (>= 2.0.2, < 7.0)
|
||||||
base64 (0.2.0)
|
base64 (0.3.0)
|
||||||
bcrypt (3.1.20)
|
bigdecimal (3.3.1)
|
||||||
bcrypt-ruby (3.1.5)
|
carrierwave (3.1.2)
|
||||||
bcrypt (>= 3.1.3)
|
|
||||||
benchmark (0.4.0)
|
|
||||||
bigdecimal (3.1.9)
|
|
||||||
carrierwave (3.1.1)
|
|
||||||
activemodel (>= 6.0.0)
|
activemodel (>= 6.0.0)
|
||||||
activesupport (>= 6.0.0)
|
activesupport (>= 6.0.0)
|
||||||
addressable (~> 2.6)
|
addressable (~> 2.6)
|
||||||
@@ -32,130 +28,82 @@ GEM
|
|||||||
marcel (~> 1.0.0)
|
marcel (~> 1.0.0)
|
||||||
ssrf_filter (~> 1.0)
|
ssrf_filter (~> 1.0)
|
||||||
concurrent-ruby (1.3.5)
|
concurrent-ruby (1.3.5)
|
||||||
connection_pool (2.5.0)
|
connection_pool (2.5.4)
|
||||||
data_mapper (1.2.0)
|
drb (2.2.3)
|
||||||
dm-aggregates (~> 1.2.0)
|
ffi (1.17.2-aarch64-linux-gnu)
|
||||||
dm-constraints (~> 1.2.0)
|
ffi (1.17.2-aarch64-linux-musl)
|
||||||
dm-core (~> 1.2.0)
|
ffi (1.17.2-arm-linux-gnu)
|
||||||
dm-migrations (~> 1.2.0)
|
ffi (1.17.2-arm-linux-musl)
|
||||||
dm-serializer (~> 1.2.0)
|
ffi (1.17.2-arm64-darwin)
|
||||||
dm-timestamps (~> 1.2.0)
|
ffi (1.17.2-x86-linux-gnu)
|
||||||
dm-transactions (~> 1.2.0)
|
ffi (1.17.2-x86-linux-musl)
|
||||||
dm-types (~> 1.2.0)
|
ffi (1.17.2-x86_64-darwin)
|
||||||
dm-validations (~> 1.2.0)
|
ffi (1.17.2-x86_64-linux-gnu)
|
||||||
dm-aggregates (1.2.0)
|
ffi (1.17.2-x86_64-linux-musl)
|
||||||
dm-core (~> 1.2.0)
|
|
||||||
dm-constraints (1.2.0)
|
|
||||||
dm-core (~> 1.2.0)
|
|
||||||
dm-core (1.2.1)
|
|
||||||
addressable (~> 2.3)
|
|
||||||
dm-migrations (1.2.0)
|
|
||||||
dm-core (~> 1.2.0)
|
|
||||||
dm-serializer (1.2.2)
|
|
||||||
dm-core (~> 1.2.0)
|
|
||||||
fastercsv (~> 1.5)
|
|
||||||
json (~> 1.6)
|
|
||||||
json_pure (~> 1.6)
|
|
||||||
multi_json (~> 1.0)
|
|
||||||
dm-timestamps (1.2.0)
|
|
||||||
dm-core (~> 1.2.0)
|
|
||||||
dm-transactions (1.2.0)
|
|
||||||
dm-core (~> 1.2.0)
|
|
||||||
dm-types (1.2.2)
|
|
||||||
bcrypt-ruby (~> 3.0)
|
|
||||||
dm-core (~> 1.2.0)
|
|
||||||
fastercsv (~> 1.5)
|
|
||||||
json (~> 1.6)
|
|
||||||
multi_json (~> 1.0)
|
|
||||||
stringex (~> 1.4)
|
|
||||||
uuidtools (~> 2.1)
|
|
||||||
dm-validations (1.2.0)
|
|
||||||
dm-core (~> 1.2.0)
|
|
||||||
drb (2.2.1)
|
|
||||||
fastercsv (1.5.5)
|
|
||||||
ffi (1.17.1)
|
|
||||||
ffi (1.17.1-aarch64-linux-gnu)
|
|
||||||
ffi (1.17.1-aarch64-linux-musl)
|
|
||||||
ffi (1.17.1-arm-linux-gnu)
|
|
||||||
ffi (1.17.1-arm-linux-musl)
|
|
||||||
ffi (1.17.1-arm64-darwin)
|
|
||||||
ffi (1.17.1-x86-linux-gnu)
|
|
||||||
ffi (1.17.1-x86-linux-musl)
|
|
||||||
ffi (1.17.1-x86_64-darwin)
|
|
||||||
ffi (1.17.1-x86_64-linux-gnu)
|
|
||||||
ffi (1.17.1-x86_64-linux-musl)
|
|
||||||
i18n (1.14.7)
|
i18n (1.14.7)
|
||||||
concurrent-ruby (~> 1.0)
|
concurrent-ruby (~> 1.0)
|
||||||
image_processing (1.14.0)
|
image_processing (1.14.0)
|
||||||
mini_magick (>= 4.9.5, < 6)
|
mini_magick (>= 4.9.5, < 6)
|
||||||
ruby-vips (>= 2.0.17, < 3)
|
ruby-vips (>= 2.0.17, < 3)
|
||||||
inifile (3.0.0)
|
inifile (3.0.0)
|
||||||
json (1.8.6)
|
json (2.15.2)
|
||||||
json_pure (1.8.6)
|
logger (1.7.0)
|
||||||
logger (1.6.6)
|
|
||||||
marcel (1.0.4)
|
marcel (1.0.4)
|
||||||
mini_magick (5.1.2)
|
mini_magick (5.3.1)
|
||||||
benchmark
|
|
||||||
logger
|
logger
|
||||||
mini_portile2 (2.8.8)
|
minitest (5.26.0)
|
||||||
minitest (5.25.4)
|
mustermann (3.0.4)
|
||||||
multi_json (1.15.0)
|
|
||||||
mustermann (3.0.3)
|
|
||||||
ruby2_keywords (~> 0.0.1)
|
ruby2_keywords (~> 0.0.1)
|
||||||
nio4r (2.7.4)
|
nio4r (2.7.5)
|
||||||
ostruct (0.6.1)
|
ostruct (0.6.3)
|
||||||
ptools (1.5.0)
|
ptools (1.5.0)
|
||||||
public_suffix (6.0.1)
|
public_suffix (6.0.2)
|
||||||
puma (6.6.0)
|
puma (6.6.1)
|
||||||
nio4r (~> 2.0)
|
nio4r (~> 2.0)
|
||||||
rack (3.1.10)
|
rack (3.2.4)
|
||||||
rack-protection (4.1.1)
|
rack-protection (4.2.1)
|
||||||
base64 (>= 0.1.0)
|
base64 (>= 0.1.0)
|
||||||
logger (>= 1.6.0)
|
logger (>= 1.6.0)
|
||||||
rack (>= 3.0.0, < 4)
|
rack (>= 3.0.0, < 4)
|
||||||
rack-session (2.1.0)
|
rack-session (2.1.1)
|
||||||
base64 (>= 0.1.0)
|
base64 (>= 0.1.0)
|
||||||
rack (>= 3.0.0)
|
rack (>= 3.0.0)
|
||||||
rackup (2.2.1)
|
rackup (2.2.1)
|
||||||
rack (>= 3)
|
rack (>= 3)
|
||||||
ruby-vips (2.2.3)
|
ruby-vips (2.2.5)
|
||||||
ffi (~> 1.12)
|
ffi (~> 1.12)
|
||||||
logger
|
logger
|
||||||
ruby2_keywords (0.0.5)
|
ruby2_keywords (0.0.5)
|
||||||
rugged (1.9.0)
|
rugged (1.9.0)
|
||||||
securerandom (0.4.1)
|
securerandom (0.4.1)
|
||||||
sequel (5.89.0)
|
sequel (5.98.0)
|
||||||
bigdecimal
|
bigdecimal
|
||||||
shotgun (0.9.2)
|
shotgun (0.9.2)
|
||||||
rack (>= 1.0)
|
rack (>= 1.0)
|
||||||
sinatra (4.1.1)
|
sinatra (4.2.1)
|
||||||
logger (>= 1.6.0)
|
logger (>= 1.6.0)
|
||||||
mustermann (~> 3.0)
|
mustermann (~> 3.0)
|
||||||
rack (>= 3.0.0, < 4)
|
rack (>= 3.0.0, < 4)
|
||||||
rack-protection (= 4.1.1)
|
rack-protection (= 4.2.1)
|
||||||
rack-session (>= 2.0.0, < 3)
|
rack-session (>= 2.0.0, < 3)
|
||||||
tilt (~> 2.0)
|
tilt (~> 2.0)
|
||||||
sqlite (1.0.2)
|
sqlite (1.0.2)
|
||||||
sqlite3 (2.5.0)
|
sqlite3 (2.7.4-aarch64-linux-gnu)
|
||||||
mini_portile2 (~> 2.8.0)
|
sqlite3 (2.7.4-aarch64-linux-musl)
|
||||||
sqlite3 (2.5.0-aarch64-linux-gnu)
|
sqlite3 (2.7.4-arm-linux-gnu)
|
||||||
sqlite3 (2.5.0-aarch64-linux-musl)
|
sqlite3 (2.7.4-arm-linux-musl)
|
||||||
sqlite3 (2.5.0-arm-linux-gnu)
|
sqlite3 (2.7.4-arm64-darwin)
|
||||||
sqlite3 (2.5.0-arm-linux-musl)
|
sqlite3 (2.7.4-x86-linux-gnu)
|
||||||
sqlite3 (2.5.0-arm64-darwin)
|
sqlite3 (2.7.4-x86-linux-musl)
|
||||||
sqlite3 (2.5.0-x86-linux-gnu)
|
sqlite3 (2.7.4-x86_64-darwin)
|
||||||
sqlite3 (2.5.0-x86-linux-musl)
|
sqlite3 (2.7.4-x86_64-linux-gnu)
|
||||||
sqlite3 (2.5.0-x86_64-darwin)
|
sqlite3 (2.7.4-x86_64-linux-musl)
|
||||||
sqlite3 (2.5.0-x86_64-linux-gnu)
|
ssrf_filter (1.3.0)
|
||||||
sqlite3 (2.5.0-x86_64-linux-musl)
|
stringio (3.1.7)
|
||||||
ssrf_filter (1.2.0)
|
tilt (2.6.1)
|
||||||
stringex (1.5.1)
|
|
||||||
stringio (3.1.3)
|
|
||||||
tilt (2.6.0)
|
|
||||||
tzinfo (2.0.6)
|
tzinfo (2.0.6)
|
||||||
concurrent-ruby (~> 1.0)
|
concurrent-ruby (~> 1.0)
|
||||||
uri (1.0.2)
|
uri (1.1.1)
|
||||||
uuidtools (2.2.0)
|
|
||||||
|
|
||||||
PLATFORMS
|
PLATFORMS
|
||||||
aarch64-linux-gnu
|
aarch64-linux-gnu
|
||||||
@@ -163,7 +111,6 @@ PLATFORMS
|
|||||||
arm-linux-gnu
|
arm-linux-gnu
|
||||||
arm-linux-musl
|
arm-linux-musl
|
||||||
arm64-darwin
|
arm64-darwin
|
||||||
ruby
|
|
||||||
x86-linux-gnu
|
x86-linux-gnu
|
||||||
x86-linux-musl
|
x86-linux-musl
|
||||||
x86_64-darwin
|
x86_64-darwin
|
||||||
@@ -172,10 +119,9 @@ PLATFORMS
|
|||||||
|
|
||||||
DEPENDENCIES
|
DEPENDENCIES
|
||||||
carrierwave (~> 3.1)
|
carrierwave (~> 3.1)
|
||||||
data_mapper (~> 1.2)
|
|
||||||
ffi (~> 1.17)
|
ffi (~> 1.17)
|
||||||
inifile (~> 3.0)
|
inifile (~> 3.0)
|
||||||
json (~> 1.8)
|
json (~> 2.5)
|
||||||
ostruct (~> 0.6.1)
|
ostruct (~> 0.6.1)
|
||||||
ptools (~> 1.5)
|
ptools (~> 1.5)
|
||||||
puma (~> 6.6)
|
puma (~> 6.6)
|
||||||
@@ -189,4 +135,4 @@ DEPENDENCIES
|
|||||||
stringio (~> 3.1)
|
stringio (~> 3.1)
|
||||||
|
|
||||||
BUNDLED WITH
|
BUNDLED WITH
|
||||||
2.6.3
|
2.7.2
|
||||||
|
|||||||
6
app.rb
6
app.rb
@@ -343,6 +343,7 @@ get "/prjcreate" do
|
|||||||
@local_list = result[:local]
|
@local_list = result[:local]
|
||||||
@old_nopublic = session[:prj_old_nopublic]
|
@old_nopublic = session[:prj_old_nopublic]
|
||||||
@error_data = session[:prjcreate_error]
|
@error_data = session[:prjcreate_error]
|
||||||
|
@old_tmpbld = session[:prj_old_tmpbld]
|
||||||
session[:prjcreate_error] = nil
|
session[:prjcreate_error] = nil
|
||||||
erb :prjcrt
|
erb :prjcrt
|
||||||
end
|
end
|
||||||
@@ -352,12 +353,13 @@ post "/prjcreate" do
|
|||||||
session[:prj_old_description] = params["description"]
|
session[:prj_old_description] = params["description"]
|
||||||
session[:prj_old_list] = params["conflist"]
|
session[:prj_old_list] = params["conflist"]
|
||||||
session[:prj_old_nopublic] = params["nopublic"]
|
session[:prj_old_nopublic] = params["nopublic"]
|
||||||
|
session[:prj_old_tmpbld] = params["tmpbld"]
|
||||||
if params["projname"].nil? || params["description"].nil? || params["projname"].strip == "" || params["description"].strip == "" || params["conflist"].nil? || params["conflist"].strip == ""
|
if params["projname"].nil? || params["description"].nil? || params["projname"].strip == "" || params["description"].strip == "" || params["conflist"].nil? || params["conflist"].strip == ""
|
||||||
session[:rcpcreate_error] = "Имя проекта, описание и окружение сборки не должны быть пустыми"
|
session[:rcpcreate_error] = "Имя проекта, описание и окружение сборки не должны быть пустыми"
|
||||||
redirect "/prjcreate"
|
redirect "/prjcreate"
|
||||||
else
|
else
|
||||||
prj = ProjectsActions.new(cfg.get_projects_path, db)
|
prj = ProjectsActions.new(cfg.get_projects_path, db)
|
||||||
result = prj.create_project(params["projname"], params["description"], params["conflist"], params["nopublic"])
|
result = prj.create_project(params["projname"], params["description"], params["conflist"], params["nopublic"], params["tmpbld"])
|
||||||
if result != 0
|
if result != 0
|
||||||
session[:prjcreate_error] = prj.error
|
session[:prjcreate_error] = prj.error
|
||||||
redirect "/prjcreate"
|
redirect "/prjcreate"
|
||||||
@@ -366,6 +368,7 @@ post "/prjcreate" do
|
|||||||
session[:prj_old_description] = nil
|
session[:prj_old_description] = nil
|
||||||
session[:prj_old_list] = nil
|
session[:prj_old_list] = nil
|
||||||
session[:prj_old_nopublic] = nil
|
session[:prj_old_nopublic] = nil
|
||||||
|
session[:prj_old_tmpbld] = nil
|
||||||
redirect "/projs"
|
redirect "/projs"
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@@ -395,6 +398,7 @@ get "/prjedit/:id" do
|
|||||||
@proj_descr = prj_info[:descr]
|
@proj_descr = prj_info[:descr]
|
||||||
@proj_id = prj_info[:id]
|
@proj_id = prj_info[:id]
|
||||||
@proj_public = prj_info[:public]
|
@proj_public = prj_info[:public]
|
||||||
|
@proj_tmpbuild = prj_info[:tmpstpbuild]
|
||||||
repo_lst = repo.getrepos
|
repo_lst = repo.getrepos
|
||||||
proj_repo_list = prj.get_project_gits(prj_info[:id], repo)
|
proj_repo_list = prj.get_project_gits(prj_info[:id], repo)
|
||||||
@repo_list = repo_lst.reject do |item|
|
@repo_list = repo_lst.reject do |item|
|
||||||
|
|||||||
@@ -146,7 +146,7 @@ class DBase
|
|||||||
Projects[id]
|
Projects[id]
|
||||||
end
|
end
|
||||||
|
|
||||||
def proj_create(proj_name, proj_descr, nopublic)
|
def proj_create(proj_name, proj_descr, nopublic, tmpbld)
|
||||||
@error = nil
|
@error = nil
|
||||||
data = Projects.where(projname: proj_name).first
|
data = Projects.where(projname: proj_name).first
|
||||||
if data.nil?
|
if data.nil?
|
||||||
@@ -154,7 +154,11 @@ class DBase
|
|||||||
unless nopublic.nil?
|
unless nopublic.nil?
|
||||||
public_proj = 0
|
public_proj = 0
|
||||||
end
|
end
|
||||||
id = Projects.insert(projname: proj_name, descr: proj_descr, public: public_proj)
|
tmpbld_proj = 1
|
||||||
|
if tmpbld.nil?
|
||||||
|
tmpbld_proj = 0
|
||||||
|
end
|
||||||
|
id = Projects.insert(projname: proj_name, descr: proj_descr, public: public_proj, tmpstpbuild: tmpbld_proj)
|
||||||
@last_id = id
|
@last_id = id
|
||||||
else
|
else
|
||||||
@error = "Данный проект уже существует"
|
@error = "Данный проект уже существует"
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ require "fileutils"
|
|||||||
require "logger"
|
require "logger"
|
||||||
require_relative "repomanage"
|
require_relative "repomanage"
|
||||||
require "digest"
|
require "digest"
|
||||||
|
require "date"
|
||||||
|
|
||||||
BUILD_STRUCTURE = {
|
BUILD_STRUCTURE = {
|
||||||
:SRC => "src",
|
:SRC => "src",
|
||||||
@@ -13,9 +14,9 @@ BUILD_STRUCTURE = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
class MockManager
|
class MockManager
|
||||||
attr :path, :config, :error, :last_status, :last_pid, :prep_dir, :db, :resultpath, :process_log, :repo_path, :git_path, :build_id, :log, :recips, :spec, :repo_lock, :git_id
|
attr :path, :config, :error, :last_status, :last_pid, :prep_dir, :db, :resultpath, :process_log, :repo_path, :git_path, :build_id, :log, :recips, :spec, :repo_lock, :git_id, :tmp_bld
|
||||||
|
|
||||||
def initialize(path, config, cfg_counter_path, db, result_path, repo_path, git_path, build_id, recips, spec_file, repo_lock, git_id)
|
def initialize(path, config, cfg_counter_path, db, result_path, repo_path, git_path, build_id, recips, spec_file, repo_lock, git_id, tmp_bld)
|
||||||
@error = nil
|
@error = nil
|
||||||
unless File.exist? (path)
|
unless File.exist? (path)
|
||||||
Dir.mkdir(path)
|
Dir.mkdir(path)
|
||||||
@@ -32,6 +33,7 @@ class MockManager
|
|||||||
@spec = spec_file
|
@spec = spec_file
|
||||||
@repo_lock = repo_lock
|
@repo_lock = repo_lock
|
||||||
@git_id = git_id
|
@git_id = git_id
|
||||||
|
@tmp_bld = tmp_bld
|
||||||
|
|
||||||
File.open(cfg_counter_path, "r+") do |f|
|
File.open(cfg_counter_path, "r+") do |f|
|
||||||
f.flock(File::LOCK_EX)
|
f.flock(File::LOCK_EX)
|
||||||
@@ -110,6 +112,31 @@ class MockManager
|
|||||||
@log.info("Подготовка SRCRPM")
|
@log.info("Подготовка SRCRPM")
|
||||||
spec_file = File.join(@tmp_src, @spec)
|
spec_file = File.join(@tmp_src, @spec)
|
||||||
if File.exist?(spec_file)
|
if File.exist?(spec_file)
|
||||||
|
if @tmp_bld
|
||||||
|
dt = DateTime.now
|
||||||
|
bld_id = @build_id.to_i
|
||||||
|
bld_str = "%010d" % bld_id
|
||||||
|
dt_str = dt.strftime("%Y%m%d_#{bld_str}")
|
||||||
|
cmd_args = %Q(/usr/bin/rpm -q --specfile #{spec_file} --queryformat "%{RELEASE}")
|
||||||
|
@log.debug(cmd_args)
|
||||||
|
cmd = Runner.new(cmd_args, @log)
|
||||||
|
cmd.run
|
||||||
|
if cmd.exit_status == 0
|
||||||
|
res = "#{cmd.stdout}.#{dt_str}"
|
||||||
|
line_array = []
|
||||||
|
File.readlines(spec_file).each do |line|
|
||||||
|
if line =~ /^[\t ]*[Rr]elease:/
|
||||||
|
line = "Release: #{res}"
|
||||||
|
end
|
||||||
|
line_array << line
|
||||||
|
end
|
||||||
|
File.open(spec_file, "w") do |f|
|
||||||
|
line_array.each do |line|
|
||||||
|
f.puts(line)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
Dir.chdir(@tmp_src) do
|
Dir.chdir(@tmp_src) do
|
||||||
cmd_args = %Q(/usr/bin/mock -r "#{@config}" --buildsrpm --spec "#{spec_file}" --sources "#{@tmp_src}" --resultdir "#{File.join(@prep_dir, BUILD_STRUCTURE[:RESULT_SRPM])}" --isolation=simple --disable-plugin=ccache)
|
cmd_args = %Q(/usr/bin/mock -r "#{@config}" --buildsrpm --spec "#{spec_file}" --sources "#{@tmp_src}" --resultdir "#{File.join(@prep_dir, BUILD_STRUCTURE[:RESULT_SRPM])}" --isolation=simple --disable-plugin=ccache)
|
||||||
@log.debug(cmd_args)
|
@log.debug(cmd_args)
|
||||||
|
|||||||
@@ -145,7 +145,7 @@ class ProjectsActions
|
|||||||
generate_linked_repos(id, proj_path, proj_name, prj_incl_path)
|
generate_linked_repos(id, proj_path, proj_name, prj_incl_path)
|
||||||
end
|
end
|
||||||
|
|
||||||
def create_project(name, description, configuration, nopublic)
|
def create_project(name, description, configuration, nopublic, tmpbld)
|
||||||
@error = nil
|
@error = nil
|
||||||
ret_val = 0
|
ret_val = 0
|
||||||
project_name = sanitize_rcptname(name)
|
project_name = sanitize_rcptname(name)
|
||||||
@@ -163,7 +163,7 @@ class ProjectsActions
|
|||||||
end
|
end
|
||||||
if File.exist?(configuration)
|
if File.exist?(configuration)
|
||||||
generate_config(nil, configuration, fname, project_name)
|
generate_config(nil, configuration, fname, project_name)
|
||||||
@error = @db.proj_create(project_name, description, nopublic)
|
@error = @db.proj_create(project_name, description, nopublic, tmpbld)
|
||||||
if @error.nil?
|
if @error.nil?
|
||||||
created = true
|
created = true
|
||||||
end
|
end
|
||||||
@@ -317,7 +317,10 @@ class ProjectsActions
|
|||||||
build_id = @db.last_id
|
build_id = @db.last_id
|
||||||
f.puts(build_id)
|
f.puts(build_id)
|
||||||
f.flush
|
f.flush
|
||||||
mock = MockManager.new(prepare_path, get_project_config(prj_id), counter_file, @db, build_path, repo_path, git_source, build_id, prep_script, spec_file, repo_lock, git_id)
|
proj_info = get_project(prj_id)
|
||||||
|
tmp_bld = false
|
||||||
|
tmp_bld = true if proj_info[:tmpstpbuild].to_i != 0
|
||||||
|
mock = MockManager.new(prepare_path, get_project_config(prj_id), counter_file, @db, build_path, repo_path, git_source, build_id, prep_script, spec_file, repo_lock, git_id, tmp_bld)
|
||||||
bld_id = build_id
|
bld_id = build_id
|
||||||
@db.update_build_task_error_log(build_id, mock.get_build_process_log)
|
@db.update_build_task_error_log(build_id, mock.get_build_process_log)
|
||||||
mock.build_task
|
mock.build_task
|
||||||
|
|||||||
9
db/migrations/202511040000000_aletrtables.rb
Normal file
9
db/migrations/202511040000000_aletrtables.rb
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
require "sequel"
|
||||||
|
|
||||||
|
Sequel.migration do
|
||||||
|
change do
|
||||||
|
alter_table(:projects) do
|
||||||
|
add_column :tmpstpbuild, Integer, default: 0
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
@@ -23,6 +23,14 @@
|
|||||||
<% end %>
|
<% end %>
|
||||||
<label class="form-check-label" for="nopublic">Не публиковать отладочные пакеты и исходные коды</label>
|
<label class="form-check-label" for="nopublic">Не публиковать отладочные пакеты и исходные коды</label>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="form-check form-switch">
|
||||||
|
<% if @old_tmpbld.nil? %>
|
||||||
|
<input class="form-check-input" type="checkbox" role="switch" id="tmpbld" name="tmpbld" vlaue="tmpbld">
|
||||||
|
<% else %>
|
||||||
|
<input class="form-check-input" type="checkbox" role="switch" id="tmpbld" name="tmpbld" vlaue="tmpbld" checked>
|
||||||
|
<% end %>
|
||||||
|
<label class="form-check-label" for="tmpbld">Добавлять к версии пакетов дату и ID сборки</label>
|
||||||
|
</div>
|
||||||
<div class="mb-3">
|
<div class="mb-3">
|
||||||
<label for="conflist" class="form-label">Выберите конфигурацию окружения сборки для проекта</label>
|
<label for="conflist" class="form-label">Выберите конфигурацию окружения сборки для проекта</label>
|
||||||
<div class="conflist">
|
<div class="conflist">
|
||||||
|
|||||||
@@ -33,6 +33,13 @@
|
|||||||
Запрещена публикация пакетов с исходными кодами
|
Запрещена публикация пакетов с исходными кодами
|
||||||
<% end %>
|
<% end %>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="pb-2">
|
||||||
|
<% if @proj_tmpbuild == 1 %>
|
||||||
|
Сборка с добавлением даты и идентификатора
|
||||||
|
<% else %>
|
||||||
|
Обычная сборка пакетов
|
||||||
|
<% end %>
|
||||||
|
</div>
|
||||||
<div class="list-group">
|
<div class="list-group">
|
||||||
<a href="/prjcfg/<%= ERB::Util.url_encode(@proj_id) %>" class="list-group-item list-group-item-action list-group-item-dark icon-link"><i
|
<a href="/prjcfg/<%= ERB::Util.url_encode(@proj_id) %>" class="list-group-item list-group-item-action list-group-item-dark icon-link"><i
|
||||||
class="bi bi-pen"></i><span class="ms-2">Редактировать
|
class="bi bi-pen"></i><span class="ms-2">Редактировать
|
||||||
|
|||||||
Reference in New Issue
Block a user