Page MenuHomePhabricator

Reduce size of artifacts stored on the CI Jenkins master
Open, Stalled, MediumPublic

Description

There are a few jobs with a few giga bytes of artifacts. The total is ~ 220GB on contint1001. We should reduce it.

$ sort -nr jenkins-build-sizes.txt |head -n 10
221978	/srv/jenkins/builds
63193	/srv/jenkins/builds/mediawiki-fresnel-patch-docker
33194	/srv/jenkins/builds/mwcore-codehealth-patch
13786	/srv/jenkins/builds/wmf-quibble-core-vendor-mysql-php72-docker
11116	/srv/jenkins/builds/wmf-quibble-vendor-mysql-php72-docker
10292	/srv/jenkins/builds/mwcore-phpunit-coverage-master
10255	/srv/jenkins/builds/wmf-quibble-selenium-php72-docker
9340	/srv/jenkins/builds/mediawiki-quibble-vendor-mysql-php72-docker
8515	/srv/jenkins/builds/quibble-vendor-mysql-php72-docker
7990	/srv/jenkins/builds/mwcore-codehealth-master-non-voting

I had previously added a patch to compress the MediaWiki Junit files after they have been processed by the Jenkins Junit plugin. Possibly we could just delete them instead since Jenkins aggregates them in a single one.

  • mwcore-codehealth-patch runs the SonarQube Scanner with debug logging (-X).
  • mediawiki-fresnel-patch-docker has a performance json trace file for each test. It is an uncompressed file so that users can drag'n drop it to the Chromium performance tab.

Event Timeline

hashar created this task.Apr 2 2020, 8:21 PM
Restricted Application added a subscriber: Aklapper. · View Herald TranscriptApr 2 2020, 8:21 PM

Change 585600 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] jjb: disable SonarQube debug output

https://gerrit.wikimedia.org/r/585600

hashar claimed this task.Apr 2 2020, 8:24 PM
hashar triaged this task as Medium priority.Apr 2 2020, 8:27 PM
hashar updated the task description. (Show Details)Apr 2 2020, 9:30 PM
hashar updated the task description. (Show Details)

Change 585600 merged by jenkins-bot:
[integration/config@master] jjb: disable SonarQube debug output

https://gerrit.wikimedia.org/r/585600

hashar added a comment.Apr 2 2020, 9:33 PM

For Fresnel we might be able to use an Apache tweak similar to the one we used for the performance flame graphs (Xenon):

<Directory /srv/xenon>
     AddType image/svg+xml svg svgz
     AddEncoding gzip svgz
</Directory>

But Jenkins has its own web server served through Apache mod_proxy. The AddType / AddEncoding directive are not available in such context.

hashar added a comment.Apr 6 2020, 2:06 PM

The codehealth jobs no more run with SonarQube debug output. That dramatically shrinks the ouput sent to the console.

hashar added a comment.May 3 2020, 9:18 PM

Left to do is compressing the Chrome performance traces generated by mediawiki-fresnel-patch-docker. But that should happen after the CI machines have been upgraded to Buster.

hashar changed the task status from Open to Stalled.May 18 2020, 2:51 PM

Will revisit after the migration to Buster.

Change 598970 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] jjb: keep less builds for some high traffic jobs

https://gerrit.wikimedia.org/r/598970

Change 598970 merged by jenkins-bot:
[integration/config@master] jjb: keep less builds for some high traffic jobs

https://gerrit.wikimedia.org/r/598970