github-action icon indicating copy to clipboard operation
github-action copied to clipboard

Could not find a Cypress configuration file. We looked but did not find a cypress.json file in this folder.

Open kahboom opened this issue 2 years ago • 30 comments

As of late last week, Cypress tests are failing with this error, from one commit to the next, which was completely unrelated (an .md file). I seem to be getting the same error as @jazanne from this comment.

We're using:

  • cypress-io/github-action@v2
  • Cypress v9.7.0
  • Yarn Berry v3

I tried @jazanne's workaround, sadly we're still getting the same error regardless. We've tried upgrading cypress, using cypress-io/github-action@v3, and running it headlessly. In one separate PR I even tried to downgrade to yarn 1.x, which is causing some other errors. The whole JS toolchain seems so brittle. :s Is anyone else getting this? Any suggestions?

[STARTED] Task without title.
[SUCCESS] Task without title.
[494:0606/101147.234717:ERROR:node_bindings.cc(276)] Most NODE_OPTIONs are not supported in packaged apps. See documentation for more details.
[494:0606/101147.234801:ERROR:node_bindings.cc(276)] Most NODE_OPTIONs are not supported in packaged apps. See documentation for more details.
[494:0606/101147.234809:ERROR:node_bindings.cc(276)] Most NODE_OPTIONs are not supported in packaged apps. See documentation for more details.
[494:0606/101147.234815:ERROR:node_bindings.cc(276)] Most NODE_OPTIONs are not supported in packaged apps. See documentation for more details.
libva error: vaGetDriverNameByIndex() failed with unknown libva error, driver_name = (null)
[655:0606/101148.920788:ERROR:sandbox_linux.cc(377)] InitializeSandbox() called with multiple threads in process gpu-process.
[655:0606/101148.926474:ERROR:gpu_memory_buffer_support_x11.cc(44)] dri3 extension not supported.
Could not find a Cypress configuration file.
We looked but did not find a cypress.json file in this folder: /__w/kaoto-ui/kaoto-ui
Error: The process '/usr/local/bin/npx' failed with exit code 1

cc @delawen

kahboom avatar Jun 06 '22 10:06 kahboom

We got the same issue in a gitlab-ci pipeline. Looks like a driver issue to me: libva error: vaGetDriverNameByIndex() failed with unknown libva error, driver_name = (null) Any updates or workarounds yet?

JuliusMu avatar Jun 20 '22 08:06 JuliusMu

same issue. anyone looking into this?

jdferreira2429 avatar Jun 21 '22 20:06 jdferreira2429

Same issue.

Using:

  • cypress-io/github-action@v4
  • Cypress v10.2.0
  • npm (v8? GitHub Actions default)

Could be related to migrating to v2 of npm lockfile. Had to upgrade chokidar after migration.

The run: https://github.com/SparrowBrain/GOG-Galaxy-Suggester/runs/7009698620

Run cypress-io/github-action@v2
/usr/local/bin/npm ci
added 2420 packages, and audited 2421 packages in 55s
15 packages are looking for funding
  run `npm fund` for details
28 vulnerabilities (1 moderate, 19 high, 8 critical)
To address all issues (including breaking changes), run:
  npm audit fix --force
Run `npm audit` for details.
/usr/local/bin/npx cypress cache list
┌─────────┬───────────┐
│ version │ last used │
├─────────┼───────────┤
│ 10.2.0  │ a day ago │
└─────────┴───────────┘
/usr/local/bin/npx cypress verify
[STARTED] Task without title.
[SUCCESS] Task without title.
/usr/bin/tar --posix --use-compress-program zstd -T0 -cf cache.tzst -P -C /home/runner/work/GOG-Galaxy-Suggester/GOG-Galaxy-Suggester --files-from manifest.txt
Cache Size: ~55 MB (57565882 B)
Cache saved successfully
/usr/bin/tar --posix --use-compress-program zstd -T0 -cf cache.tzst -P -C /home/runner/work/GOG-Galaxy-Suggester/GOG-Galaxy-Suggester --files-from manifest.txt
Cache Size: ~155 MB (162987616 B)
Cache saved successfully
start server "npm start command "npm start"
current working directory "/home/runner/work/GOG-Galaxy-Suggester/GOG-Galaxy-Suggester"
waiting on "http://localhost:3000" with timeout of 60 seconds
/usr/local/bin/npm start
> [email protected] start
> react-app-rewired start
ℹ「wds」: Project is running at http://10.1.0.152/
ℹ「wds」: webpack output is served from /GOG-Galaxy-Suggester
ℹ「wds」: Content not from webpack is served from /home/runner/work/GOG-Galaxy-Suggester/GOG-Galaxy-Suggester/public
ℹ「wds」: 404s will fallback to /GOG-Galaxy-Suggester/
Starting the development server...
Compiled successfully!
You can now view gog-galaxy-suggester in the browser.
  Local:            http://localhost:3000/GOG-Galaxy-Suggester
  On Your Network:  http://10.1.0.152:3000/GOG-Galaxy-Suggester
Note that the development build is not optimized.
To create a production build, use npm run build.
[2203:0622/174911.935964:ERROR:sandbox_linux.cc(377)] InitializeSandbox() called with multiple threads in process gpu-process.
[2203:0622/174911.939833:ERROR:gpu_memory_buffer_support_x11.cc(44)] dri3 extension not supported.
Could not find a Cypress configuration file.
We looked but did not find a cypress.json file in this folder: /home/runner/work/GOG-Galaxy-Suggester/GOG-Galaxy-Suggester
Test run failed, code 1
More information might be available above
Error: Could not find Cypress test run results
Cypress module has returned the following error message:
Could not find Cypress test run results

The file has to be there, since github checkout points to the same folder

SparrowBrain avatar Jun 22 '22 18:06 SparrowBrain

Nevermind.. Had to manually update to cypress v10.2.0, since dependabot doesn't run the app.

Still a question: why is the error mentioning cypress.json? That confused me.

SparrowBrain avatar Jun 22 '22 19:06 SparrowBrain

@SparrowBrain Thanks for sharing a link to your workflow logs. I had the same issue. In both our cases, you can see in the workflow logs that the config-file was set as cypress.json by default. According to the Cypress docs

Version Changes
10.0.0 Reworked page to support new cypress.config.js and deprecated cypress.json files

image

I just changed the workflow to explicitly declare config-file: cypress.config.ts and it worked. In my case the CLI output was very helpful.

[percy] Running "npx cypress run --headless --config-file cypress.json --browser chrome"

You are attempting to use Cypress with an older config file: cypress.json

When you upgraded to Cypress v10.0 the config file was updated and moved to a new location: cypress.config.ts

You may need to update any CLI scripts to ensure that they are referring the new version. This would typically look something like:

"cypress open --config-file=cypress.config.ts"

https://on.cypress.io/migration-guide

drecali avatar Jun 23 '22 11:06 drecali

We got the same issue in a gitlab-ci pipeline. Looks like a driver issue to me: libva error: vaGetDriverNameByIndex() failed with unknown libva error, driver_name = (null) Any updates or workarounds yet?

I have a similar issue, but it doesn't say it can't find the config file, instead : -

libva error: va_getDriverName() failed with unknown libva error,driver_name=(null)
[491:0626/135959.592121:ERROR:sandbox_linux.cc(377)] InitializeSandbox() called with multiple threads in process gpu-process.
[491:0626/135959.594708:ERROR:gpu_memory_buffer_support_x11.cc(44)] dri3 extension not supported.
Can't run because no spec files were found.
We searched for specs matching this glob pattern:

AshMcConnell avatar Jun 27 '22 11:06 AshMcConnell

Yeah, I'm also getting this when I run it on my local docker. cypress info ran in the cypress/included:9.7.0 container throws this error:

root@23dfb8d855b9:/# cypress info
libva error: vaGetDriverNameByIndex() failed with unknown libva error, driver_name = (null)
[688:0628/153217.781946:ERROR:sandbox_linux.cc(377)] InitializeSandbox() called with multiple threads in process gpu-process.
[688:0628/153217.788351:ERROR:gpu_memory_buffer_support_x11.cc(44)] dri3 extension not supported.
Displaying Cypress info...

new-guy avatar Jun 28 '22 15:06 new-guy

Any solutions yet?? Seems like this is a wide issue as of now with cypress v10+.

stychu avatar Jul 19 '22 19:07 stychu

@AshMcConnell @new-guy

The errors below may not be related to this issue because they also appear in successful runs. Hope this gets fixed soon!

libva error: va_getDriverName() failed with unknown libva error,driver_name=(null)
[491:0626/135959.592121:ERROR:sandbox_linux.cc(377)] InitializeSandbox() called with multiple threads in process gpu-process.
[491:0626/135959.594708:ERROR:gpu_memory_buffer_support_x11.cc(44)] dri3 extension not supported.

drecali avatar Jul 20 '22 12:07 drecali

Ya, this sure seems like a widespread issue. I have had to revert to using Cypress 9.5.4 as all the suggestions here have not worked for me. If anybody knows of a working solution, please report here as we really want to Cypress 10.x

mikeerickson avatar Jul 29 '22 00:07 mikeerickson

+1 - inside docker only happens for open mode

Cypress package version: 9.7.0 Cypress binary version: 9.7.0 Electron version: 18.0.4 Bundled Node version: 16.13.2

[2122:0801/060102.754724:ERROR:bus.cc(397)] Failed to connect to the bus: Failed to connect to socket /var/run/dbus/system_bus_socket: No such file or directory
[2122:0801/060102.754863:ERROR:bus.cc(397)] Failed to connect to the bus: Failed to connect to socket /var/run/dbus/system_bus_socket: No such file or directory
[2122:0801/060102.756263:ERROR:bus.cc(397)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
[2122:0801/060102.756321:ERROR:bus.cc(397)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
[2276:0801/060102.822555:ERROR:sandbox_linux.cc(377)] InitializeSandbox() called with multiple threads in process gpu-process.
[2276:0801/060102.825930:ERROR:gpu_memory_buffer_support_x11.cc(44)] dri3 extension not supported.
[2122:0801/060102.968302:ERROR:bus.cc(397)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
[2122:0801/060102.988646:ERROR:bus.cc(397)] Failed to connect to the bus: Could not parse server address: Unknown address type (examples of valid types are "tcp" and on UNIX "unix")
^C[2276:0801/060244.882776:ERROR:connection.cc(66)] X connection error received.
[2276:0801/060244.883598:ERROR:connection.cc(66)] X connection error received.

snake-py avatar Aug 01 '22 06:08 snake-py

Happens to me when upgrading from cypress 9.x to cypress 10.4. It appears to work with cypress 9.7 for me unlike other have mentioned above.

gsouf avatar Aug 03 '22 08:08 gsouf

Any workarounds?

rozzs74 avatar Aug 03 '22 08:08 rozzs74

Actually this is working after running the cypress migration. The config file is not a json anymore. It is a JS file now. All I did is running cypress open (from host machine, not from docker) to get cypress ui, and followed the migration from the UI. They migrate the cypress file for us. Then remember to use cypress run with updated flag --config-file to point to the new js file

gsouf avatar Aug 03 '22 08:08 gsouf

any ideas ? im getting this error when i want to use it with docker image but im using the 10.4.0 cypress version and i have the following configuration :

image

javierfuentesm avatar Aug 06 '22 08:08 javierfuentesm

@gsouf any ideas ? with my problem, it seems like you solved it Im using the same version image but getting the same error

javierfuentesm avatar Aug 06 '22 08:08 javierfuentesm

@javierfuentesm your issue seems to be different to what is described in this ticket. I think you need to put the full path from your app root (from where you invoke in the cypress command) in supportFile. For example

supportFile: 'cypress/support/e2e.js'

Or just remove this config because by default cypress will already pick the file at this location (https://docs.cypress.io/guides/core-concepts/writing-and-organizing-tests#Support-file).

It just feels weird that the path is not resolved relatively to the config file. Might be an actual issue

gsouf avatar Aug 06 '22 09:08 gsouf

@gsouf yes i tried that but is not working , locally it works fine but on docker i get all those errors

javierfuentesm avatar Aug 06 '22 15:08 javierfuentesm

@javierfuentesm I got the same error as you did when I tried just support/e2e.js and it got resolved on docker when I use the config cypress/support/e2e.js.

That is weird, but overall I noticed many issues with path resolution when I tried to configure the new components testing today.

Does that work if you use an absolute path. ie:

supportFile: path.resolve(__dirname, 'cypress/support/e2e.js')

Have you also tried on an other docker base image? For example could miss something if you are using an alpine image

gsouf avatar Aug 06 '22 23:08 gsouf

Is there any updates on this issue? i am also getting error while running in docker. Cypress version: 10.3.0

image

arnabmondal19 avatar Aug 11 '22 16:08 arnabmondal19

Is there any updates on this issue? i am also getting error while running in docker. Cypress version: 10.3.0

image

Having the same issue. Any solutions yet?

iliogr avatar Aug 16 '22 15:08 iliogr

@iliogr @arnabmondal19 this is not the same error. The error described in this ticket is Could not find a Cypress configuration file. We looked but did not find a cypress.json file in this folder..

gsouf avatar Aug 16 '22 15:08 gsouf

@gsouf I know. the error described in the ticket is caused because cypress v10 requires a different config file not cypress.json anymore.

however, I am interested in the issue mentioned above regarding dri3 extension not supported :)

iliogr avatar Aug 16 '22 15:08 iliogr

@iliogr I don't think that the "dri3 extension" message is an issue. At least for me it's working well in docker and I'm getting the same error message about "dri extension".

Is your cypress config file at the root of the your project? If not try to place it at the root of the project to see if it works. There are some ongoing issues with path resolutions when cypress config is not at the root.

Also mentioning just in case you missed that.. with cypress 10 default specs files pattern is now using extension *.cy.js. Are your files matching this pattern?

Ultimately you can try to set the specPattern manually to an absolute path in your cypress config file:

const path = require('path');
const { defineConfig } = require('cypress');


module.exports = defineConfig({

  // for e2e testing
  e2e: {
    specPattern: path.resolve(__dirname, 'path/to/src/**/*.cy.js'), 
  },

  // for component testing
  component: {
    specPattern: path.resolve(__dirname, 'path/to/src/**/*.cy.js'), 
  },

})

See https://docs.cypress.io/guides/references/configuration#e2e

gsouf avatar Aug 16 '22 16:08 gsouf

Having the same issue after upgrading to Cypress version 10. I am running inside of IntelliJ. When I click on a Cypress run configuration to run a test, I get this message:

Could not find a Cypress configuration file.

We looked but did not find a cypress.config.ts file in this folder: C:\Program Files\JetBrains\IntelliJ IDEA 2021.1.2\jbr\bin

I have implemented the suggestions noted above... i.e. running with --config-file=cypress.config.ts in my test parameters, specPattern: 'cypress/e2e/**/*.{js,jsx,ts,tsx}' in the cypress.config.ts file, etc. The problem persists.

kodriscollics avatar Aug 16 '22 21:08 kodriscollics

Would you be able to provide a minimum sample repo with a dockerfile that we can use to reproduce the issue @kodriscollics @iliogr ?

gsouf avatar Aug 17 '22 10:08 gsouf

@gsouf and @iliogr ... I figured out the issue (at least for my manifestation of this error). After the upgrade, the value in all of the "Cypress project base:" fields for my Intellij tests were deleted. After I put the proper value back in the fields, the tests run without the error. Here is a look at what I'm talking about:

CypressProjectBaseField

kodriscollics avatar Aug 17 '22 17:08 kodriscollics

any news?

lucasfraga-bnex avatar Aug 25 '22 17:08 lucasfraga-bnex

See: https://docs.cypress.io/guides/references/migration-guide#Cypress-Changes

"You may use the --config-file command line flag or the configFile module API option to specify a .js or .ts file. JSON config files are no longer supported."

It's working for me after changing:

/integration/config.json

{
  "baseUrl": "http://localhost:3000",
  "ignoreTestFiles": "**/config.json",
  "video": false,
  "experimentalSessionSupport": true
}

To:

/integration/config.js

const { defineConfig } = require('cypress')

module.exports = defineConfig({
  e2e: {
    baseUrl: 'http://localhost:3000',
    supportFile: false,
    video: false,
    experimentalSessionAndOrigin: true,
    specPattern: [
      "**/*.integration.test.ts"
    ]
  }
})

JonnyWideFoot avatar Aug 26 '22 12:08 JonnyWideFoot

@drecali kudos, your comment "I just changed the workflow to explicitly declare config-file: cypress.config.ts and it worked." resolved my issue! Thank you.

w4dd325 avatar Sep 13 '22 22:09 w4dd325