diff options
author | Levente Polyak <anthraxx@archlinux.org> | 2021-01-31 16:08:36 +0100 |
---|---|---|
committer | Levente Polyak <anthraxx@archlinux.org> | 2021-01-31 23:44:11 +0100 |
commit | 8c26438df8be47531e4c071dc44d78a02fbf1d76 (patch) | |
tree | 705eb98bae690a539ad10f6457549e155cc24e8b | |
parent | a49bcf20970214c12a0726c0f4bf4abb1a378ab2 (diff) | |
download | devtools-8c26438df8be47531e4c071dc44d78a02fbf1d76.tar.xz |
makechrootpkg: only expose failed build logs instead of products
After further followups always moving all products isn't actually
desired as they can theoretically be broken in various ways if
arch-nspawn exists non successful.
However, as we would like to always preserve the produced log files we
instead split out the logfiles into an own function and call that for
unsuccessful buils.
Fixes 4f305aa3
-rw-r--r-- | makechrootpkg.in | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/makechrootpkg.in b/makechrootpkg.in index 9897eba..d308af2 100644 --- a/makechrootpkg.in +++ b/makechrootpkg.in @@ -242,6 +242,15 @@ download_sources() { die "Could not download sources." } +move_logfiles() { + local l + for l in "$copydir"/logdest/*; do + [[ $l == */logpipe.* ]] && continue + chown "$src_owner" "$l" + mv "$l" "$LOGDEST" + done +} + move_products() { local pkgfile for pkgfile in "$copydir"/pkgdest/*; do @@ -254,12 +263,7 @@ move_products() { fi done - local l - for l in "$copydir"/logdest/*; do - [[ $l == */logpipe.* ]] && continue - chown "$src_owner" "$l" - mv "$l" "$LOGDEST" - done + move_logfiles for s in "$copydir"/srcpkgdest/*; do chown "$src_owner" "$s" @@ -367,10 +371,11 @@ if arch-nspawn "$copydir" \ /chrootbuild "${makepkg_args[@]}" then mapfile -t pkgnames < <(sudo -u "$makepkg_user" bash -c 'source PKGBUILD; printf "%s\n" "${pkgname[@]}"') + move_products else (( ret += 1 )) + move_logfiles fi -move_products (( temp_chroot )) && delete_chroot "$copydir" "$copy" |