Bug 199408 - [ews-build] Add build steps to Install Wpe and Gtk dependencies
Summary: [ews-build] Add build steps to Install Wpe and Gtk dependencies
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Tools / Tests (show other bugs)
Version: Other
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Aakash Jain
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2019-07-02 09:40 PDT by Aakash Jain
Modified: 2020-02-04 15:30 PST (History)
9 users (show)

See Also:


Attachments
Patch (6.41 KB, patch)
2019-07-02 09:49 PDT, Aakash Jain
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Aakash Jain 2019-07-02 09:40:49 PDT
Add build steps to Install Wpe and Gtk Dependencies to EWS configuration. This step is required to install appropriate dependencies before compiling webkit for gtk/wpe.
Comment 1 Aakash Jain 2019-07-02 09:49:11 PDT
Created attachment 373334 [details]
Patch
Comment 2 EWS Watchlist 2019-07-02 09:50:36 PDT Comment hidden (obsolete)
Comment 3 Aakash Jain 2019-07-02 09:51:15 PDT
Comment on attachment 373334 [details]
Patch

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

factory.py would be updated to run this build step in subsequent patch.

> Tools/BuildSlaveSupport/ews-build/steps.py:597
> +    name = 'jhbuild'

Not sure why this step is called 'jhbuild'. Copied it from build.webkit.org configuration.
Comment 4 Michael Catanzaro 2019-07-02 15:40:27 PDT
Comment on attachment 373334 [details]
Patch

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

So I don't see how these new classes get used anywhere? Is it magic? :D

>> Tools/BuildSlaveSupport/ews-build/steps.py:597
>> +    name = 'jhbuild'
> 
> Not sure why this step is called 'jhbuild'. Copied it from build.webkit.org configuration.

JHBuild is a development build environment that everything runs in. Basically it's an overlay on top of the host's system dependencies where we can build and install software to be used inside the JHBuild environment without requiring root.

We usually write "jhbuild" because the Shift key requires effort to press. :)

> Tools/BuildSlaveSupport/ews-build/steps.py:601
> +    haltOnFailure = False

Hm, I think failure should be fatal. We have a big problem if the JHBuild step fails. It's unlikely WebKit would actually be able to run successfully in this case anyway.
Comment 5 Michael Catanzaro 2019-07-02 15:40:56 PDT
(In reply to Aakash Jain from comment #3)
> Not sure why this step is called 'jhbuild'. Copied it from build.webkit.org
> configuration.

Missed this. Not magic!
Comment 6 Aakash Jain 2019-07-02 16:14:20 PDT
Comment on attachment 373334 [details]
Patch

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

>> Tools/BuildSlaveSupport/ews-build/steps.py:601
>> +    haltOnFailure = False
> 
> Hm, I think failure should be fatal. We have a big problem if the JHBuild step fails. It's unlikely WebKit would actually be able to run successfully in this case anyway.

Agree it's a big problem if the JHBuild step fails. I think that problem qualify under 'infrastructure issue', and we should RETRY the build, instead of marking the build as 'FAILED" (which haltOnFailure=True will result into). In EWS "FAILED" build indicate that the patch being tested is bad.
Comment 7 Aakash Jain 2019-07-02 16:17:49 PDT
Just to clarify, subsequent build-step 'analyze-compile-webkit-results' will RETRY the build. e.g.: https://ews-build.webkit-uat.org/#/builders/7/builds/316
Comment 8 WebKit Commit Bot 2019-07-02 16:44:23 PDT
Comment on attachment 373334 [details]
Patch

Clearing flags on attachment: 373334

Committed r247080: <https://trac.webkit.org/changeset/247080>
Comment 9 WebKit Commit Bot 2019-07-02 16:44:25 PDT
All reviewed patches have been landed.  Closing bug.
Comment 10 Radar WebKit Bug Importer 2019-07-02 16:45:23 PDT
<rdar://problem/52555552>
Comment 11 Michael Catanzaro 2019-07-03 07:48:53 PDT
(In reply to Aakash Jain from comment #6) 
> Agree it's a big problem if the JHBuild step fails. I think that problem
> qualify under 'infrastructure issue', and we should RETRY the build, instead
> of marking the build as 'FAILED" (which haltOnFailure=True will result
> into). In EWS "FAILED" build indicate that the patch being tested is bad.

Well if the jhbuild step fails, it's probably because the patch has broken the jhbuild.
Comment 12 Carlos Alberto Lopez Perez 2020-02-04 07:01:21 PST
(In reply to Michael Catanzaro from comment #11)
> (In reply to Aakash Jain from comment #6) 
> > Agree it's a big problem if the JHBuild step fails. I think that problem
> > qualify under 'infrastructure issue', and we should RETRY the build, instead
> > of marking the build as 'FAILED" (which haltOnFailure=True will result
> > into). In EWS "FAILED" build indicate that the patch being tested is bad.
> 
> Well if the jhbuild step fails, it's probably because the patch has broken
> the jhbuild.

Right
I see this here: https://ews-build.webkit.org/#/builders/8/builds/14753 <-- It should have halted on the jhbuild step.

I think the jhbuild step should halt on failure. It doesn't make sense to continue with trying to build webkit if that step failed.
Comment 13 Aakash Jain 2020-02-04 09:14:37 PST
> I think the jhbuild step should halt on failure. It doesn't make sense to continue with trying to build webkit if that step failed.
Feel free to update 'haltOnFailure' in InstallGtkDependencies/InstallWpeDependencies at https://trac.webkit.org/browser/webkit/trunk/Tools/BuildSlaveSupport/ews-build/steps.py#L797
Comment 14 Carlos Alberto Lopez Perez 2020-02-04 15:30:45 PST
(In reply to Aakash Jain from comment #13)
> > I think the jhbuild step should halt on failure. It doesn't make sense to continue with trying to build webkit if that step failed.
> Feel free to update 'haltOnFailure' in
> InstallGtkDependencies/InstallWpeDependencies at
> https://trac.webkit.org/browser/webkit/trunk/Tools/BuildSlaveSupport/ews-
> build/steps.py#L797

Lauro did that on bug 207220