mirror of
https://github.com/digital-asset/daml.git
synced 2024-11-10 00:35:25 +03:00
793253ca87
I've witnessed a build ([link], though that will likely expire soon) that failed with a "No space left on device" error after skipping the cleanup step because the machine still had 68GB free. [link]: https://dev.azure.com/digitalasset/daml/_build/results?buildId=87591&view=logs&j=870bb40c-6da0-5bff-67ed-547f10fa97f2&t=deecee86-545a-596e-8b0d-fb7d606fe9f2 With the machines only having 200GB disk size total, cleaning up at 80 is probably going to start hampering the overall efficiency of the cache. It may be time to think about increasing the disk size itself (or finding ways to reduce the size requirements of our builds). Important note, though: we can't actually increase the macOS disk size very much. The failure happened on the `compatibility_linux` job. CHANGELOG_BEGIN CHANGELOG_END
58 lines
1.4 KiB
YAML
58 lines
1.4 KiB
YAML
# Copyright (c) 2021 Digital Asset (Switzerland) GmbH and/or its affiliates. All rights reserved.
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
steps:
|
|
- bash: |
|
|
set -euo pipefail
|
|
|
|
eval "$(dev-env/bin/dade-assist)"
|
|
|
|
exec 1> >(while IFS= read -r line; do echo "$(date -uIs) [out]: $line"; done)
|
|
exec 2> >(while IFS= read -r line; do echo "$(date -uIs) [err]: $line"; done >&2)
|
|
|
|
## START temp debug
|
|
UNAME=$(uname)
|
|
|
|
case "$UNAME" in
|
|
Darwin)
|
|
MPS="/var/tmp/_bazel_vsts /Users/vsts/.bazel-cache"
|
|
CMD="hdiutil info"
|
|
;;
|
|
Linux)
|
|
MPS="/home/vsts/.cache/bazel /home/vsts/.bazel-cache"
|
|
CMD="mount"
|
|
;;
|
|
*)
|
|
echo "Unexpected uname: $UNAME"
|
|
MPS=
|
|
;;
|
|
esac
|
|
|
|
for path in $MPS; do
|
|
if ! ($CMD | grep -F "$path"); then
|
|
echo "$path is not a mount point, forcing cache reset"
|
|
$HOME/reset_caches.sh
|
|
echo "Done."
|
|
fi
|
|
done
|
|
## END temp debug
|
|
|
|
df -h .
|
|
if [ $(df -m . | sed 1d | awk '{print $4}') -lt 80000 ]; then
|
|
echo "Disk full, cleaning up..."
|
|
$HOME/reset_caches.sh
|
|
echo "Done."
|
|
df -h .
|
|
fi
|
|
|
|
## More temp debugging
|
|
for path in $MPS; do
|
|
if ! ($CMD | grep -F "$path"); then
|
|
echo "$path is not a mount point, forcing cache reset"
|
|
$HOME/reset_caches.sh
|
|
echo "Done."
|
|
fi
|
|
done
|
|
## End more debugging
|
|
displayName: clean-up disk cache
|