-
Notifications
You must be signed in to change notification settings - Fork 5.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
[Meteor 3] Unable to run bundle from "meteor build" #12932
Comments
I am experiencing thie EACCESS error when trying to migrate an older app up to 2.13.1 Would be great to hear if anyone has info on this. thank you npm ERR! code EACCES |
Yup, I run into this problem too. @nachocodoner @leonardoventurini Will you please take care of this problem in the next release? |
@harryadel, could it be perhaps related to the Node.js version? I think if you create a project in for Meteor 3 from a Meteor 2 default install, you would need to make sure the bundle for Meteor 3 is also installed for it to properly build with the right Node.js/NPM version. A potential fix would be to make sure Meteor 3 is installed by default in the docker image. |
By the way, I am very close to getting the node/binary command to download the bundle, already found a way to validate it locally, now need to understand how downloading the bundle works etc and implement the actual solution. I might pause it to take care of other issues though as until now there have always been workarounds. |
I've reproduced this issue in my Docker environment, used for development. It doesn't occur on other setups like Ubuntu or Mac without containerization. Granting write permissions to I'm aware this raises security concerns, as modifying npm-shrinkwrap.json is not recommended as direct and transit dependencies could change unexpectedly between build the app from docker or within other env. I'll investigate further why Docker environments attempt to modify this file during npm install. @harryadel: Did you get this issue within a docker container? or in other circumstances? |
@nachocodoner I get this issue when I try to deploy the application using Scalingo. Let me know, we can further assist you. |
@nachocodoner I attempted to verify your claim and you're right. Seems to be building fine locally but gets messed up in docker environments due to permission issues which can be circumvented using https://github.com/harryadel/simpletasks/tree/main You shall find a docker file in root directory, run it like so: |
Even if we were to drop the security concerns, it's a band aid solution at best as we don't know the root cause of the issue. What changed between 2.x and 3.x to cause such error? |
I have investigated this issue on a Mac Intel machine, outside of a Docker environment, and the problem persists. Build a Meteor 2 projectMeteor 2.x uses node@14.x and npm@6.x. 1- Run The Using node@20.x and npm@10.x, the error from this PR occurs, even with a Meteor 2.x bundle. Build a Meteor 3 projectMeteor 3.x uses node@20.x and npm@10.x. 1 - Run The Using node@14.x and npm@6.x, the npx-shrinkwrap.json file is modified and the lockfileVersion is downgraded. If we rebuild the Meteor 3 app and set the write permission with Conclusion
This issue seems related to a change in the npm installer on new versions used by Meteor 3.x by default. The Said this, I will implement the fix of automating the permission set as part of the |
We managed to have a workaround to deploy our Meteor application thanks to your suggestion @nachocodoner 🙏 For anyone using Scalingo set |
Changes on the meteor build command implemented and tested here, #13219
|
Great work, thank you for your efforts 👏 |
@zodern @harryadel is this resolved now? |
This should be fixed now. I'm closing this issue, but we open it again in the future if necessary. |
Reproduction:
npm install
errors with:For some reason npm tries to write to
npm-shrinkwrap.json
which fails since Meteor has always created it as a read only file. Old versions of Meteor worked correctly. There might be an issue with the npm-shrinkwrap.json file used in Meteor 3, or this might be caused by using a newer version of npm (though I wouldn't expect npm to try to update the shrinkwrap.json in this scenario).The text was updated successfully, but these errors were encountered: