Need official Chrome for ChromeOS builder that runs chrome tests |
|||||||
Issue descriptionBoth Dan and Steven looked for such a builder and as far as they could find we do not have a builder that builds official chrome for ChromeOS *and* runs Chrome tests. This is important for ensuring we have coverage of field trials, and of course that we're running tests on the actual bits we ship. Here's a link to the equivalent desktop builders: https://uberchromegw.corp.google.com/i/official.desktop/waterfall . I'm marking this a 1, which admittedly seems unjustified given we have apparently got this far without such a builder, but IMO not testing the bits we ship has the potential to go very very wrong.
,
Feb 26 2018
Do we have regular browser tests (using the field trial test config) running for ChromeOS? They should be running on regular non-official builds.
,
Feb 26 2018
@sky - are you talking about running binaries on Chromebooks (or CrOS VMs), or on regular desktop builds? bpastene has been working on getting tests running on both on upstream bots in bug 732531 (and some related issues). I think this is the big ticket item and would probably block any additional work we'd do for official configs in this bug. I'm not sure if it makes sense to add bots to official.desktop, given that the chrome builders don't actually do the official builds of chrome, the chromeos builders do.
,
Feb 26 2018
We should at least have one (either VM or desktop ChromeOS build). IMO the VM approach seems ideal given there are a fair number of conditionals in the code as to whether running on actual hardware or not.
,
Feb 26 2018
1) We do build Simple Chrome in chrome-tot-chromeos-amd64-generic and there are plans to run tests there eventually ( issue 724327 ). 2) We *do not run unit or browser tests on a device* anywhere. Possibly we should but that is a much much larger discussion. My understanding is that we build and run unit and browser tests for official chrome builds on official.desktop/waterfall. We should have a linux-chromeos representative there (or somewhere, maybe an FYI waterfall). Currently we do run unit or browser tests anywhere for chrome (i.e. not chromium) with chromeos=1 on linux.
,
Feb 26 2018
> 2) We *do not run unit or browser tests on a device* anywhere. Possibly we > should but that is a much much larger discussion. Doing so is very much part of what I want us to be doing upstream on the chromium waterfalls.
,
Feb 26 2018
> 2) We *do not run unit or browser tests on a device* anywhere. Possibly we should but that is a much much larger discussion. We do run select unittests on devices in the chrome os waterfall by wrapping an autotest around them, for instance security_SandboxLinuxUnittests runs sandbox_linux_unittests, We also run some video encode/decode unittests in a similar manner. It's not difficult to add more unittests, and the coverage would include both chrome and chromium. However, these don't help chromium devs much since the failures would be in the chromeos PFQ, long after the changes have landed in chromium. But Dirk/Ben are planning on running unittests in the cros VM in the chromium waterfall as a part of the simple chrome VM effort. We don't run any browser tests on devices, and probably shouldn't - browser tests have a weird environment quite incompatible with the cros system environment, they stub out cros services, and the maintenance effort to keep these tests green in the past hasn't been worth it. Autotests (and in the future Tast) are our preferred vehicle for integration tests on chromeos. > My understanding is that we build and run unit and browser tests for official chrome builds on official.desktop/waterfall. We should have a linux-chromeos representative there (or somewhere, maybe an FYI waterfall). Currently we do run unit or browser tests anywhere for chrome (i.e. not chromium) with chromeos=1 on linux. I thought linux-chromeos-rel does this, but I'm not sure? https://uberchromegw.corp.google.com/i/chromium.chromiumos/builders/linux-chromeos-rel/
,
Feb 26 2018
> I thought linux-chromeos-rel does this, but I'm not sure? > https://uberchromegw.corp.google.com/i/chromium.chromiumos/builders/linux-chromeos-rel/ That's chromium, not chrome.
,
Feb 26 2018
I assume the original request was to have a bot that builds official chrome for chromeos and runs tests on linux desktop, not on VM? I thought we already have it (as we have or had a bot that runs tests on branch), but looks like we dont :( I agree that this is P1. Re. running all (or most of) tests on device: While this would be great if we can, this can be very tricky and should probably be tracked in a separate bug. 1) There are difference in code path (this is intentional) between device and non device, which the test relies on (explicitly or implicitly). Updating tests to make sure that tests passes on both configurations may require quite a lot of work. 2) It should be a part of CQ, which means that we need to implement swaming on devices. 3) When this fails only on the device, it could be difficult for non cros engineer to troubleshoot, even if the fix could be very simple.
,
Feb 26 2018
I'm trying to add a finch trial. https://g3doc.corp.google.com/analysis/uma/g3doc/finch/guide.md?cl=head has a reference to the buildbots that run the test config. They are all desktop official builders. AFAICT I can't find an official ChromeOS builder that runs the tests, hence this bug.
,
Mar 1 2018
,
Mar 6 2018
This appears to be related to internal waterfall, which mmoss@ knows more about.
,
Mar 6 2018
I'm not very (or at all) familiar with the cros builders, but is this basically asking for the builder that was removed in https://chrome-internal-review.googlesource.com/c/chrome/tools/build/+/471693 ( Issue 764571 )?
,
Mar 6 2018
I don't think that builder was doing quite what this issue is requesting (either that or it was poorly named). This issue is requesting a builder that: * Builds official Chrome on Linux with chromeos=1 * Runs all unit and browser tests i.e. the builder would be the same as https://ci.chromium.org/buildbot/chromium.chromiumos/linux-chromeos-rel/ except with an internal checkout and with extra GN args: is_official_build = true (and probably is_chrome_branded = true and proprietary_codecs = true).
,
Mar 6 2018
So maybe something like: https://luci-milo.appspot.com/buildbot/official.desktop.continuous/linux64%20trunk/8320 but with "chromeos=1"? Or do you specifically not want it to run all those other tests too? Should it be a continuous official builder (like the one I linked) or only for release build?
,
Mar 6 2018
A continous builder would be best. I'm not sure what "all those other tests" refers to, but it should ideally run all browser/unit tests (including some that are chromeos specific, e.g. chromeos_unittests and ash_unittests). i.e. the tests run by linux-chromeos-rel in comment #14.
,
Mar 6 2018
OK, I wasn't sure if the references to browser/unit tests were referring to the literal "browser_tests" and "unit_tests" steps (those generic names are not at all confusing).
,
Mar 6 2018
:) Yes, sorry, I wasn't very clear. We would like to run the "complete set" of tests that we run in linux-chromeos-rel (including e.g. "interactive ui tests"). Thanks!
,
Mar 19 2018
Ben, are you the right person to take care of this? |
|||||||
►
Sign in to add a comment |
|||||||
Comment 1 by steve...@chromium.org
, Feb 26 2018Labels: Hotlist-CrOS-Gardener