Bug 188295

Summary: [ews-build] Add build step to Check Patch Relevance
Product: WebKit Reporter: Aakash Jain <aakash_jain>
Component: Tools / TestsAssignee: Aakash Jain <aakash_jain>
Status: RESOLVED FIXED    
Severity: Normal CC: aakash_jain, lforschler, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: Other   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
WIP
none
Proposed patch lforschler: review+

Description Aakash Jain 2018-08-02 19:09:38 PDT
There are certain builders (e.g.: webkitpy, jsc) which should build only when patch is relevant to them, i.e.: when the patch modifies specific files. If the patch is not relevant, it should be skipped. This would help in efficiently using the resources to build patches which we need to.

We should add a build-step in order to achieve the above.
Comment 1 Aakash Jain 2018-08-02 19:13:00 PDT
Created attachment 346444 [details]
WIP
Comment 2 Aakash Jain 2018-08-03 10:08:31 PDT
Created attachment 346500 [details]
Proposed patch

Sample runs:
Patch without relevant changes: http://ews-build.webkit-uat.org/#/builders/16/builds/28
Patch with relevant changes: http://ews-build.webkit-uat.org/#/builders/16/builds/29
Comment 3 Lucas Forschler 2018-08-03 10:41:04 PDT
Comment on attachment 346500 [details]
Proposed patch

View in context: https://bugs.webkit.org/attachment.cgi?id=346500&action=review

> Tools/BuildSlaveSupport/ews-build/steps.py:116
> +

Please add a comment that these paths came from https://trac.webkit.org/browser/webkit/trunk/Tools/Scripts/webkitpy/tool/steps/checkpatchrelevance.py#L41
It would be nice if we only had one place in source for this knowledge to live. As it is now, someone will need to keep the two in sync.
Maybe we can have future unit test check to ensure they contain the same data?

> Tools/BuildSlaveSupport/ews-build/steps.py:154
> +            # This build doesn't have an patch, it might be a force build.

nit: this build doesn't have "a" patch
Comment 4 Aakash Jain 2018-08-03 14:35:47 PDT
(In reply to Lucas Forschler from comment #3)
> Please add a comment that these paths came from
> https://trac.webkit.org/browser/webkit/trunk/Tools/Scripts/webkitpy/tool/
> steps/checkpatchrelevance.py#L41
> It would be nice if we only had one place in source for this knowledge to live. As it is now, someone will need to keep the two in sync. Maybe we can have future unit test check to ensure they contain the same data?
The code in webkitpy/tool/steps/checkpatchrelevance.py would be deprecated, so we do not need to keep them in sync.

> nit: this build doesn't have "a" patch
Fixed.
Comment 5 Aakash Jain 2018-08-03 14:36:25 PDT
Committed r234559: <https://trac.webkit.org/changeset/234559>
Comment 6 Radar WebKit Bug Importer 2018-08-03 16:22:29 PDT
<rdar://problem/42918696>