From 89f2939484c3dee3e8119f5b54fbfd75b146f02f Mon Sep 17 00:00:00 2001 From: Erich Eckner Date: Thu, 29 Mar 2018 15:13:03 +0200 Subject: bin/build-packages: do not lock ping-to-buildmaster for each straw - this does not work! --- bin/build-packages | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) (limited to 'bin') diff --git a/bin/build-packages b/bin/build-packages index 78690b9..e9ac0c4 100755 --- a/bin/build-packages +++ b/bin/build-packages @@ -273,9 +273,22 @@ while [ "${count}" -ne 0 ]; do extract_source_directory "${git_repo}" "${git_revision}" "${mod_git_revision}" "${tmp_dir}" "${sub_pkgrel}" cd "${tmp_dir}" + echo 'nothing' > "${tmp_dir}/.ping-build-master" + if [ -z "${forced_package}" ]; then + # we get a lock on "${work_dir}/ping-build-master.lock", + # if we release that lock, ping-to-master should stop _immediately_ + exec 9> "${work_dir}/ping-build-master.lock" + if ! flock -n 9; then + >&2 echo 'ERROR: Cannot lock ping-to-master - this should not happen.' + exit 2 + fi + "${base_dir}/bin/ping-to-master" "$$" "${tmp_dir}" & + fi success=false for straw in ${straws_that_might_repair_failing_builds}; do + echo 'preparing' > "${tmp_dir}/.ping-build-master" + if echo "${straw}" | \ grep -qF ':mirrored_source:'; then # maybe a missing source is/was the problem? @@ -370,16 +383,6 @@ while [ "${count}" -ne 0 ]; do rm {} \; echo 'building' > "${tmp_dir}/.ping-build-master" - if [ -z "${forced_package}" ]; then - # we get a lock on "${work_dir}/ping-build-master.lock", - # if we release that lock, ping-to-master should stop _immediately_ - exec 9> "${work_dir}/ping-build-master.lock" - if ! flock -n 9; then - >&2 echo 'ERROR: Cannot lock ping-to-master - this should not happen.' - exit 2 - fi - "${base_dir}/bin/ping-to-master" "$$" "${tmp_dir}" & - fi >&2 printf '%s: building package "%s" (revisions %s %s, repository %s, straw %s) ...' \ "$(date +'%Y-%m-%d %T')" \ "${package}" \ -- cgit v1.2.3-54-g00ecf