Skip to content

PNPM Workspace example - erroneous for mono-repo setups #1590

@SStranks

Description

@SStranks

The example from the docs: PNPM Workspaces.

The working-directory flag requires the presence of a lock-file in that location, and it will abort the run if one isn't located. If a project is a true PNPM mono-repo then this example is erroneous because there should only be one pnpm-lock.yaml at the root of the project that dictates the entire mono-repo; having multiple lock-files causes both version conflicts and cache misses.

working-directory is required for the installation step of the cypress module, which in a mono-repo will be confined to that folder so that other workspace projects can have their own versions if necessary. But the installation can't take place because of the aforementioned lock-file issue.

Manually running the pnpm installation before using the cypress-action does not resolve the issue either, due to the internals of cypress-action itself using npm rather than pnpm so it can't orientate itself to the dependency structure - parallel to this I saw a log error involving npx being used to get a 'cache list', when I tried to manually cache the cypress binary and pass it in.

Not sure what the solution should be, but the requirement for the pnpm-lock.yaml in the working-directory seems to be the block.

Metadata

Metadata

Assignees

Labels

documentationImprovements or additions to documentationreleased

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions