Files
carbon-lang/scripts/clean_disk_cache.sh
T
Chandler Carruth 70071f9ede Add a script to clean the disk cache. (#585)
Currently, Bazel's disk cache grows without bound:
https://github.com/bazelbuild/bazel/issues/5139

Until this is fixed, provide a script to remove entries after 30 days.
If things are changing so rapidly that we need a more aggressive
threshold, we can adjust as we go. I'm somewhat hoping that we don't end
up with *that* many build artifacts, but let's see.
2021-06-17 10:21:05 -07:00

21 lines
882 B
Bash
Executable File

#!/bin/bash -eu
#
# Part of the Carbon Language project, under the Apache License v2.0 with LLVM
# Exceptions. See /LICENSE for license information.
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
#
# Clean out any files in the Bazel disk cache which haven't been used for over
# thirty days.
# Default to the same directory in the project `.blazerc`, but you can set this
# environment variable to override that.
: ${BAZEL_DISK_CACHE_PATH:=~/.cache/carbon-lang-build-cache}
# As a courtesy, compute and print some approximate stats.
total_file_count=$(find "$BAZEL_DISK_CACHE_PATH" -type f | wc -l)
stale_file_count=$(find "$BAZEL_DISK_CACHE_PATH" -type f -atime +30 | wc -l)
echo "Removing $stale_file_count files out of $total_file_count total."
# Just re-running the find is simpler than managing any state.
find "$BAZEL_DISK_CACHE_PATH" -type f -atime +30 -delete