-
-
Notifications
You must be signed in to change notification settings - Fork 46
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
terraspace build failing - `spawn': No such file or directory - file (Errno::ENOENT) #163
Comments
In addition to this issue: We are seeing constant issues with randomly updating dependencies. It really seems ruby gems are very often updated without any concern of backwards compatibility. Is it possible to fix all dependencies to specific versions for each version of terraspace? We already needed to manually downgrade various gems to get terraspace to work. This is really not production ready at all, right now. The above nodejs dependency is just the tip of the iceberg. Earlier we had issues with the 'faraday' gem and now with 'activesupport-7.0.0' as well. What would help with this and make it possible to use in a real production environment is fixing the versions of all dependencies and providing clear guidelines on other external dependencies, like "build-essentials" (or c-compilers in general) and "nodejs". General cleanup of dependencies would also be great, as 650MB of dependencies seems quite overkill for an application like terraspace. |
@exoaturner Thanks for the detailed report. 👍 It was just enough info to figure this out. Here's also a Dockerfile for posterity in case it's helpful in the future:
The issue stems from
Some folks have binary files in their terraform source code. IE: prepackaged zipped lambda functions. Ran into a while back and added a text or binary file check as part of the Terraspace compile processing. This check uses the Ubuntu is a bare enough Docker image, so it doesn't even have the file command install. Bummer. Terraspace is not dependent on nodejs. When In debugging this, installed Details of the fix are in: #165 |
@exoemay Yes. There are ways to lock down specific versions. Added docs to help: https://terraspace.cloud/docs/install/gems-locking/ Also, note, this comes from a good place. Am hoping there's little more positive energy here. @exoaturner provided a very detailed bug report and is using his own time, free of charge, to help. There will always be ways to improve software and Terraspace. Constructiveness helps motivate everyone to help. Additionally, it fosters a healthy community. Again, this comes from a good place. Hope the docs help and will consider PRs to improve them. One thing that may help in the future with issues is providing a step-by-step reproduction of the issues. Example repos also help. They can save a tremendous amount of time in helping to fix issues. Even consider creating a PR. Also, added docs showing how to run a custom version of Terraspace to help https://terraspace.cloud/docs/install/gem/custom-version/ Of course, no sweat either way. |
terraspace build failing - `spawn': No such file or directory - file (Errno::ENOENT)
Checklist
My Environment
Can recreate environment exactly using docker container
ubuntu:20.04
and running the below commands.Commands:
Expected Behaviour
terraspace build demo
results in terraspace cache being built.Current Behavior
terraspace build demo
results in the below error.Step-by-step reproduction instructions
Setup docker container on
ubuntu:20.04
installed software as explained in the "My Environment" section. Then follow the below:Code Sample
Happens with your own demo repo...
Demo Repo: https://github.com/boltops-tools/terraspace-demo-terrafile
Solution Suggestion
Not really a suggestion or recommendation but installing nodejs seems to resolve the problem I am not sure why terraspace would require nodejs. If it does, it definitely not documented anywhere that it does.
Also from a security perspective having lots of dependencies isn't ideal (larger attack surface).
The text was updated successfully, but these errors were encountered: