Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Daily runs of Edge on Azure Pipelines #15174

Closed
foolip opened this issue Jan 30, 2019 · 31 comments
Closed

Daily runs of Edge on Azure Pipelines #15174

foolip opened this issue Jan 30, 2019 · 31 comments

Comments

@foolip
Copy link
Member

@foolip foolip commented Jan 30, 2019

This is like #14836, but for Edge on Windows 10.

@mustjab and @thejohnjansen have provided a self-hosted agent pool with 5 Window 10 VMs to make this possible.

@foolip
Copy link
Member Author

@foolip foolip commented Jan 30, 2019

https://dev.azure.com/web-platform-tests/wpt/_build/results?buildId=5330 was the first full build, but it failed to get into wpt.fyi, seemingly because of browser_version missing from the JSON reports.

#15172 fixes that and https://dev.azure.com/web-platform-tests/wpt/_build/results?buildId=5461 is in progress with that fix. We'll see what the next error is :)

@foolip
Copy link
Member Author

@foolip foolip commented Jan 31, 2019

https://staging.wpt.fyi/results/?sha=d11be4eae8 is the first sign of this maybe working. I uploaded wpt_report_10.json.gz from https://dev.azure.com/web-platform-tests/wpt/_build/results?buildId=5461 at https://staging.wpt.fyi/api/results/upload and changed the browser name to "edge" to get anything to show up.

@lukebjerring @Hexcles what to do about "edge_webdriver" as the product name?

@lukebjerring
Copy link
Contributor

@lukebjerring lukebjerring commented Jan 31, 2019

Where is that name originally coming from? You can set the fields in the upload form (see the api README.md on wpt.fyi), but the source should be corrected too.

@foolip
Copy link
Member Author

@foolip foolip commented Jan 31, 2019

@lukebjerring we have two product names for edge in ./wpt run. Just "edge" is the one using Selenium, and "edge_webdriver" is the one using WebDriver directly. We had this split for Chrome for a short period as well, and "chrome_android" is a more long term variant.

@lukebjerring
Copy link
Contributor

@lukebjerring lukebjerring commented Jan 31, 2019

I'm not sure why the distinction propagates into the product name, but is this something that we should be handling in general? Do we have an exhaustive list of these cases?

edge_webdriver can be cleanly mapped to an edge run with a webdriver label.

@foolip
Copy link
Member Author

@foolip foolip commented Jan 31, 2019

If memory serves, @gsnedders found that two products names was easier, and also in favor of it could be said that it doesn't leave behind an argument for switching the executor when the transition is done.

The only two current products with underscores are chrome_android and edge_webdriver. With the ExecutorCDP work expect we'll have chrome_cdp for a time, unless we use another method.

Funny enough, edge_webdriver runs into a lot of trouble when running the webdriver/ tests, so I've exluded those tests from the setup. Adding the webdriver label would be a bit amusing, but ultimately harmless if it works.

@foolip
Copy link
Member Author

@foolip foolip commented Jan 31, 2019

Job 3 in https://dev.azure.com/web-platform-tests/wpt/_build/results?buildId=5461 failed:
https://gist.github.com/foolip/55644c814477946b946e43e87ea20299#file-258-txt-L7208-L7218

Entering debug mode. Use h or ? for help. 

At 
C:\agent\_work\_tasks\CmdLine_d9bafed4-0b18-4f58-968d-86655b4d2ce9\2.146.1\ps_modules\VstsTaskSdk\ToolFunctions.ps1:113
 char:13

+         if ($originalEncoding) {

+             ~~~~~~~~~~~~~~~~~

I'm not sure where "Entering debug mode. Use h or ? for help." came from, but https://github.com/Microsoft/azure-pipelines-task-lib/blob/master/powershell/VstsTaskSdk/ToolFunctions.ps1 appears to be the code that makes noise after that.

@foolip
Copy link
Member Author

@foolip foolip commented Jan 31, 2019

microsoft/azure-pipelines-task-lib#410 looks like it could be related.

@foolip
Copy link
Member Author

@foolip foolip commented Jan 31, 2019

@gsnedders
Copy link
Contributor

@gsnedders gsnedders commented Jan 31, 2019

If memory serves, @gsnedders found that two products names was easier, and also in favor of it could be said that it doesn't leave behind an argument for switching the executor when the transition is done.

Yeah, vastly easier with how we currently handle everything; @jgraham landed the first bit of refactoring needed to actually have arguments for this (and I don't think a needless argument is really a big problem, FWIW).

chrome_android is really a very different case, because the way we do process management of the browser under test is dramatically different.

The only two current products with underscores are chrome_android and edge_webdriver. With the ExecutorCDP work expect we'll have chrome_cdp for a time, unless we use another method.

It may be worth adding an arg for that, if we expect it to be long-lived, now the largest part of the refactoring is done.

@foolip: with the above failures/retries, I presume this isn't quite ready to land yet? waiting for a fully successful run?

@foolip
Copy link
Member Author

@foolip foolip commented Jan 31, 2019

https://staging.wpt.fyi/results/?run_id=6022134270787584 is wpt_report_13.json.gz from that build manually uploaded. As long as the build completes, it looks like this might work.

@foolip
Copy link
Member Author

@foolip foolip commented Jan 31, 2019

https://wpt.fyi/results/?run_id=4849781323071488 /
https://staging.wpt.fyi/results/?run_id=5313109661057024 is the full run, it was uploaded without any manual step.

Looks like it's time to commit the config and get a run from master.

@foolip
Copy link
Member Author

@foolip foolip commented Jan 31, 2019

PR up at #15196.

@gsnedders for the "edge_webdriver" problem I had this fix:

--- b/tools/wptrunner/wptrunner/wpttest.py
+++ a/tools/wptrunner/wptrunner/wpttest.py
@@ -85,7 +85,9 @@ class RunInfo(dict):
         if rev:
             self["revision"] = rev
 
-        self["product"] = product
+        # To deal with edge_webdriver, chrome_android and similar, only use the
+        # first part of the product.
+        self["product"] = product.split("_")[0]
         if debug is not None:
             self["debug"] = debug
         elif "debug" not in self:

But I'm not sure if run_info is used anywhere internally? What do you think make sense, in this case and for a future ExecutorCDP?

@foolip
Copy link
Member Author

@foolip foolip commented Feb 1, 2019

https://gist.github.com/foolip/3be27fa5b8c57ec1121eff4c32fdefb3 is a script for modifying the reports after the fact which I'll use to try uploading the next run.

@foolip
Copy link
Member Author

@foolip foolip commented Feb 2, 2019

https://dev.azure.com/web-platform-tests/wpt/_build/results?buildId=5754 is the first manually triggered daily run after the config landed in the repo. The edge_webdriver problem hasn't been resolved, but it should be possible to upload the results manually.

@foolip
Copy link
Member Author

@foolip foolip commented Feb 2, 2019

As it turns out, runs have been getting into wpt.fyi and staging.wpt.fyi just fine, just as product edge_webdriver instead of edge. Here's one: https://wpt.fyi/results/?run_id=5693649719394304

@gsnedders
Copy link
Contributor

@gsnedders gsnedders commented Feb 2, 2019

I wonder if we should just handle underscore-separated things on the wpt.fyi side? I think it's highly unlikely we'll add an actual product with an underscore in it. Do we have some way to encode things like options in the run_info currently? We'll definitely have other things we'll want to include there (potentially even chunking, given restarts can have an affect on results, or just all command line args?), like CDP if we start uploading results from Chrome/CDP.

@lukebjerring
Copy link
Contributor

@lukebjerring lukebjerring commented Feb 2, 2019

I'd say we handle it in the /api/results/create, by mapping edge_* to edge and labelling it with the original name (e.g. edge_webdriver). That way we're not being as lossy with the info?

@foolip
Copy link
Member Author

@foolip foolip commented Feb 2, 2019

Yeah, that would work.

@foolip
Copy link
Member Author

@foolip foolip commented Feb 2, 2019

https://dev.azure.com/web-platform-tests/wpt/_build/results?buildId=5754 didn't complete and is still "running" but will presumably time out. For some reason only 4 jobs were started and completed, then all remaining claim to be "Waiting for an available agent". But I triggered https://dev.azure.com/web-platform-tests/wpt/_build/results?buildId=5765 which which uses the same agent pool and it finished. Smells like a bug in Azure Pipelines. @mustjab are you able to see what went wrong here?

I'll start another build and see how that goes.

@foolip
Copy link
Member Author

@foolip foolip commented Feb 4, 2019

https://dev.azure.com/web-platform-tests/wpt/_build/results?buildId=5799 finished and curl -v -X POST https://staging.wpt.fyi/api/checks/azure/5799 got it up here:
https://staging.wpt.fyi/results/?run_id=5193840969383936

I'll try changing the product to see if it then shows up by default.

@foolip
Copy link
Member Author

@foolip foolip commented Feb 4, 2019

That worked, and Edge 44 now shows up on the frontpage of staging.wpt.fyi as it was an aligned run. I'll hold off doing the same for prod though, it's best to have web-platform-tests/results-collection#647 merged and comparing the results.

@foolip
Copy link
Member Author

@foolip foolip commented Feb 5, 2019

I've renamed https://staging.wpt.fyi/results/?run_id=5193840969383936 back to edge_webdriver be in sync with prod and not cause later confusion.

gsnedders added a commit to web-platform-tests/wpt.fyi that referenced this issue Feb 5, 2019
gsnedders added a commit to web-platform-tests/wpt.fyi that referenced this issue Feb 5, 2019
@foolip
Copy link
Member Author

@foolip foolip commented Feb 7, 2019

With more logs and a failed run https://dev.azure.com/web-platform-tests/wpt/_build/results?buildId=5991 there are more clues about what might be happening:

2019-02-06T02:11:13.4668896Z TEST-START | /content-security-policy/generic/policy-inherited-correctly-by-plznavigate.html
2019-02-06T02:11:55.1837259Z TEST-UNEXPECTED-TIMEOUT | /content-security-policy/generic/policy-inherited-correctly-by-plznavigate.html | expected OK
2019-02-06T02:12:01.8568116Z TEST-INFO took 25828ms
2019-02-06T02:12:16.1056573Z Closing logging queue
2019-02-06T02:12:27.9814491Z queue closed
2019-02-06T02:12:41.0434246Z STDOUT: http://localhost:4445/
2019-02-06T02:13:41.6067407Z PID 11996 | [02:13:24.934] - Listening on http://127.0.0.1:4445/
2019-02-06T02:13:51.2087191Z PID 11996 | [02:13:24.934] - Listening on http://[::1]:4445/
2019-02-06T02:13:59.3981294Z WebDriver was not accessible within the timeout:
2019-02-06T02:14:06.0000507Z Traceback (most recent call last):
2019-02-06T02:14:23.1690485Z   File "C:\agent\_work\1\s\tools\wptrunner\wptrunner\webdriver_server.py", line 73, in _run
2019-02-06T02:14:27.0964605Z     wait_for_service((self.host, self.port))
2019-02-06T02:14:30.7697994Z   File "C:\agent\_work\1\s\tools\wptrunner\wptrunner\webdriver_server.py", line 265, in wait_for_service
2019-02-06T02:14:30.7706448Z     raise socket.error("Service is unavailable: %s:%i" % addr)
2019-02-06T02:14:30.7708713Z error: Service is unavailable: localhost:4445
2019-02-06T02:14:30.7709480Z 
2019-02-06T02:14:40.1056839Z Failure during init Traceback (most recent call last):
2019-02-06T02:14:40.9828883Z   File "C:\agent\_work\1\s\tools\wptrunner\wptrunner\testrunner.py", line 199, in init
2019-02-06T02:14:48.1072826Z     self.browser.start(group_metadata=group_metadata, **self.browser_settings)
2019-02-06T02:14:52.6286670Z   File "C:\agent\_work\1\s\tools\wptrunner\wptrunner\browsers\edge.py", line 81, in start
2019-02-06T02:14:58.7944567Z     self.server.start()
2019-02-06T02:15:03.5444930Z   File "C:\agent\_work\1\s\tools\wptrunner\wptrunner\webdriver_server.py", line 49, in start
2019-02-06T02:15:06.3877908Z     self._run(block)
2019-02-06T02:15:14.2319314Z   File "C:\agent\_work\1\s\tools\wptrunner\wptrunner\webdriver_server.py", line 73, in _run
2019-02-06T02:15:17.7949041Z     wait_for_service((self.host, self.port))
2019-02-06T02:15:24.9478821Z   File "C:\agent\_work\1\s\tools\wptrunner\wptrunner\webdriver_server.py", line 265, in wait_for_service
2019-02-06T02:15:30.8568970Z     raise socket.error("Service is unavailable: %s:%i" % addr)
2019-02-06T02:15:34.4197835Z error: Service is unavailable: localhost:4445
2019-02-06T02:15:39.1702340Z 
2019-02-06T02:15:45.1071077Z Traceback (most recent call last):
2019-02-06T02:15:47.1216054Z   File "C:\agent\_work\1\s\tools\wptrunner\wptrunner\testrunner.py", line 199, in init
2019-02-06T02:15:49.2931776Z     self.browser.start(group_metadata=group_metadata, **self.browser_settings)
2019-02-06T02:15:49.3004507Z   File "C:\agent\_work\1\s\tools\wptrunner\wptrunner\browsers\edge.py", line 81, in start
2019-02-06T02:15:58.0982688Z     self.server.start()
2019-02-06T02:16:04.1074600Z   File "C:\agent\_work\1\s\tools\wptrunner\wptrunner\webdriver_server.py", line 49, in start
2019-02-06T02:16:06.4796329Z     self._run(block)
2019-02-06T02:16:09.0584469Z   File "C:\agent\_work\1\s\tools\wptrunner\wptrunner\webdriver_server.py", line 73, in _run
2019-02-06T02:16:13.5040223Z     wait_for_service((self.host, self.port))
2019-02-06T02:16:16.7858214Z   File "C:\agent\_work\1\s\tools\wptrunner\wptrunner\webdriver_server.py", line 265, in wait_for_service
2019-02-06T02:16:18.0238791Z     raise socket.error("Service is unavailable: %s:%i" % addr)
2019-02-06T02:16:22.3822234Z error: Service is unavailable: localhost:4445
2019-02-06T02:16:28.3723957Z 
2019-02-06T02:16:36.1698691Z STDOUT: http://localhost:4445/
2019-02-06T02:16:42.1083103Z Starting runner
2019-02-06T02:16:46.8574329Z PID 22184 | [02:15:11.856] - Listening on http://127.0.0.1:4445/
2019-02-06T02:22:24.7872898Z Command left in command_queue during cleanup: u'init_failed', ()
2019-02-06T02:22:24.7873971Z Command left in command_queue during cleanup: 'init_succeeded', ()
2019-02-06T02:22:24.7874573Z Closing logging queue
2019-02-06T02:22:24.7874667Z queue closed
2019-02-06T02:22:24.7905074Z STDOUT: http://localhost:4445/
2019-02-06T02:22:24.8065382Z Starting runner
2019-02-06T02:22:25.8284626Z PID 10124 | [02:22:24.828] - Listening on http://127.0.0.1:4445/
2019-02-06T02:22:25.8305586Z Failed to start protocol connection
2019-02-06T02:22:25.8322360Z Traceback (most recent call last):
2019-02-06T02:22:25.8328505Z   File "C:\agent\_work\1\s\tools\wptrunner\wptrunner\executors\protocol.py", line 48, in setup
2019-02-06T02:22:25.8330581Z     self.connect()
2019-02-06T02:22:25.8330978Z   File "C:\agent\_work\1\s\tools\wptrunner\wptrunner\executors\executorwebdriver.py", line 214, in connect
2019-02-06T02:22:25.8331227Z     self.webdriver.start()
2019-02-06T02:22:25.8331508Z   File "C:\agent\_work\1\s\tools\webdriver\webdriver\client.py", line 421, in start
2019-02-06T02:22:25.8333055Z     value = self.send_command("POST", "session", body=body)
2019-02-06T02:22:25.8333385Z   File "C:\agent\_work\1\s\tools\webdriver\webdriver\client.py", line 472, in send_command
2019-02-06T02:22:25.8333666Z     raise err
2019-02-06T02:22:25.8333950Z SessionNotCreatedException: session not created (500): The new session could not be created.
2019-02-06T02:22:25.8334140Z 
2019-02-06T02:22:25.8334357Z 
2019-02-06T02:22:25.8334558Z Closing logging queue
2019-02-06T02:22:25.8334808Z queue closed
2019-02-06T02:22:25.8335018Z STDOUT: http://localhost:4445/
2019-02-06T02:22:25.8338592Z Starting runner
2019-02-06T02:22:25.8338929Z PID 10052 | [02:22:25.343] - Listening on http://127.0.0.1:4445/
2019-02-06T02:22:25.8339214Z Failed to start protocol connection
2019-02-06T02:22:25.8339443Z Traceback (most recent call last):
2019-02-06T02:22:25.8339724Z   File "C:\agent\_work\1\s\tools\wptrunner\wptrunner\executors\protocol.py", line 48, in setup
2019-02-06T02:22:25.8339950Z     self.connect()
2019-02-06T02:22:25.8340243Z   File "C:\agent\_work\1\s\tools\wptrunner\wptrunner\executors\executorwebdriver.py", line 214, in connect
2019-02-06T02:22:25.8342038Z     self.webdriver.start()
2019-02-06T02:22:25.8342367Z   File "C:\agent\_work\1\s\tools\webdriver\webdriver\client.py", line 421, in start
2019-02-06T02:22:25.8342616Z     value = self.send_command("POST", "session", body=body)
2019-02-06T02:22:25.8342977Z   File "C:\agent\_work\1\s\tools\webdriver\webdriver\client.py", line 472, in send_command
2019-02-06T02:22:25.8343249Z     raise err
2019-02-06T02:22:25.8343484Z SessionNotCreatedException: session not created (500): The new session could not be created.
2019-02-06T02:22:25.8344091Z 
2019-02-06T02:22:25.8344337Z 
2019-02-06T02:22:25.8344566Z Closing logging queue
2019-02-06T02:22:25.8344852Z queue closed
2019-02-06T02:22:25.8345371Z STDOUT: http://localhost:4445/
2019-02-06T02:22:25.8346057Z Starting runner
2019-02-06T02:22:25.8346338Z PID 23104 | [02:22:25.703] - Listening on http://127.0.0.1:4445/
2019-02-06T02:22:26.0202123Z Failed to start protocol connection
2019-02-06T02:22:26.0205349Z Traceback (most recent call last):
2019-02-06T02:22:26.0206843Z   File "C:\agent\_work\1\s\tools\wptrunner\wptrunner\executors\protocol.py", line 48, in setup
2019-02-06T02:22:26.0210035Z     self.connect()
2019-02-06T02:22:26.0211590Z   File "C:\agent\_work\1\s\tools\wptrunner\wptrunner\executors\executorwebdriver.py", line 214, in connect
2019-02-06T02:22:26.0212957Z     self.webdriver.start()
2019-02-06T02:22:26.0214340Z   File "C:\agent\_work\1\s\tools\webdriver\webdriver\client.py", line 421, in start
2019-02-06T02:22:26.0215639Z     value = self.send_command("POST", "session", body=body)
2019-02-06T02:22:26.0217053Z   File "C:\agent\_work\1\s\tools\webdriver\webdriver\client.py", line 472, in send_command
2019-02-06T02:22:26.0218471Z     raise err
2019-02-06T02:22:26.0220023Z SessionNotCreatedException: session not created (500): The new session could not be created.
2019-02-06T02:22:26.0221256Z 
2019-02-06T02:22:26.0222436Z 
2019-02-06T02:22:26.0402121Z Closing logging queue
2019-02-06T02:22:26.0402812Z queue closed
2019-02-06T02:22:26.0414089Z STDOUT: http://localhost:4445/
2019-02-06T02:22:26.0668832Z Starting runner
2019-02-06T02:22:26.0979625Z PID 21264 | [02:22:26.078] - Listening on http://127.0.0.1:4445/
2019-02-06T02:22:26.3941994Z Failed to start protocol connection
2019-02-06T02:22:26.3946499Z Traceback (most recent call last):
2019-02-06T02:22:26.3948718Z   File "C:\agent\_work\1\s\tools\wptrunner\wptrunner\executors\protocol.py", line 48, in setup
2019-02-06T02:22:26.3951405Z     self.connect()
2019-02-06T02:22:26.3952987Z   File "C:\agent\_work\1\s\tools\wptrunner\wptrunner\executors\executorwebdriver.py", line 214, in connect
2019-02-06T02:22:26.3954388Z     self.webdriver.start()
2019-02-06T02:22:26.3955884Z   File "C:\agent\_work\1\s\tools\webdriver\webdriver\client.py", line 421, in start
2019-02-06T02:22:26.3957234Z     value = self.send_command("POST", "session", body=body)
2019-02-06T02:22:26.3958650Z   File "C:\agent\_work\1\s\tools\webdriver\webdriver\client.py", line 472, in send_command
2019-02-06T02:22:26.3960031Z     raise err
2019-02-06T02:22:26.3961448Z SessionNotCreatedException: session not created (500): The new session could not be created.
2019-02-06T02:22:26.3962527Z 
2019-02-06T02:22:26.3963774Z 
2019-02-06T02:22:26.4154601Z Closing logging queue
2019-02-06T02:22:26.4155149Z queue closed
2019-02-06T02:22:26.4155484Z Max restarts exceeded
2019-02-06T02:22:26.4186400Z Got 878 unexpected results
2019-02-06T02:22:26.5189434Z SUITE-END | took 1699s
2019-02-06T02:22:26.8187458Z Closing logging queue
2019-02-06T02:22:26.8358501Z queue closed
2019-02-06T02:22:26.8373351Z Tolerating 878 unexpected results
2019-02-06T07:51:13.2371180Z Entering debug mode. Use h or ? for help. 
2019-02-06T07:51:13.2372011Z 
2019-02-06T07:51:13.2398425Z At 
2019-02-06T07:51:13.2398951Z C:\agent\_work\_tasks\CmdLine_d9bafed4-0b18-4f58-968d-86655b4d2ce9\2.146.1\ps_modules\VstsTaskSdk\ToolFunctions.ps1:113
2019-02-06T07:51:13.2399187Z  char:13
2019-02-06T07:51:13.2402995Z 
2019-02-06T07:51:13.2403206Z +         if ($originalEncoding) {
2019-02-06T07:51:13.2404031Z 
2019-02-06T07:51:13.2404366Z +             ~~~~~~~~~~~~~~~~~
2019-02-06T07:51:13.9624438Z [DBG]: PS C:\agent\_work\1\s>> 

"WebDriver was not accessible within the timeout" suggests a problem with EdgeDriver. @thejohnjansen @mustjab do you know if it's possible to enable more logging for EdgeDriver to diagnose the problem?

@foolip
Copy link
Member Author

@foolip foolip commented Feb 15, 2019

I've been triggering runs manually for a while now, and the success rate is so-so:
image

If something like 50% of attempts succeed that would still be workable though, if we schedule runs every 6 hours.

This must be fixable, but might be a time-consuming debugging process.

Hexcles added a commit to web-platform-tests/wpt.fyi that referenced this issue Feb 15, 2019
@gsnedders
Copy link
Contributor

@gsnedders gsnedders commented Feb 18, 2019

Can we see if we have any other MicrosoftWebDriver.exe processes running? Or anything listening on that port?

@foolip
Copy link
Member Author

@foolip foolip commented Feb 18, 2019

@gsnedders if that could be a cause of this, we could move the cleanup which kills those processes to before running the tests.

@foolip
Copy link
Member Author

@foolip foolip commented Mar 1, 2019

https://wpt.fyi/results/?label=azure&max-count=100&product=edge now has 3 runs. They're all bad, so here's a permalink that will keep working after I rename them:
https://wpt.fyi/results/?run_id=5560211460849664&run_id=5858280379252736&run_id=5305492519780352

The runs didn't really succeed, for example job 11 in https://dev.azure.com/web-platform-tests/wpt/_build/results?buildId=8478 had only these results in wpt_report_11.json:

{
    "results": [
        {
            "duration": 0,
            "message": null,
            "status": "SKIP",
            "subtests": [],
            "test": "/streams/writable-streams/write.any.js"
        },
        {
            "duration": 0,
            "message": null,
            "status": "SKIP",
            "subtests": [],
            "test": "/wasm/jsapi/instance/toString.any.js"
        },
        {
            "duration": 0,
            "message": null,
            "status": "SKIP",
            "subtests": [],
            "test": "/streams/readable-streams/brand-checks.any.js"
        }
    ],
    "run_info": {
        "bits": 64,
        "browser_version": "44.17763.1.0",
        "debug": false,
        "has_sandbox": true,
        "os": "win",
        "os_version": "10.0",
        "processor": "x86_64",
        "product": "edge_webdriver",
        "revision": "ce50d58dd4a10d34bd70242d3833e6940169a246",
        "service_pack": "",
        "verify": false,
        "version": "10.0.17763",
        "wasm": false
    },
    "time_end": 1551424024225,
    "time_start": 1551423302738
}

The logs show it was trouble from the start:

Using 1 client processes
SUITE-START | Running 1619 tests
Running reftest tests
STDOUT: http://localhost:4444/
PID 44628 | [22:55:03.004] - Listening on http://127.0.0.1:4444/
PID 44628 | [22:55:03.004] - Listening on http://[::1]:4444/
Starting runner
Post-connection steps failed
Traceback (most recent call last):
  File "C:\Agent\_work\1\s\tools\wptrunner\wptrunner\executors\protocol.py", line 56, in setup
    self.after_connect()
  File "C:\Agent\_work\1\s\tools\wptrunner\wptrunner\executors\executorwebdriver.py", line 245, in after_connect
    self.testharness.load_runner(self.executor.last_environment["protocol"])
  File "C:\Agent\_work\1\s\tools\wptrunner\wptrunner\executors\executorwebdriver.py", line 83, in load_runner
    self.webdriver.url = url
  File "C:\Agent\_work\1\s\tools\webdriver\webdriver\client.py", line 20, in inner
    return func(self, *args, **kwargs)
  File "C:\Agent\_work\1\s\tools\webdriver\webdriver\client.py", line 521, in url
    return self.send_session_command("POST", "url", body)
  File "C:\Agent\_work\1\s\tools\webdriver\webdriver\client.py", line 508, in send_session_command
    return self.send_command(method, url, body)
  File "C:\Agent\_work\1\s\tools\webdriver\webdriver\client.py", line 463, in send_command
    session=self)
  File "C:\Agent\_work\1\s\tools\webdriver\webdriver\transport.py", line 175, in send
    response = self._request(method, uri, payload, headers)
  File "C:\Agent\_work\1\s\tools\webdriver\webdriver\transport.py", line 191, in _request
    return self.connection.getresponse()
  File "C:\Python27\lib\httplib.py", line 1121, in getresponse
    response.begin()
  File "C:\Python27\lib\httplib.py", line 438, in begin
    version, status, reason = self._read_status()
  File "C:\Python27\lib\httplib.py", line 394, in _read_status
    line = self.fp.readline(_MAXLINE + 1)
  File "C:\Python27\lib\socket.py", line 480, in readline
    data = self._sock.recv(self._rbufsize)
error: [Errno 10054] An existing connection was forcibly closed by the remote host

@mustjab do you have any tips to try debugging this? I think it's MicrosoftEdgeDriver which isn't responding. Perhaps it was left running from a previous job and is preventing any new runs?

@foolip
Copy link
Member Author

@foolip foolip commented May 10, 2019

This is blocked on #16118.

@foolip
Copy link
Member Author

@foolip foolip commented Jun 6, 2019

With #16920 merged this will probably soon be possible to resolve. We should have results every 6 hours if the setup is reliable.

@foolip
Copy link
Member Author

@foolip foolip commented Aug 15, 2019

This was resolved and should be closed. There's a hickup tracked by #18397, but the initial work was done.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
3 participants
You can’t perform that action at this time.