By default Buildbot prints worker's environment variables in each build step. This is unnecessary and makes the logs hard to read. We should disable printing environment variable in most of the build steps. example (from https://ews-build.webkit.org/#/builders/9/builds/1071/steps/5/logs/stdio): environment: Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.aTwloZVLIM/Render HOME=/Users/buildbot LOGNAME=buildbot OLDPWD=/Users/buildbot PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin PWD=/Volumes/Data/worker/API-Tests-iOS-Simulator-EWS/build PYPI_MIRRORS=pypi.apple.com SHELL=/bin/bash SHLVL=1 SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.D4SBJF1v2I/Listeners TMPDIR=/var/folders/vr/hgrp98wj6w797xrk_t22t3vh0000gn/T/ USER=buildbot VERSIONER_PYTHON_PREFER_32_BIT=no VERSIONER_PYTHON_VERSION=2.7 XPC_FLAGS=0x0 XPC_SERVICE_NAME=0 _=/usr/local/bin/twistd __CF_USER_TEXT_ENCODING=0x1F5:0x0:0x0 using PTY: False
Created attachment 368335 [details] Patch
Attachment 368335 [details] did not pass style-queue: ERROR: Tools/BuildSlaveSupport/ews-build/steps.py:128: [ApplyPatch.__init__] Use of super on an old style class [pylint/E1002] [5] ERROR: Tools/BuildSlaveSupport/ews-build/steps.py:687: [ArchiveBuiltProduct.__init__] Use of super on an old style class [pylint/E1002] [5] ERROR: Tools/BuildSlaveSupport/ews-build/steps.py:729: [DownloadBuiltProduct.__init__] Use of super on an old style class [pylint/E1002] [5] ERROR: Tools/BuildSlaveSupport/ews-build/steps.py:742: [ExtractBuiltProduct.__init__] Use of super on an old style class [pylint/E1002] [5] ERROR: Tools/BuildSlaveSupport/ews-build/steps.py:756: [RunAPITests.__init__] Use of super on an old style class [pylint/E1002] [5] Total errors found: 5 in 3 files If any of these errors are false positives, please file a bug against check-webkit-style.
looks good to me, except for the style errors... (not sure if that is avoidable)
Comment on attachment 368335 [details] Patch Maybe it'd be worth setting logEnviron=False in a new base class that inherited from shell.ShellCommand? Such as: class MinimalLoggingShellCommand(shell.ShellCommand): logEnviron = False
If you decide not to wrap shell.ShellCommand, I think the style errors can be avoided by moving the logEnviron=False to member vars of each class you want them used for. It's also a bit more clear since that's how other (static) step configurations are set.
> class MinimalLoggingShellCommand(shell.ShellCommand): > logEnviron = False logEnviron can not be a class variable, it has to be passed an instance variable (passed in __init__). We noticed similar behavior with 'timeout' in https://github.com/buildbot/buildbot/issues/3887#issuecomment-356736827
Created attachment 372993 [details] Patch
Comment on attachment 372993 [details] Patch Clearing flags on attachment: 372993 Committed r246882: <https://trac.webkit.org/changeset/246882>
All reviewed patches have been landed. Closing bug.
<rdar://problem/52263170>