Describe the bug
In some cases, when using nodeLinker: node-modules, during the link step, yarn will attempt to delete the entire node_modules directory, instead of only its contents. This causes problems with the common docker pattern of mounting node_modules as a volume, resulting in an error like the following:
➤ YN0000: ┌ Link step
➤ YN0001: │ Error: While removing /src/js/cloud/catalog/node_modules EBUSY: resource busy or locked, rmdir '/src/js/cloud/catalog/node_modules'
➤ YN0000: └ Completed in 13.99s
Note in this case, node_modules is in a subdirectory of a monorepo.
To Reproduce
Sorry, I am unable to provide a minimal reproduction.
Environment if relevant (please complete the following information):
- OS: [e.g. OSX, Linux, Windows, ...] Linux + docker
- Node version [e.g. 8.15.0, 10.15.1, ...] v13.11.0
- Yarn version [e.g. 2.0.0-rc1, ...] 2.0.0-rc.30
Additional context
I found this issue -- #1108 -- which may have fixed it. So I tried upgrading yarn using the following command:
root@a9290f036923:/src/js/cloud# yarn set version latest
➤ YN0000: Selecting the highest release amongst 1.22.4 and 18 others
➤ YN0000: Downloading https://github.com/yarnpkg/yarn/releases/download/v1.22.4/yarn-1.22.4.js
➤ YN0000: Saving the new release in .yarn/releases/yarn-1.22.4.js
➤ YN0000: Done in 1.86s
root@a9290f036923:/src/js/cloud# yarn --version
2.0.0-rc.30
But it still seems to be on 2.0.0-rc.30 after running it. As far as I can tell from the releases page, this version does not include the fix linked above, so I am unable to confirm the fix works as I am unable to upgrade to a version including it.
Maybe this is as simple as upgrading yarn. I've searched the docs and am unclear on the best way to do this, could you please advise if so?
Describe the bug
In some cases, when using
nodeLinker: node-modules, during thelinkstep, yarn will attempt to delete the entirenode_modulesdirectory, instead of only its contents. This causes problems with the common docker pattern of mountingnode_modulesas a volume, resulting in an error like the following:Note in this case,
node_modulesis in a subdirectory of a monorepo.To Reproduce
Sorry, I am unable to provide a minimal reproduction.
Environment if relevant (please complete the following information):
Additional context
I found this issue -- #1108 -- which may have fixed it. So I tried upgrading yarn using the following command:
But it still seems to be on
2.0.0-rc.30after running it. As far as I can tell from the releases page, this version does not include the fix linked above, so I am unable to confirm the fix works as I am unable to upgrade to a version including it.Maybe this is as simple as upgrading yarn. I've searched the docs and am unclear on the best way to do this, could you please advise if so?