We have Jenkins agent instances overflowing the /srv. With MediaWiki selenium builds each taking 11G, 3 concurrent builds (33G) barely fit in the 36G partition.
I have rediscovered the npm cache is ever growing and currently:
Jenkins job | Disk size |
---|---|
wmf-quibble-selenium-php74-docker | 5.4 GB |
wmf-quibble-selenium-php81-docker | 5.8 GB |
That comes from looking at Castor:
hashar@integration-castor05:~$ du -m -s /srv/castor/castor-mw-ext-and-skins/master/wmf-quibble*selenium*/npm/_cacache 5436 /srv/castor/castor-mw-ext-and-skins/master/wmf-quibble-selenium-php74-docker/npm/_cacache 5822 /srv/castor/castor-mw-ext-and-skins/master/wmf-quibble-selenium-php81-docker/npm/_cacache
Npm has a command to maintain the cache npm cache verify which states it garbage collects it. If I had it to the build https://gerrit.wikimedia.org/r/c/mediawiki/core/+/932048 that yields:
> selenium-test > npm cache verify; echo $?; echo done; exit 1; wdio ./tests/selenium/wdio.conf.js Cache verified and compressed (/cache/npm/_cacache) Content verified: 8284 (425870788 bytes) Content garbage-collected: 11580 (5099415924 bytes) Index entries: 8284 Finished in 38.675s
So it verifed ~ 425 MB and garbage collected 5 GB.
Which looks like maybe we should have Quibble to garbage collect for us as a tear down command when the build is a success?