servo: Merge #16573 - Auto clean old nightlies on Travis (from UK992:travis); r=aneeshusa

This could solve `no space left` problem.

Source-Repo: https://github.com/servo/servo
Source-Revision: cc74b5b36f03dca9bd543885222ed0e6d91fedcd

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 69bc9d92343b14b567fc153b35c3af5c78f956d5
This commit is contained in:
UK992 2017-04-22 19:17:12 -05:00
parent 8d40df4dc7
commit 9604d167db
2 changed files with 6 additions and 9 deletions

View File

@ -28,6 +28,8 @@ matrix:
- .cargo
- .servo
- $HOME/.ccache
before_cache:
- ./mach clean-nightlies --keep 2 --force
env: CCACHE=/usr/bin/ccache
addons:
apt:

View File

@ -306,19 +306,14 @@ class MachCommands(CommandBase):
for tool in ["rust", "cargo"]:
commit_file = '{}-commit-hash'.format(tool)
cmd = subprocess.Popen(
['git', 'log', '--pretty=format:%H', '-n', keep, commit_file],
['git', 'log', '--oneline', '--no-color', '-n', keep, '--patch', commit_file],
stdout=subprocess.PIPE,
universal_newlines=True
)
stdout, _ = cmd.communicate()
for commit in stdout.splitlines():
cmd = subprocess.Popen(
['git', 'show', '{}:{}'.format(commit, commit_file)],
stdout=subprocess.PIPE,
universal_newlines=True
)
commit_hash, _ = cmd.communicate()
to_keep[tool].add(commit_hash.rstrip())
for line in stdout.splitlines():
if line.startswith("+") and not line.startswith("+++"):
to_keep[tool].add(line[1:])
removing_anything = False
for tool in ["rust", "cargo"]: