Since API and layout test builders download archive and run test for that archive, they don't need to apply the patch to working directory. Similarly they don't even need to update the working directory. These steps might take long time for large patches (and might even fail in case of network issues). We shouldn't run these steps on these builders.
Created attachment 365010 [details] Patch
Attachment 365010 [details] did not pass style-queue: ERROR: Tools/BuildSlaveSupport/ews-build/factories.py:102: [TestFactory.__init__] Undefined variable 'ConfigureBuild' [pylint/E0602] [5] ERROR: Tools/BuildSlaveSupport/ews-build/factories.py:103: [TestFactory.__init__] Undefined variable 'ValidatePatch' [pylint/E0602] [5] ERROR: Tools/BuildSlaveSupport/ews-build/factories.py:104: [TestFactory.__init__] Undefined variable 'PrintConfiguration' [pylint/E0602] [5] ERROR: Tools/BuildSlaveSupport/ews-build/factories.py:105: [TestFactory.__init__] Undefined variable 'CheckOutSource' [pylint/E0602] [5] Total errors found: 4 in 2 files If any of these errors are false positives, please file a bug against check-webkit-style.
The checkout is relevant for both API and layout tests, though. As is the patch. For layout tests, if we don't apply the patch, we won't get any updates to the layout tests or test results. For API tests, it's less of a concern since the only thing we'd potentially be missing is harness code in webkitpy. In both cases, I feel like not applying the patch is confusing and undermines the purpose of EWS. We want EWS to fail if someone uploads a tools patch that breaks layout tests, right?