-
Notifications
You must be signed in to change notification settings - Fork 3.2k
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
Warning: vkCreateInstance: Found no drivers! warning shown when running Cypress #29085
Comments
We see this as well when running locally in Docker, and in our GitLab Pipelines (via the Docker executor).
I am not fully sure if this is a problem or, like with These lock-ups appear to be intermittent and it might just be coincidence that this warning is the last log message emitted. |
I dont see these errors when I run locally and faced only when I used the container image: node-20.11.0-chrome-121.0.6167.184-1-ff-123.0-edge-121.0.2277.128-1 on jenkins. |
I meant locally in a Docker container. Apologies, I should have been clearer. |
@Rajesh-Kodandam / @roadSurfer I ran all latest Cypress Docker images including Do either of you have public workflow you can share which shows the Vulkan issue?
|
In your log file you are showing Chrome so your log should also show Chrome Could you check that you can reproduce the issue with Chrome
.
|
I tried the Electon 118, Chrome 121, and Edge 121 all reported the warning; although the tests did not hang. I am not a Cypress developer, but I will see if we can get a test made public. |
Attached is a very crude test that exhibits the issue. I don't work with Cyrpess and have probably done this the hardest way possible, but it does show the warning after a minute or so with a simple loop that emits a log message every second. It does not exhibit any hang/delay, but we are seeing this in the GitLab Pipelines where tests run for an hour before being killed due to run time. |
@MikeMcC399 and @roadSurfer: Thank you for response. Its my bad regarding the versions messedup. But now I did tried as mentioned before docker image: node-20.11.0-chrome-121.0.6167.184-1-ff-123.0-edge-121.0.2277.128-1 ========================================================================================== |
|
We have app called docs which is our documentation those tests only failing with that reason not all tests. |
Thanks for your demo. It doesn't actually run out of the box as there is an extra set of closing brackets in the support file. I corrected the bracket error and ran it locally on Windows 11 and then on Ubuntu 22.04 on GitHub Actions . It did not fail in either case, so it seems that we are chasing a bug which is hard to reproduce. 🙁 |
|
This is issue there in 13.6.4 as well. |
I did fixed the mocha version: 10.3.0 now and after that looks like as below with same vkCreateInstance: Found no drivers! =========================================================================================== |
Whoops! Sorry about that.
The test will complete, but that I have never needed to use a GitHub Action, but I can see how hard it is to do. I am not even sure if this warning is an actual problem or not, we are still trying to chase down where the tests are hanging/delyaing. |
I created a GitHub action using runner I deliberately did not use The output was:
You can see the workflow here: https://github.com/roadSurfer/cypress_1022/blob/main/.github/workflows/main.yml Edit: I should add, the run did complete. |
Thanks for your GitHub repo! I revisited the results of running your test in my repo under Ubuntu 22.04 and I found that there was indeed a warning in the logs like the one you are seeing.
I was unfortunately misled by the fact that the workflow showed that it had succeeded. I did however correctly report about running locally under Windows 11. In this environment I saw no warnings issued. |
Phew! It's not just me going crazy. 😄 As I say, it may not be related to the hangs/delays and just coincidence that it was the last message logged. |
I omitted to say that I see the warning in the GitHub Ubuntu 22.04 runner without using a Cypress Docker image, so it seems that Docker may be a distraction in finding a root cause. I didn't see any warning locally when I tested under Ubuntu 22.04 running inside VMware Workstation. |
Going to transfer this issue to the main |
@MikeMcC399 I would be very surprised if the backend of GitHub wasn't similar to GitLab in that the runner is just spinning up an ephemeral container to do the build. So Docker still in play, What's interesting is that your Win11 run didn't show the warning. I do get the warning when running via a container inside my VBox GNU/Linux VM (KDE Neon, based on Ubuntu 22.04). I can't use WSL2 nor Docker Desktop due hypervisor incompatibilities, so I cannot recreate what you did. Out of interest I updated Node etc and ran it directly in my VM (no container) and I saw this:
I really am starting to think that this For those who do have a hang/delay, is it possible to run Cypress with increased logging so more can be seen on what is happening when it comes to a halt? |
Thanks for your comments and thoughts! Another user, running in Cypress Docker
so for this user, the warning appears not to be simply benign. However they then reported that reverting to Cypress So it seems that the outcomes can be quite varied, as @Rajesh-Kodandam noted that reverting to Cypress I have run your test with
There is no GPU on GitHub runners. Cypress runs using Xvfb and this area has been the source of warnings in previous versions. I'll see what else I can find out. |
Vulkan drivers are part of Debian (used for Cypress Docker images) and Ubuntu so it seems like the message "Found no drivers!" should not be occurring. I think I have come to the end of what I can find out here, as I'm not a Linux driver expert. My guess is that the issue may be related to Electron.
|
I gave |
@l00sed thanks for pointing me in the right direction! First I've followed your advice passing import { defineConfig } from 'cypress';
export default defineConfig({
e2e: {
...
setupNodeEvents(on, config) {
on('before:browser:launch', (browser, launchOptions) => {
if (browser.family === 'chromium') {
launchOptions.args.push('--disable-gpu');
}
return launchOptions;
})
},
}
}); Then I changed my cypress command from RUN apt install -y fonts-liberation libu2f-udev libvulkan1 wget xdg-utils
RUN curl -o /usr/src/google-chrome-stable_current_amd64.deb "http://dl.google.com/linux/chrome/deb/pool/main/g/google-chrome-stable/google-chrome-stable_120.0.6099.224-1_amd64.deb" && \
dpkg -i /usr/src/google-chrome-stable_current_amd64.deb ; \
apt-get install -f -y && \
rm -f /usr/src/google-chrome-stable_current_amd64.deb The result is not only, that my screenshots fitted better, the Vulkan error is gone as well. I don't know which of these steps fixed it, but maybe it helps somebody. |
I am facing the same issue with 13.7.0 and i cannot downgrade because i was facing this issue: #5016 Can some one please advise if this is a cypress issue or it is an issue of configs.. FYI i am using chrome 121 |
Those who are using 13.7.0, is the warning only appearing or is also timing out the CI please?..I got the warning but so far it just appeared but did not block the CI so i need to know if it is interminent or it is really not blocking the pipeline |
If your own CI workflow is not being blocked, then you can ignore this error it seems. |
This issue was breaking one of my pipelines. |
With DEBUG turned on, the Cypress process gets stuck indefinitely with:
Log output
|
In the tests that @roadSurfer ran, he found that if you run Cypress long enough you will get the Vulkan error, so I suspect in your case also that it might be overlaid over some other issue. If you go back in your log file before it shows just the |
@MikeMcC399 I think you're right. Downgrading to 13.6.4 removed the warning but didn't fix the pipeline getting stuck. So apparently it's a different bug. It's really hard to say what triggers the freeze because it's flaky: sometimes it gets stuck on a certain test, sometimes goes on. The only thing that is more or less certain, is that it only seems happen in tests that test an application running inside an iframe. |
Hello, Have the cypress team been able to replicate the issue please? Thank you |
For me I was getting the error when starting cypress in my pipeline. It would cause the tests to not run, and fail the suite. The only way I could get rid of it was to roll back cypress version. I believe it's a recent regression from within the last few weeks. |
Which Cypress version did you roll back to? |
I am running into this issue on Cypress v13.6.6, running cypress in google cloudbuild. The issue also exists on v13.7.1. │ Cypress: 13.6.6 │ Warning: vkCreateInstance: Found no drivers! It is not specific to any one test, happens across many different specs 🙁 |
This is true to my experience as well, however it does not happen 100% of the time even in tests interacting with iframes. It is intermittent/inconsistent between multiple runs of the same test. |
I am seeing this non stop for the past (at least) 3 weeks
|
The solution to fix it is simple - Downgrade Cypress to build: 13.3.3 !!!!!!!!!!!!!!!!! |
Thats not really a solution..Not everyone can downgrade..We were facing this issue #5016 and it got fixed in 13.7.0..All versions below 13.7.0 are giving us the screenshot timeout error. |
Everyone, thank you for your contributions to this thread. This warning is present when Cypress is run in a Docker container whose host does not have a GPU. A similar warning is present when Cypress is run on a machine that does not have a GPU. These warnings are coming from the primary Electron process that Cypress spawns, and not from any of the browsers launched by Cypress. These warnings should not be causing tests to fail or hang, as evidenced by example reproductions that have a fully passing test suite despite the warnings being present. We will be suppressing this warning in a similar manner to other benign Electron warnings. If a minimal reproduction is made available that proves failure due to this warning, we will re-assess. Thank you! |
When can we expect a release pls? |
There is a pre-release binary including the fix above, if anyone is interested in trying it out instructions and the binary are here: 96b14c3#commitcomment-140832299 This will be included in our next release. |
Released in This comment thread has been locked. If you are still experiencing this issue after upgrading to |
Current behavior
Jenkis e2e tests are failing due to Vulkan
Cypress Version
13.6.6
Node version
20.11.0
Operating System
macOS Sonoma 14.3.1
Debug Logs
No response
Other
No response
The text was updated successfully, but these errors were encountered: