fix(ci): preserve dependency parent layers during review cleanup
This commit is contained in:
@@ -14,5 +14,6 @@ for repository in creative-studio-review creative-wiki-tests creative-wiki-revie
|
||||
echo "Keeping container-referenced review image: $tag"
|
||||
continue
|
||||
fi
|
||||
docker image rm "$tag"
|
||||
# Preserve parent layers so unchanged dependency installs stay cached.
|
||||
docker image rm --no-prune "$tag"
|
||||
done
|
||||
|
||||
@@ -38,11 +38,11 @@ class ReviewCleanupTests(unittest.TestCase):
|
||||
'DOCKER_CALLS': str(calls), 'REVIEW_SHA': sha, **extra})
|
||||
return result.returncode, [json.loads(line) for line in calls.read_text().splitlines()] if calls.exists() else []
|
||||
|
||||
def test_removes_only_exact_review_tags_without_force(self):
|
||||
def test_removes_only_exact_review_tags_without_force_and_keeps_parent_cache(self):
|
||||
code, calls = self.run_cleanup()
|
||||
self.assertEqual(code, 0)
|
||||
self.assertEqual([args for args in calls if args[:2] == ['image', 'rm']], [
|
||||
['image', 'rm', name + ':' + SHA] for name in
|
||||
['image', 'rm', '--no-prune', name + ':' + SHA] for name in
|
||||
['creative-studio-review', 'creative-wiki-tests', 'creative-wiki-review']])
|
||||
self.assertFalse(any('-f' in args or 'prune' in args or 'volume' in args for args in calls))
|
||||
|
||||
|
||||
Reference in New Issue
Block a user