-
Notifications
You must be signed in to change notification settings - Fork 232
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
Fails to create release when there is a non-Erlang deps (such as rebar raw dependencies) #30
Comments
In case of {application,node_package,
[{description,"RPM/Debian/Solaris packaging templates for Erlang Nodes"},
{vsn,"1.2.1"},
{modules,[]},
{registered,[]},
{applications,[]}]}. |
Adding dummy beam file solves this problem. This is just a workaround - not perfect. $ cd deps/node_package/ebin/
[ebin ((1.2.1))]$ touch dummy.beam
[ebin ((1.2.1))]$ cd ../../..
$ ./relx
Starting relx build process ...
Resolving OTP Applications from directories:
/home/me/ws/myproject/lib
/home/me/ws/myproject/deps
/usr/local/lib/erlang/lib
Resolving available releases from directories:
/home/me/ws/myproject/lib
/home/me/ws/myproject/deps
/usr/local/lib/erlang/lib
Resolved myproject-0.0.1
release successfully created!
$ |
Hmm, this will actually conflict with a problem someone had where they wanted it to skip "apps" that didn't have beam files. But I am blanking though, @ericbmerritt do you remember? And Maybe that was why we added the |
Ah, I remember a little more now, we don't want to skip apps with no beam files because that should mean the app is not compiled and something went wrong. So we added |
Actually #7 should solve this problem. We just need to finish it up, the original submitter never came back. |
My {
release, {myapp, "0.0.1"},
[myapp]
}.
{sys_config, "./bin/sys.config"}.
% skip OTP apps without .beam files
{skip_apps, [node_package]}. Fails on:
|
Hm, that's no good. I'll look into this. As well as I'll try to get #7 done so skip_apps isn't needed either. |
@nivertech can you give master a try? We just merged a fix in #42 |
It works now, even without |
@nivertech I believe that is supposed to be the correct behavior. |
Oops, replied in the wrong place. '@nivertech Yup, now it checks that it has a beam file for all modules listed in the applications .app file. So if there are none listed it is still considered valid if there are no beam files.' |
Relx fails to build a release, because I have a non-Erlang dependency without ebin folder or with empty ebin folder.
Like this one:
https://github.com/basho/node_package
There is also something called rebar raw dependencies [1] and I believe that more correct behaviour for Relx is either copy them to release or ignore them, but not to fail release creation altogether.
basho/rebar#217 (comment)
The text was updated successfully, but these errors were encountered: