Hi Everyone,
I want to update everyone with the further improvements I have made to new EWS.
As always, please feel free to provide any feedback (either by filing bugs or
contacting me directly).
New Features:
- Moved following queues to from old to new EWS:
• iOS 12 Tests EWS
• macOS WK1 and WK2 Release Tests EWS
• macOS WK1 Debug Tests EWS
• GTK and WPE EWS
• WinCairo EWS
• Style (and watchlist) EWS
- Added a new 'services' EWS to run Buildbot unit tests
https://webkit.org/b/199994
- Separate status bubbles for builders and layout-testers
Infrastructure Improvements:
- EWS is now able to automatically recover (and retry the build) in case of
certain git and network errors https://webkit.org/b/199722
- Some EWS bots now reboot periodically to ensure that start from clean state
- Added KillOldProcesses step before running API or Layout tests to increase
robustness https://webkit.org/b/199592
- 'view layout test results' option is now displayed next to layout-test build
step https://webkit.org/b/200048
- EWS now displays pre-existing Layout test failure names in the build summary
https://webkit.org/b/199941
- Machine uptime is now reported in PrintConfiguration step
https://webkit.org/b/200812
- Added EWS Buildbot support to Internal scripts to easily find/reconfigure bots
- Flakiness in API tests has been further reduced (thanks to multiple fixes by
WebKit developers)
- Added more unit tests
Bug fixes:
- EWS status-bubbles are sometimes multi-row with scroll-bar
https://webkit.org/b/199939
- EWS: Cannot see build status page when patch is waiting for tester
https://webkit.org/b/200333
- EWS: Do not append additional '(failure)' string at the end of custom failure
message in EWS Buildbot https://webkit.org/b/201140
- [ews] Status bubble should display only important messages in pop-over
https://webkit.org/b/201308
Only remaining queues on old EWS are windows, jsc and commit-queue, which I
will be working on next.
Thanks
Aakash
> On Jul 11, 2019, at 10:18 am, Aakash Jain <[email protected]> wrote:
>
> Hi Everyone,
>
> I want to update everyone with the further improvements I have made to new
> EWS. As always, please feel encouraged to provide any feedback (either by
> filing bugs or contacting me directly).
>
> New Features:
> - Launched 'Security EWS'
> - Added iOS-12 Builder queue on new EWS (moved from old to new EWS)
> - Added WPE and GTK queues on new EWS (moved from old to new EWS)
> - New EWS can now process large patches (larger than 640kb)
> https://webkit.org/b/198851
>
>
> Infrastructure Improvements:
> - EWS now automatically retries builds in case of certain infrastructure
> issues and ToT compile failures https://bugs.webkit.org/show_bug.cgi?id=199025
> - Improved stability by adding KillOldProcesses step before API and Layout
> tests https://webkit.org/b/199592
> - Shared bots across queues to improve efficiency https://webkit.org/b/198370
> - Added check for duplicate workers in config.json https://webkit.org/b/199240
> - Patch link now opens the pretty-patch url https://webkit.org/b/199031
> - Triggered builds should use same revision as parent build (fixes a corner
> case) https://webkit.org/b/198289
> - Display pre-existing API test failures in build summary to help
> bot-watchers https://webkit.org/b/199525
> - Send email notifications for failures (for maintenance/bot-watching)
> https://webkit.org/b/198919
> - Remove unused buildbot tabs for better readability
> https://webkit.org/b/198108
> - Allow skipping uploading built product for few builders
> https://webkit.org/b/199422
> - EWS should provide option to download layout test results zip file
> https://webkit.org/b/199121
> - Retry Layout test in case of failures https://webkit.org/b/199194
> - Upload test results after running layout-tests https://webkit.org/b/199120
> - Improved error message on performing certain actions (like Rebuild) which
> requires authentication
> - Added more unit-tests
>
>
> Bug fixes:
> - Results are clobbered in UploadTestResults and ExtractTestResults steps in
> case of multiple layout test runs https://webkit.org/b/199178
> - New EWS: api-ios does not differentiate between patch compile failure and
> ToT compile failure https://webkit.org/b/197850
> - Buildbot worker not pinged https://webkit.org/b/199438
> - Make PrintConfiguration platform aware https://webkit.org/b/196657
> - Status bubble should not turn orange when any build step is skipped
> https://webkit.org/b/199079
> - Do not print worker environment variables in each build step
> https://webkit.org/b/197319
> - Do not run unix commands for windows in PrintConfiguration
> https://webkit.org/b/199605
>
> Thanks
> Aakash
>
>> On May 22, 2019, at 7:36 PM, Aakash Jain <[email protected]> wrote:
>>
>> Hi Everyone,
>>
>> I just wanted to update everyone with the recent improvements I have made to
>> new EWS. As always, please feel encouraged to provide any feedback (either
>> by filing bugs or contacting me directly).
>>
>> New Features:
>> • EWS status-bubble now display position in queue while patch is
>> waiting to be processed
>> • Added webkitpy and bindings-tests EWS (moved from old to new EWS)
>> • Status bubbles for webkitpy and bindings-tests EWS now display the
>> exact test failures in hover-over message (https://webkit.org/b/197395,
>> https://webkit.org/b/197423)
>> • Added support for 'new EWS' in webkit-patch tool
>> • Added 'EWS Build Archives' (similar to 'WebKit Build Archives'
>> https://webkit.org/blog/7978/introducing-webkit-build-archives/). For every
>> patch uploaded to Bugzilla, EWS builders build the patch for various
>> platforms (currently macOS and iOS) and upload the archives to S3. These
>> archives are available to download by anyone (for 14 days). The S3 URL is in
>> corresponding build (e.g.: notice 'uploaded archive' link in
>> https://ews-build.webkit.org/#/builders/7/builds/2477). So, if for any
>> reason, you want to get a built archive for your patch, you can simply
>> upload the patch to Bugzilla. (Note that if there is interest in this, we
>> can enhance it further)
>>
>> Infrastructure Improvements:
>> • Flakiness in API tests has been reduced (thanks to many WebKit
>> developers)
>> • Infrastructure improvements to prevent build failure due to "worker
>> not pinged" (e.g.: https://ews-build.webkit.org/#/builders/9/builds/332)
>> • New EWS polls bugzilla more frequently https://webkit.org/b/197138
>> • Configured DEBUG mode appropriately for Production and Development
>> env https://webkit.org/b/197700
>> • Ensured that Buildbot worker logs are not lost on restarting worker
>> • Do not run clean build by default on EWS builders (to improve
>> efficiency) https://webkit.org/b/196897
>> • build.webkit.org and ews-build.webkit.org starting sharing code
>> (although very little as of now, however the plan is to share more code)
>> • Added migrations file to repository https://webkit.org/b/197729
>> • Added EWS bots information to Internal scripts to easily monitor bots
>> • Added more unit-tests
>>
>> Bug fixes:
>> • Clicking 'submit to new ews' doesn't reload status-bubble
>> https://webkit.org/b/196675
>> • Clicking on white bubble navigates to page with only bubbles
>> https://webkit.org/b/197520
>> • Submit to EWS buttons are not aligned properly with status-bubbles
>> https://webkit.org/b/197139
>> • Status bubble should turn orange when any build step fails
>> https://webkit.org/b/197812
>> • Handle bug titles with unicode characters https://webkit.org/b/196802
>> • Scripts using Buildbot API have CORS error https://webkit.org/b/196709
>> • PrintConfiguration should display Xcode version instead of SDKVersion
>> https://webkit.org/b/196780
>> • Trigger queues only after uploading the archive
>> https://webkit.org/b/197180
>> • Do not upload archive when Compile Fails https://webkit.org/b/196674
>> • Exception while loading status-bubble when no build step has started
>> https://webkit.org/b/196676
>> • Use singular verb in failure description in case of single api test
>> failure https://webkit.org/b/197013
>> • EWS should clearly indicate flaky test failures
>> https://webkit.org/b/196947
>> • Use explicit imports instead of wildcard imports
>> https://webkit.org/b/197194
>> • New EWS: patches on recently added queues listed as #1 for older bugs
>> https://webkit.org/b/197496
>> • Improved summary text for various build steps
>>
>> Interesting info: Since last month, 'EWS for API tests' prevented API test
>> breakage on 50+ patches
>> (https://ews-build.webkit.org/api/v2/builders/3/builds?state_string__contains=new%20API%20Test&property=bug_id&order=-number).
>>
>> Thanks
>> Aakash
>>
>>> On Apr 4, 2019, at 10:00 PM, Aakash Jain <[email protected]> wrote:
>>>
>>> Introducing brand new EWS
>>>
>>> with EWS for API Tests (for macOS and iOS)
>>>
>>> and EWS for WebKitPerl Tests!
>>>
>>>
>>> Starting today, when you upload a patch to bugs.webkit.org, you will see
>>> few more bubbles (for API tests and webkitperl tests). You might also see
>>> additional button 'Submit to new EWS' (if the patch doesn't have r? flag).
>>>
>>> The new EWS comes with many new features and there are lot more I want to
>>> add. But, I don't want you guys to wait more to start getting the benefits.
>>> That's why I am rolling it out in phases, starting with EWS for API Tests
>>> and WebKitPerl Tests. These are tests which are not currently covered by
>>> the existing EWS. Next step would be to move queues from existing EWS to
>>> new EWS one by one, with the eventual goal of moving over everything to new
>>> EWS.
>>>
>>>
>>> Why new EWS?
>>> The existing EWS has certain architectural limitations. One of the
>>> prominent limitation is that there is no concept of building and testing
>>> the patch on different queues. If we have three queues: WK1 tests, WK2
>>> tests and API tests, all three queues would need to compile WebKit
>>> independently. So WebKit would be compiled thrice instead of once. This is
>>> inefficient and thereby require more hardware.
>>>
>>> The new EWS has separate builder and tester queues. Builder queues build
>>> once and upload the archive. Multiple tester queues download that same
>>> archive and run tests on that. That way WebKit is compiled only once, and
>>> re-used on multiple tester queues. This improves system efficiency and
>>> allows us to add new test queues with substantially less hardware.
>>>
>>> The new EWS uses Buildbot at the back-end, which is a production-level CI
>>> system. It is easier to maintain and automatically provide various features
>>> like historical build logs, real-time log streaming, easier bot management,
>>> ability to retry a build etc. Plus, it’s a system most of you are already
>>> familiar with (build.webkit.org).
>>>
>>>
>>> How can you contribute:
>>> If you are interested in contributing, the source code is located at:
>>> ews-build (Buildbot): Tools/BuildSlaveSupport/ews-build
>>> ews-app (web-app): Tools/BuildSlaveSupport/ews-app
>>>
>>> Detailed instructions are at:
>>> https://trac.webkit.org/wiki/EarlyWarningSystem#ContributingtoEarlyWarningSystem
>>>
>>>
>>> Upcoming features:
>>> - status-bubble should display position in queue
>>> https://bugs.webkit.org/show_bug.cgi?id=196607
>>> - EWS should comment on Bugzilla bugs about failures
>>> https://bugs.webkit.org/show_bug.cgi?id=196598
>>> - EWS should have a way to retry a patch
>>> https://bugs.webkit.org/show_bug.cgi?id=196599
>>> - Security EWS https://bugs.webkit.org/show_bug.cgi?id=196605
>>>
>>>
>>> If you notice any issue, please feel free to file bugs (and assign to me).
>>>
>>> Thanks & Regards
>>> Aakash Jain
>>
>
_______________________________________________
webkit-dev mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-dev