What is everyone using for Erlang deployment? What are the options?
Not very pretty, requires a lot of caution but works very often:
git pull ./rebar3 as prod compile
[l(M) || M <- code:modified_modules()].
I really wanted to switch to
relx, I swear ;-), but at the time I tried it, it was completely broken on Windows, which up until now (switching on Monday \o/) was what we had to put up with.
Any specifics you have on what wasn’t working on Windows?
Well, it was at least this one: Release does not boot on Windows with include_erts to false · Issue #237 · erlware/relx · GitHub
I gave a patch for a part of it (related to the created batch files) in Fix erts path discovery on Windows if the path contains spaces. by filmor · Pull Request #464 · erlware/relx · GitHub and it took so long to get merged that I didn’t have time to to try again (project moved on).
I build releases using rebar3 (relx). Most of this application is not written in Erlang (yet), there is an existing build system that just picks up the release and packages it with all the other deliverables into DEB and RPM files.