mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-02-02 09:46:52 -05:00
Merge bitcoin/bitcoin#22075: guix: Misc leftover usability improvements
108a6be92a
guix: Check for disk space availability before building (Carl Dong)d7dec89091
guix: Remove dest if OUTDIR mv fails (Carl Dong) Pull request description: There seems to be some corner cases that can be hit when guix scripts unexpectedly fail in the middle of operation, see: https://gnusha.org/bitcoin-builds/2021-05-24.log - Perform an early disk space check for `guix-build` - Overwrite existing output directory after a successful build (the existing one might be malformed), and cleanup output directory if the `mv` somehow fails ACKs for top commit: laanwj: Tested ACK108a6be92a
achow101: ACK108a6be92a
Tree-SHA512: cf6438317da40bf55714cd2d8cce859b3d435cc66cabefe8d4a53552d7880966acfe84ffe8fadf1c80e368ae6b037992258a6d409df85ffc6ce8bf780e98e2e5
This commit is contained in:
commit
7cac26246a
3 changed files with 28 additions and 2 deletions
|
@ -138,6 +138,28 @@ for host in $HOSTS; do
|
||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
|
|
||||||
|
################
|
||||||
|
# VERSION_BASE should have enough space
|
||||||
|
################
|
||||||
|
|
||||||
|
avail_KiB="$(df -Pk "$VERSION_BASE" | sed 1d | tr -s ' ' | cut -d' ' -f4)"
|
||||||
|
total_required_KiB=0
|
||||||
|
for host in $HOSTS; do
|
||||||
|
case "$host" in
|
||||||
|
*darwin*) required_KiB=440000 ;;
|
||||||
|
*mingw*) required_KiB=7600000 ;;
|
||||||
|
*) required_KiB=6400000 ;;
|
||||||
|
esac
|
||||||
|
total_required_KiB=$((total_required_KiB+required_KiB))
|
||||||
|
done
|
||||||
|
|
||||||
|
if (( total_required_KiB > avail_KiB )); then
|
||||||
|
total_required_GiB=$((total_required_KiB / 1048576))
|
||||||
|
avail_GiB=$((avail_KiB / 1048576))
|
||||||
|
echo "Performing a Bitcoin Core Guix build for the selected HOSTS requires ${total_required_GiB} GiB, however, only ${avail_GiB} GiB is available. Please free up some disk space before performing the build."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
################
|
################
|
||||||
# Check that we can connect to the guix-daemon
|
# Check that we can connect to the guix-daemon
|
||||||
################
|
################
|
||||||
|
|
|
@ -447,4 +447,6 @@ mkdir -p "$DISTSRC"
|
||||||
esac
|
esac
|
||||||
) # $DISTSRC
|
) # $DISTSRC
|
||||||
|
|
||||||
mv --no-target-directory "$OUTDIR" "$ACTUAL_OUTDIR"
|
rm -rf "$ACTUAL_OUTDIR"
|
||||||
|
mv --no-target-directory "$OUTDIR" "$ACTUAL_OUTDIR" \
|
||||||
|
|| ( rm -rf "$ACTUAL_OUTDIR" && exit 1 )
|
||||||
|
|
|
@ -100,4 +100,6 @@ mkdir -p "$DISTSRC"
|
||||||
esac
|
esac
|
||||||
) # $DISTSRC
|
) # $DISTSRC
|
||||||
|
|
||||||
mv --no-target-directory "$OUTDIR" "$ACTUAL_OUTDIR"
|
rm -rf "$ACTUAL_OUTDIR"
|
||||||
|
mv --no-target-directory "$OUTDIR" "$ACTUAL_OUTDIR" \
|
||||||
|
|| ( rm -rf "$ACTUAL_OUTDIR" && exit 1 )
|
||||||
|
|
Loading…
Add table
Reference in a new issue