Skip to content

[devicelab][desktop] Add Linux and Windows machines #54295

Closed

Description

@digiter

@stuartmorgan is going to add end-to-end tests of Windows and Linux flutter desktop applications, which will require devicelab machines with the necessary tools. VS 2019 with specific workloads on Windows, clang and make and maybe some system libraries (depending on what's currently there) on Linux. VMs should work.

Here are the overall steps:

  1. (Owner: @stuartmorgan) Create virtual machines at flutter-infra and manually prototype the tests. Please take notes about the commands for provision, they will be very helpful for automating the process later.
  2. (Owner: infra team) Integrate the virtual machines with Cocoon agents and dashboards. We will need to calculate how much capacity is needed.
  3. (Onwer: infra team) Automate the provision in salt.

Activity

  1. digiter commented on Apr 8, 2020

    @digiter
    ContributorAuthor
  2. removed their assignment
    on Jun 3, 2020
  3. stuartmorgan-g commented on Sep 28, 2020

    @stuartmorgan-g
    Contributor

    @godofredoc @digiter The instructions above are out of date now, right? (Sorry I've been so slow to make progress on this.) What would the process be for getting new LUCI-based devicelab Windows and Linux desktop tests running? Would step one be for me to make a new core recipe like https://flutter-review.googlesource.com/c/recipes/+/5901?

    What I'd like to do is start with just a bare-minimum test for Windows (which we should be able to use the same image we're using for the flutter/plugins e2e tests) and Linux (not sure if we have a suitable image for this yet; I'll follow up in the Linux-specific sub-bug about that) that just does a flutter create and flutter build of the desktop app template as a baseline to build off of.

  4. godofredoc commented on Sep 29, 2020

    @godofredoc
    Contributor

    If these tests are going to be running from the sdk repo and they will be using phones I'd suggest to create a generic devicelab task.

    If they will not use devices I'd suggest a sharded test

    With the migration to LUCI the difference between devicelab tests and flutter sharded tests are now minimal(target test bed, and runner). Additionally test bed dependencies are now provisioned at runtime.

    If you can create the test and make it run in your local machine with either flutter runner or devicelab runner we can help adding support for any missing dependencies.

  5. stuartmorgan-g commented on Oct 1, 2020

    @stuartmorgan-g
    Contributor

    and they will be using phones

    Since this is for desktop, the devices are the host machines themselves. But some of the test will actually be launching the application, which I believe is only done with devicelab for mobile. Should we keep that same conceptual division for desktop, with build-only tests being sharded tests, but tests that actually run Flutter apps as devicelab tests?

  6. stuartmorgan-g commented on Oct 1, 2020

    @stuartmorgan-g
    Contributor

    As a starting point, I've followed up in the sub-issues about Linux and Windows images with a test PR for sharded tests, and the details about what's missing.

  7. stuartmorgan-g commented on Oct 27, 2020

    @stuartmorgan-g
    Contributor

    Everything looks good for sharded tests now. I'll need to look into getting PoC devicelab tests up next, and see if there are any machine-level issues.

  8. stuartmorgan-g commented on Jan 13, 2021

    @stuartmorgan-g
    Contributor

    Devicelab trials started: Linux, Windows

    (I expect they will fail due to needing bot configuration changes, as with the initial sharded test trials.)

  9. 25 remaining items

  10. godofredoc commented on Mar 4, 2021

    @godofredoc
    Contributor

    I'm not sure if the running user needs to be logged in for x to be available or if we need some extra configurations.

  11. stuartmorgan-g commented on Mar 4, 2021

    @stuartmorgan-g
    Contributor

    Ah, I see. Trying the wrap with xvfb does seem like the right next thing to try then. I assume that's in the recipes somewhere, but I'm not sure where the recipe code for this set of jobs is exactly.

  12. godofredoc commented on Mar 4, 2021

    @godofredoc
    Contributor
  13. godofredoc commented on Mar 4, 2021

    @godofredoc
    Contributor

    Should we start putting desktop tests in their own group? as they don't depend on devices we may want to use hostonly test beds.

  14. stuartmorgan-g commented on Mar 9, 2021

    @stuartmorgan-g
    Contributor

    @cbracken Handing this over to you since it's moved forward enough that I don't think the information I had in my head about current state is relevant any more. I'll monitor in case there are questions about what I had done though.

  15. removed their assignment
    on Mar 11, 2021
  16. godofredoc commented on May 13, 2022

    @godofredoc
    Contributor

    We are migrating to ubuntu images with x installed. Can you please provide a test to run?

  17. added
    waiting for responseThe Flutter team cannot make further progress on this issue until the original reporter responds
    on May 13, 2022
  18. moved this to In Progress in Flutter Desktopon May 24, 2022
  19. github-actions commented on Jun 3, 2022

    @github-actions

    Without additional information, we are unfortunately not sure how to resolve this issue. We are therefore reluctantly going to close this bug for now.
    If you find this problem please file a new issue with the same description, what happens, logs and the output of 'flutter doctor -v'. All system setups can be slightly different so it's always better to open new issues and reference the related ones.
    Thanks for your contribution.

  20. Repository owner moved this from In Progress to Done in Flutter Desktopon Jun 3, 2022
  21. github-actions commented on Jun 17, 2022

    @github-actions

    This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of flutter doctor -v and a minimal reproduction of the issue.

  22. locked as resolved and limited conversation to collaborators on Jun 17, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

P3Issues that are less important to the Flutter projectteam-infraOwned by Infrastructure teamwaiting for responseThe Flutter team cannot make further progress on this issue until the original reporter responds

Type

No type

Projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions