Build the Remote Agent on Android
Categories
(Remote Protocol :: Agent, enhancement, P2)
Tracking
(firefox90 fixed)
Tracking | Status | |
---|---|---|
firefox90 | --- | fixed |
People
(Reporter: whimboo, Assigned: whimboo)
References
(Blocks 1 open bug)
Details
(Whiteboard: [bidi-m1-mvp])
Attachments
(3 files, 3 obsolete files)
As of now the Remote Agent only gets build for desktop. When we are getting started to implement WebDriver BiDi support, and want to share code between those two protocols, support for all platforms is required.
As such we should try to let the Remote Agent being built on Android too. That way we can check if we have missing platform dependencies, which could maybe fixed within the next weeks. I don't want to see us blocked early next year.
Assignee | ||
Comment 1•4 years ago
|
||
Note that the build job is just fine:
https://treeherder.mozilla.org/jobs?repo=try&revision=ec72dac039bef7d8ff463982c1213f87be2ab23e
But the problem here are the remote browser chrome tests that cannot be run on Android. As such we would have to convert the tests to plain mochitests and make use of SpecialPower (maybe that would be enough?), or rewrite all the tests as web-platform-tests. Given that both options will take a fair amount of time, I don't think it's feasible to do that work right now.
Given that we don't want to ship Android support that is basically untested, lets wait until we get started with WebDriver BiDi work.
Comment hidden (obsolete) |
Comment hidden (obsolete) |
Updated•4 years ago
|
Comment hidden (obsolete) |
Comment hidden (obsolete) |
Updated•4 years ago
|
Assignee | ||
Comment 6•4 years ago
|
||
We would need that for WebDriver BiDi support. As such we should start building the Remote Agent on Android.
Assignee | ||
Comment 7•4 years ago
|
||
Enabling the Remote Agent for Android we currently won't be able to run any tests given that browser-chrome mochitests are specifically for desktop. On Android only the plain mochitests can be run.
As such I'm feeling not comfortable to enable Android support right now, but would suggest to wait (at least) until the transportation layer for BiDi has been implemented as tracked via the meta bug 1691396.
Assignee | ||
Updated•4 years ago
|
Assignee | ||
Updated•4 years ago
|
Updated•4 years ago
|
Comment 8•4 years ago
|
||
Not urgent unassigning to focus on the BiDi architecture.
Assignee | ||
Comment 9•4 years ago
|
||
(In reply to Henrik Skupin (:whimboo) [⌚️UTC+1] from comment #7)
As such I'm feeling not comfortable to enable Android support right now, but would suggest to wait (at least) until the transportation layer for BiDi has been implemented as tracked via the meta bug 1691396.
This would actually end-up in a circular dependency. To get the transportation layer implemented we actually already have to share some modules with Marionette, e.g session.js, and capabilities.js. As such moving those under /remote/
would be great. But therefore we have to build the Remote Agent on Android.
I'll have a look at this bug.
Assignee | ||
Updated•4 years ago
|
Assignee | ||
Comment 10•4 years ago
|
||
Assignee | ||
Comment 11•4 years ago
|
||
Assignee | ||
Comment 12•4 years ago
|
||
Depends on D112004
Updated•4 years ago
|
Assignee | ||
Comment 13•4 years ago
|
||
Lets make bug 1705003 actually blocking us enabling the Remote Agent on Android.
Assignee | ||
Comment 14•4 years ago
|
||
(In reply to Henrik Skupin (:whimboo) [⌚️UTC+1] from comment #13)
Lets make bug 1705003 actually blocking us enabling the Remote Agent on Android.
Just discussed this with Julian and we both agreed that we should swap this again. Having the Remote Agent built on Android would be great to have, which would allow me to use artifact builds early next week for getting bug 1705003 fixed.
Comment 15•4 years ago
|
||
Comment 16•4 years ago
|
||
Backed out for xpcshell failures on test_StreamRegistry.js
backout: https://hg.mozilla.org/integration/autoland/rev/077cee4e6dcce923a5b7e8c54014660e60a15e82
failure log: https://treeherder.mozilla.org/logviewer?job_id=337456853&repo=autoland&lineNumber=5647
[task 2021-04-22T15:33:42.208Z] 15:33:42 INFO - TEST-START | remote/cdp/test/xpcshell/test_StreamRegistry.js
[task 2021-04-22T15:33:42.234Z] 15:33:42 INFO - adb launch_application: am startservice -W -n 'org.mozilla.geckoview.test/org.mozilla.geckoview.test.XpcshellTestRunnerService$i0' -a android.intent.action.MAIN --es arg8 'const _MOZINFO_JS_PATH = "/data/local/tmp/test_root/xpc/p/f73815e2-dc7b-493f-bb04-310265107823/mozinfo.json";' --es arg9 -e --es arg0 -g --es arg1 /data/local/tmp/test_root/xpcb --es arg2 --greomni --es arg3 /data/local/tmp/test_root/xpcb/geckoview-androidTest.apk --es arg4 -m --es arg5 -e --es arg6 'const _HEAD_JS_PATH = "/data/local/tmp/test_root/xpc/head.js";' --es arg7 -e --es arg26 '_execute_test(); quit(0);' --es arg25 -e --es arg24 'const _TEST_NAME = "remote/cdp/test/xpcshell/test_StreamRegistry.js";' --es arg23 -e --es arg22 'const _TEST_FILE = ["test_StreamRegistry.js"];' --es arg21 -e --es arg20 'const _TEST_CWD = "/data/local/tmp/test_root/xpc/remote/cdp/test/xpcshell";' --ez use_multiprocess True --es env20 TMPDIR=/data/local/tmp/test_root/xpc/p/f73815e2-dc7b-493f-bb04-310265107823 --es arg12 'const _TESTING_MODULES_DIR = "/data/local/tmp/test_root/xpc/m";' --es arg13 -f --es arg10 'const _PREFS_FILE = "/data/local/tmp/test_root/xpc/user.js";' --es arg11 -e --es arg16 'const _HEAD_FILES = [];' --es arg17 -e --es arg14 /data/local/tmp/test_root/xpc/head.js --es arg15 -e --es arg18 'const _JSDEBUGGER_PORT = 0;' --es arg19 -e --es env9 MOZHTTP2_PORT=41511 --es env8 GRE_HOME=/data/local/tmp/test_root/xpcb --es out_file /data/local/tmp/test_root/xpc/logs/xpcshell-a198b0f5-b60e-4a2a-b763-908eadbf80d0.log --es env3 XPCSHELL_MINIDUMP_DIR=/data/local/tmp/test_root/xpc/minidumps/f73815e2-dc7b-493f-bb04-310265107823 --es env2 XPCOM_DEBUG_BREAK=stack-and-abort --es env1 MOZ_DISABLE_SOCKET_PROCESS_SANDBOX=1 --es env0 MOZ_CRASHREPORTER=1 --es env7 MOZ_ANDROID_DATA_DIR=/data/local/tmp/test_root/xpcb --es env6 XPCSHELL_TEST_TEMP_DIR=/data/local/tmp/test_root/xpc/tmp/e60c2833-9010-4851-be88-679ecf8ef860 --es env5 MOZ_DISABLE_CONTENT_SANDBOX=1 --es env4 MOZ_WEBRENDER=0 --es env19 MOZ_ANDROID_CPU_ABI=x86_64 --es env18 HOME=/data/local/tmp/test_root/xpc/p --es env17 MOZ_LINKER_CACHE=/data/local/tmp/test_root/xpcb --es env16 MOZ_DEVELOPER_REPO_DIR=/builds/worker/checkouts/gecko --es env15 MOZ_CRASHREPORTER_NO_REPORT=1 --es env14 MOZNODE_EXEC_PORT=35465 --es env13 XPCSHELL_TEST_PROFILE_DIR=/data/local/tmp/test_root/xpc/p/f73815e2-dc7b-493f-bb04-310265107823 --es env12 LD_LIBRARY_PATH=/data/local/tmp/test_root/xpcb --es env11 MOZ_DISABLE_NONLOCAL_CONNECTIONS=1 --es env10 MOZ_DISABLE_SOCKET_PROCESS=1
[task 2021-04-22T15:33:42.494Z] 15:33:42 INFO - remotexpcshelltests.py | Launched Test App PID=26757
[task 2021-04-22T15:33:43.155Z] 15:33:43 INFO - remotexpcshelltests.py | Application ran for: 0:00:00.946024
[task 2021-04-22T15:33:43.243Z] 15:33:43 WARNING - TEST-UNEXPECTED-FAIL | remote/cdp/test/xpcshell/test_StreamRegistry.js | xpcshell return code: 0
[task 2021-04-22T15:33:43.244Z] 15:33:43 INFO - TEST-INFO took 1035ms
[task 2021-04-22T15:33:43.244Z] 15:33:43 INFO - >>>>>>>
Assignee | ||
Comment 17•4 years ago
|
||
In some situations the FileIO stream's underlying file might not
exist anymore. Discarding the stream should not fail.
Depends on D112004
Assignee | ||
Comment 18•4 years ago
|
||
The problem here is that code related to discarding a FileIO stream is not failure safe, and raises an error when the underlying file doesn't exist anymore.
I pushed another commit to the patch series to get this fixed.
Comment 19•4 years ago
|
||
Comment 20•4 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/194c33117b63
https://hg.mozilla.org/mozilla-central/rev/82d5af5895ca
https://hg.mozilla.org/mozilla-central/rev/5f7a8e0f5266
Description
•