Skip to content

Drop V=1 from node-test-commit-linux to shrink console logs (~480 MB per PR run today) #4456

Description

@codebytere

Refs: #4419
Refs: #4453
Refs: nodejs/node#65826

While looking at the disk pressure on the built-in node i measured what one PR run writes in console logs. node-test-pull-request 77023 (a normal, complete run) is 84 builds and 482 MB of console text; 475 MB of that is the 35 configurations that compile (node-test-commit-linux, -plinux, -linuxone, -arm, -arm-debug, -aix, -osx, -smartos, -linux-containered), 12-22 MB each, and in every one of them everything before TAP version 13 is compiler command lines - e.g. nodes=rhel8-x64 is 15.2 MB with 14.7 MB before the tests start. For comparison a node-test-binary-windows-js-suites console is 0.17 MB and node-compile-windows ~1 MB. At ~15 PR runs a day that's on the order of 7 GB/day of console from PR testing alone, before the daily jobs, which lines up with the compressor -mtime juggling in #4419.

Two things produce it. Most jobs run plain make run-ci -j N, and node's Makefile has been forwarding V=0 to the gyp makefile, which treats any non-empty V as verbose; nodejs/node#65826 fixes that, so once it lands (and reaches the release lines) those consoles should drop to well under 1 MB each with no change here. node-test-commit-linux is the exception: its job config runs make run-ci -j 2 V=1 explicitly (visible at the top of any of its consoles), so its 10 configurations (~155 MB per PR run) stay verbose until that V=1 is removed from the job.

The ask is to drop V=1 from node-test-commit-linux's shell step (and anywhere else it's set that i haven't spotted). If full command lines are wanted somewhere for toolchain debugging, keeping V=1 on a single configuration would preserve that at a tenth of the cost.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions