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

Don't allow browsers to mismatch with their corresponding drivers when updating images #10336

Closed
2 of 13 tasks
danielhjacobs opened this issue Jul 24, 2024 · 7 comments
Closed
2 of 13 tasks

Comments

@danielhjacobs
Copy link

danielhjacobs commented Jul 24, 2024

Description

Looking at https://github.com/actions/runner-images/blob/ubuntu22/20240721.1/images/ubuntu/Ubuntu2204-Readme.md#browsers-and-drivers, Ubuntu 22.04 version 20240721.1 uses Microsoft Edge 126.0.2592.113 and Microsoft Edge WebDriver 126.0.2592.102. A job running on that image, after trying to download Edgedriver from https://msedgedriver.azureedge.net/126.0.2592.113/edgedriver_linux64.zip, failed with the message "End of central directory not found". It tried to download that version of Edgedriver because that's the Edge version it has installed.

I'd also say that the problem is slightly on Edgedriver for lagging behind official releases, but that will happen, and when it does, it would be better if the installed browser didn't update in the image.

Platforms affected

  • Azure DevOps
  • GitHub Actions - Standard Runners
  • GitHub Actions - Larger Runners

Runner images affected

  • Ubuntu 20.04
  • Ubuntu 22.04
  • Ubuntu 24.04
  • macOS 12
  • macOS 13
  • macOS 13 Arm64
  • macOS 14
  • macOS 14 Arm64
  • Windows Server 2019
  • Windows Server 2022

Image version and build link

20240721.1.0

https://github.com/ruffle-rs/ruffle/actions/runs/10068053329/job/27832705746

Is it regression?

Yes - https://github.com/actions/runner-images/blob/ubuntu22/20240714.1/images/ubuntu/Ubuntu2204-Readme.md#browsers-and-drivers has matching versions for Edge and EdgeDriver

Expected behavior

The version of Edge being used should match the version of EdgeDriver being used.

Actual behavior

They do not.

Repro steps

  1. Run an action that runs with this image.
  2. Try to use EdgeDriver with wdio for tests
@danielhjacobs
Copy link
Author

danielhjacobs commented Jul 24, 2024

Also though, there is an EdgeDriver issue unrelated to this repo. The Linux release is lagging behind; https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/: https://msedgewebdriverstorage.z22.web.core.windows.net/?prefix=126.0.2592.113/. It released the same day for the last version: https://msedgewebdriverstorage.z22.web.core.windows.net/?prefix=126.0.2592.102/.

@hemanthmanga
Copy link
Contributor

@danielhjacobs Thank you for bringing this issue to us. We will look into this issue and will update.

@danielhjacobs
Copy link
Author

To go over the problems that lead to this issue:

This repo has a script which installs Microsoft Edge stable from https://packages.microsoft.com/repos/edge/pool/main/m/microsoft-edge-stable/. The current Microsoft Edge stable there is 127.0.2651.74.

That script then gets the major version of the installed Edge release and pulls Edgedriver from https://msedgedriver.azureedge.net/LATEST_RELEASE_${edge_version_major}_LINUX. The latest 127 release with a Linux version is 127.0.2651.72.

That causes a version mismatch between the installed Edge version and the installed EdgeDriver.

With that version mismatch, apparently wdio fails when running tests on Edge.

I did open MicrosoftEdge/EdgeWebDriver#156 as well.

@danielhjacobs
Copy link
Author

I opened webdriverio/webdriverio#13251 as well. I don't really care whether EdgeWebDriver, this repo, or wdio fix this issue, but someone needs to do so.

@danielhjacobs
Copy link
Author

danielhjacobs commented Aug 1, 2024

@hemanthmanga
Copy link
Contributor

Hi @danielhjacobs Its Auto-generated for versions of browsers with their corresponding drivers during Image deployments, If we try to match the browser version with corresponding driver but still with the upcoming image deployments the versions will be mismatched again, Hence the need to set the environment cannot be implemented at our end,Customers can do it do it via DRIVER_VERSION=$(msedgedriver --version) in their workflows.
Thanks.

@hemanthmanga
Copy link
Contributor

Hi @danielhjacobs, Since we haven’t received a response, we’ll assume your issue is resolved and will close this issue for now. Thank you.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants