Add task level console logging suppression.
Review Request #2580 - Created Aug. 6, 2015 and discarded
|benjyw, gmalmquist, jsirois, zundel|
This change adds console output suppression through log configuration added to work units. Please refer to implementation discussion and outlined design on the desgin doc: https://docs.google.com/document/d/1i6koQ1okCXyAmnulR2zDPshGo8m4jBdkovn0OLg-I4Y/edit?usp=sharing
Travis CI Build fails: https://travis-ci.org/pantsbuild/pants/builds/74496796
test_group_taskdon't have global options registered with their tasks and are causing the build to fail when looking for
colorsoptions to create
log_config. I have not any luck hardcoding the options into the tests as of yet.
|Should we bite the bullet and put all these workunit* things in one struct? Alternatively we could curry them all ...||Benjy Weinberger|
|you can do workunit.outcome() >= WorkUnit.WARNING The constants are ordered by design, to allow such things. Although, shouldn't it be ...||Benjy Weinberger|
Looks good so far, and minimally intrusive, which is great. I'm not sure I fully understand what this is doing though. Was there going to be capture of suppressed output, so it could be emitted under certain conditions?
Should we bite the bullet and put all these workunit* things in one struct?
Alternatively we could curry them all into workunit_factory?
you can do
workunit.outcome() >= WorkUnit.WARNING
The constants are ordered by design, to allow such things.
Although, shouldn't it be
workunit.outcome() > WorkUnit.WARNING?
If we have warnings, and we're at the 'warn' log level, don't we want to not suppress?
I guess this would mean no suppression at all if you have some persistent warning. But then we can just add an 'error' log level. I'm not sure why we don't have one.
Congrats on a great internship Jessica! Thanks for all your contributions to Pants. Sorry that this change went through the wringer so much. But think of it as a realistic industry engineering experience: We've all had commits that underwent massive change after review, and I think the design doc process you shepherded was really helpful in getting to a good implementation. Enjoy the rest of your summer!
This looks great mod the missing stdout/stderr buffer and dump Benjy mentioned.
We created this work unit so that some work unit would inheirt the config for the task. However, execute_chunk() for java_compile ends up creating workers that get executed in threads.  These workers can't seem to find this workunit as a parent.
Hi Jessica, Could you please mark this review as discarded?
This change shipped in the form two RBs:
https://rbcommons.com/s/twitter/r/2590/ to suppress the output
https://rbcommons.com/s/twitter/r/2614/ to use workunit log information to set the log level and color information in the console plaintext reporter.
Thanks for all your hard work! Could you please mark this review as discarded?