Merge pull request #985 from warpc/960-unlock-repository-when-build-list-does-not-exist
[refs #960]: unlock repository when build list is no more exist
This commit is contained in:
commit
febf6a2a23
|
@ -65,8 +65,8 @@ module AbfWorker
|
||||||
redis.lrem LOCKED_BUILD_LISTS, 0, build_list.id
|
redis.lrem LOCKED_BUILD_LISTS, 0, build_list.id
|
||||||
end
|
end
|
||||||
|
|
||||||
def unlock_rep_and_platform(build_list, str = nil)
|
def unlock_rep_and_platform(lock_str)
|
||||||
redis.lrem LOCKED_REP_AND_PLATFORMS, 0, str || "#{build_list.save_to_repository_id}-#{build_list.build_for_platform_id}"
|
redis.lrem LOCKED_REP_AND_PLATFORMS, 0, lock_str
|
||||||
end
|
end
|
||||||
|
|
||||||
def redis
|
def redis
|
||||||
|
@ -238,6 +238,7 @@ module AbfWorker
|
||||||
'TYPE' => distrib_type
|
'TYPE' => distrib_type
|
||||||
}.map{ |k, v| "#{k}=#{v}" }.join(' ')
|
}.map{ |k, v| "#{k}=#{v}" }.join(' ')
|
||||||
|
|
||||||
|
lock_str = "#{save_to_repository_id}-#{build_for_platform_id}"
|
||||||
options = {
|
options = {
|
||||||
:id => bl.id,
|
:id => bl.id,
|
||||||
:arch => bl.arch.name,
|
:arch => bl.arch.name,
|
||||||
|
@ -246,7 +247,8 @@ module AbfWorker
|
||||||
:platform => {:platform_path => platform_path},
|
:platform => {:platform_path => platform_path},
|
||||||
:repository => {:id => bl.save_to_repository.id},
|
:repository => {:id => bl.save_to_repository.id},
|
||||||
:type => :publish,
|
:type => :publish,
|
||||||
:time_living => 9600 # 160 min
|
:time_living => 9600, # 160 min
|
||||||
|
:extra => {:lock_str => lock_str}
|
||||||
}
|
}
|
||||||
|
|
||||||
packages = {:sources => [], :binaries => {:x86_64 => [], :i586 => []}}
|
packages = {:sources => [], :binaries => {:x86_64 => [], :i586 => []}}
|
||||||
|
@ -288,7 +290,7 @@ module AbfWorker
|
||||||
@redis.lpush LOCKED_PROJECTS_FOR_CLEANUP, key
|
@redis.lpush LOCKED_PROJECTS_FOR_CLEANUP, key
|
||||||
end
|
end
|
||||||
|
|
||||||
@redis.lpush(LOCKED_REP_AND_PLATFORMS, "#{save_to_repository_id}-#{build_for_platform_id}")
|
@redis.lpush(LOCKED_REP_AND_PLATFORMS, lock_str)
|
||||||
return true
|
return true
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -13,7 +13,7 @@ module AbfWorker
|
||||||
AbfWorker::BuildListsPublishTaskManager.unlock_repository options['id']
|
AbfWorker::BuildListsPublishTaskManager.unlock_repository options['id']
|
||||||
else
|
else
|
||||||
if options['extra']['regenerate'] # Regenerate metadata
|
if options['extra']['regenerate'] # Regenerate metadata
|
||||||
AbfWorker::BuildListsPublishTaskManager.unlock_rep_and_platform nil, options['extra']['lock_str']
|
AbfWorker::BuildListsPublishTaskManager.unlock_rep_and_platform options['extra']['lock_str']
|
||||||
elsif options['extra']['create_container'] # Container has been created
|
elsif options['extra']['create_container'] # Container has been created
|
||||||
case status
|
case status
|
||||||
when COMPLETED
|
when COMPLETED
|
||||||
|
@ -50,7 +50,7 @@ module AbfWorker
|
||||||
AbfWorker::BuildListsPublishTaskManager.cleanup_failed options['projects_for_cleanup']
|
AbfWorker::BuildListsPublishTaskManager.cleanup_failed options['projects_for_cleanup']
|
||||||
end
|
end
|
||||||
|
|
||||||
AbfWorker::BuildListsPublishTaskManager.unlock_rep_and_platform(build_lists.first || subject)
|
AbfWorker::BuildListsPublishTaskManager.unlock_rep_and_platform options['extra']['lock_str']
|
||||||
end
|
end
|
||||||
|
|
||||||
def update_results(build_list = subject)
|
def update_results(build_list = subject)
|
||||||
|
|
Loading…
Reference in New Issue