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

Failures downloading 115 #200

Closed
dnys1 opened this issue Aug 3, 2023 · 8 comments · Fixed by #201 or #224
Closed

Failures downloading 115 #200

dnys1 opened this issue Aug 3, 2023 · 8 comments · Fixed by #201 or #224

Comments

@dnys1
Copy link

dnys1 commented Aug 3, 2023

Currently seeing lots of failures when trying to download ChromeDriver 115 on Linux runners

Run nanasess/setup-chromedriver@6fb8f5ffa6b7dc11e631ff695fbd2fec0b04bb52
##setup chromedriver
/home/runner/work/_actions/nanasess/setup-chromedriver/6fb8f5ffa6b7dc11e631ff695fbd2fec0b04bb52/lib/setup-chromedriver.sh  linux64
Installing ChromeDriver 115.0.5790.110 for linux64
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed

  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100  236k  100  236k    0     0  1478k      0 --:--:-- --:--:-- --:--:-- 1481k
Downloading 
curl: Remote file name has no length!
curl: (23) Failed writing received data to disk/application
Error: The process '/home/runner/work/_actions/nanasess/setup-chromedriver/6fb8f5ffa6b7dc11e631ff695fbd2fec0b04bb52/lib/setup-chromedriver.sh' failed with exit code 23
@nanasess
Copy link
Owner

nanasess commented Aug 3, 2023

@dnys1 115.0.5790.110 seems to have failed to build.
Please check the following:
#199 (comment)

@aeros281
Copy link

aeros281 commented Aug 3, 2023

Wouldn't locking chrome-driver cause mismatch between chrome & chromedriver because the action install the latest chrome?

@ahukkanen
Copy link

We are currently experiencing the same issue.

Just throwing this as an idea here as I may not know all the consequences of my suggestion, but how about fetching the latest point release of the same Chrome version in case the URL is empty at this point (as in this particular error):

echo "Downloading $URL"

I mean before that line, checking the $URL variable if it is empty and then fetching the latest point release as a fallback mechanism like:

curl  --location --fail --retry 10 https://googlechromelabs.github.io/chrome-for-testing/known-good-versions-with-downloads.json | jq -r ".versions[] | select(.version | startswith(\"$(echo $VERSION | cut -d '.' -f1-3).\")) | .version" | tail -1

E.g. for the problematic version 115.0.5790.110, this would fetch all the releases starting with 115.0.5790.. This would return the following list of versions:

115.0.5790.3
115.0.5790.13
115.0.5790.24
115.0.5790.56
115.0.5790.75
115.0.5790.90
115.0.5790.98
115.0.5790.102
115.0.5790.170

And picking the last one with the tail -1 pipe would result to setting the version number to 115.0.5790.170.

Do you see some issue with this approach as a fallback mechanism? I understand that the legacy http://chromedriver.storage.googleapis.com/LATEST_RELEASE_114 URL is doing something similar and that could also result into version conflicts between Chromedriver and Chrome. I would imagine that by discarding only the last part of the version number would not result to any major incompatibilities.

@nanasess
Copy link
Owner

nanasess commented Aug 3, 2023

@ahukkanen
Thank you for your suggestion.🙏
In addition to setup-chromedriver.sh, there is also setup-chromedriver.ps1 support.
We don't want to complicate the shell script or PowerShell any further.
I would prefer #159.

Of course, we welcome pull requests for your suggestions!

@kyrielia
Copy link

kyrielia commented Aug 3, 2023

Also seeing this.

Latest version of chrome being picked up by setup-chromedriver: 115.0.5790.110
However latest stable of chrome is: 115.0.5790.170

@kyrielia
Copy link

kyrielia commented Aug 3, 2023

I think that @petschki's comment in #199 is valid. I.e. this action should allow you to specify that would like to use Chrome's latest stable build. This could avoid similar problems in future.

This is a feature in https://github.com/browser-actions/setup-chrome, for example.

It's worth noting that the latest stable build (115.0.5790.170) currently appears in the good versions matrix:
https://googlechromelabs.github.io/chrome-for-testing/known-good-versions-with-downloads.json

ahukkanen added a commit to mainio/gha-decidim-module that referenced this issue Aug 4, 2023
lunkwill42 added a commit to johannaengland/nav that referenced this issue Aug 4, 2023
We're having troubles with this action failing on downloading the latest
Chromedriver.  It should apparently be fixed in the later master, but it
doesn't appear to work for us, so we'll lock to the latest commit for
now.

See nanasess/setup-chromedriver#200 for details.
lunkwill42 added a commit to johannaengland/nav that referenced this issue Aug 4, 2023
We're having troubles with the setup-chromedriver action failing on
downloading the latest Chromedriver.  This version locks the action
itself, and also version locks the chromedriver.

See nanasess/setup-chromedriver#200 for details.
nanasess added a commit that referenced this issue Aug 4, 2023
@nanasess
Copy link
Owner

nanasess commented Aug 4, 2023

Thank you all for your contributions!, Fixed version has been released.
https://github.com/nanasess/setup-chromedriver/releases/tag/v2.1.2
I adopted the curl command suggested by @ahukkanen, Thank you so much!

@mingyaulee
Copy link
Contributor

mingyaulee commented Sep 16, 2023

I am currently having this problem but running in windows-latest. Can the fix commit be adopted in the ps1 to ensure cross platform consistency?

Edit: I have created the PR for this here

lunkwill42 added a commit to Uninett/nav that referenced this issue Oct 31, 2023
This is now failing again, as the currently installed Chrome version is
118.  Hopefully, removing the version lock will now work again, and
nanasess/setup-chromedriver#200 has hopefully
been fixed.
lunkwill42 added a commit to Uninett/nav that referenced this issue Oct 31, 2023
This reverts d2620e7, as Selenium is
now failing again.  The currently installed Chrome version is 118.
Hopefully nanasess/setup-chromedriver#200 has
been fixed by now.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

6 participants