Add e2e compose to test cas cleanup
Description
Test CAS cleanup using e2e docker compose. Currently, unique files will keep being uploading to CAS. While the cleanup service removes them. The end user will get updates on the size of CAS (i.e 600 total
). The test will complete in $CLEANUP_TEST_LENGTH
and exit 0, unless the CAS size dipper below $CLEANUP_LOW_WATERMARK - 2*CLEANUP_BATCH_SIZE
or increased above $CLEANUP_HIGH_WATERMARK + 2*CLEANUP_BATCH_SIZE
. It will take potentially up to a minute or more for buildgrid to accept cleanup/upload jobs.
Default Values:
-
CLEANUP_LOW_WATERMARK
=8000 (bytes) -
CLEANUP_HIGH_WATERMARK
=10000 (bytes) -
CLEANUP_BATCH_SIZE=500
(bytes) -
CLEANUP_TEST_LENGTH=100
(seconds)
Test
docker-compose -f docker-compose-cleanup.yml build --pull && docker-compose -f docker-compose-cleanup.yml up --abort-on-container-exit --scale cleanup=5
Note you can modify behavior by scaling the cleanup
and upload
services while also tuning the configuration environment variables.
Issues
Buildgrid will lag after uploading an empty blob. This is a bug in botocore: https://github.com/boto/botocore/pull/1328 (https://github.com/minio/minio/issues/6540)