Skip to content

[ci] remove drivers from GitHub Actions Runners#12132

Merged
titusfortner merged 3 commits intotrunkfrom
ci_no_driver
Jun 5, 2023
Merged

[ci] remove drivers from GitHub Actions Runners#12132
titusfortner merged 3 commits intotrunkfrom
ci_no_driver

Conversation

@titusfortner
Copy link
Copy Markdown
Member

Description

If tests would use the drivers already on the system, this PR will have them use Selenium Manager instead.
I just copied the code that Nikolay added to .NET tests

Motivation and Context

Fixes #12047

@titusfortner titusfortner added the B-build Includes scripting, bazel and CI integrations label Jun 2, 2023
@titusfortner
Copy link
Copy Markdown
Member Author

And... this is windows only, so I need to fix.

@titusfortner
Copy link
Copy Markdown
Member Author

Ok, this seems to work now.

@titusfortner titusfortner requested a review from p0deje June 3, 2023 03:20
@diemol
Copy link
Copy Markdown
Member

diemol commented Jun 3, 2023

Looks fine but I am triggering the workflow manually to see how it goes.

@codecov-commenter
Copy link
Copy Markdown

codecov-commenter commented Jun 3, 2023

Codecov Report

Patch and project coverage have no change.

Comparison is base (1047de3) 55.69% compared to head (7805592) 55.69%.

❗ Current head 7805592 differs from pull request most recent head 8de73fe. Consider uploading reports for the commit 8de73fe to get more accurate results

❗ Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.

Additional details and impacted files
@@           Coverage Diff           @@
##            trunk   #12132   +/-   ##
=======================================
  Coverage   55.69%   55.69%           
=======================================
  Files          86       86           
  Lines        5421     5421           
  Branches      223      223           
=======================================
  Hits         3019     3019           
  Misses       2179     2179           
  Partials      223      223           

☔ View full report in Codecov by Sentry.
📢 Do you have feedback about the report comment? Let us know in this issue.

@diemol
Copy link
Copy Markdown
Member

diemol commented Jun 3, 2023

JS is the one that needs some help. Some weeks ago I created this environment variable https://github.com/SeleniumHQ/selenium/blob/trunk/.bazelrc#L58. If you are OK with that approach, we need to set the path where the Selenium Manager binaries are and then JS should work.

@titusfortner
Copy link
Copy Markdown
Member Author

I don't like the environment variable approach. Let's see if we can just add the copy commands to the testing target. 🤞

@titusfortner titusfortner force-pushed the ci_no_driver branch 2 times, most recently from 8de73fe to b6b5e14 Compare June 4, 2023 01:27
@titusfortner
Copy link
Copy Markdown
Member Author

Ok, I thought I did something weird in this PR that broke .NET tests, but no, that's what we're seeing on trunk as well with the change to the Windows 2019 Github Actions Runner (https://github.com/SeleniumHQ/selenium/actions/runs/5166344256/jobs/9306454093)

So I think this is good to merge.

@titusfortner
Copy link
Copy Markdown
Member Author

@titusfortner
Copy link
Copy Markdown
Member Author

Ok, manually kicked off a complete run — https://github.com/SeleniumHQ/selenium/actions/runs/5167196139

  • Those .NET tests have been failing since we updated from 2019 to 2022
  • Those Java Browser tests are frequent intermittent failures; unrelated to this PR

The problem is the "Medium" Java tests.

For some reason the Node cannot access the Selenium Manager:

WARNING: Unable to obtain chromedriver using Selenium Manager: Unable to parse: thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }', src/files.rs:58:34

This is the same error that we were getting in Rust tests when @p0deje removed the no-sandbox tag. Is this an environmental/permissions issue? Do we need to run these tests differently?

@p0deje
Copy link
Copy Markdown
Member

p0deje commented Jun 4, 2023

@titusfortner Try adding no-sandbox tag to the test targets that are failing.

@titusfortner
Copy link
Copy Markdown
Member Author

Yes, that fixed that error. I debugged those NodeOptions tests, and it turns out that they can only pass is there is a driver on PATH (they work on Mac because safaridriver). There has to be a way to mock this out? @diemol?

@diemol
Copy link
Copy Markdown
Member

diemol commented Jun 5, 2023

It is a bit tricky because they should actually check the PATH, but I believe the changes I did should be fine.

@titusfortner titusfortner merged commit f949736 into trunk Jun 5, 2023
@titusfortner titusfortner deleted the ci_no_driver branch June 5, 2023 15:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

B-build Includes scripting, bazel and CI integrations

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[🚀 Feature]: CI should use Selenium Manager for all tests

4 participants