I will read more libraries; hopefully I can find some which use flow.
I have used distillery but I find myself going down a pretty big rabbit hole just to release something which in most languages is pretty simple. I will look at it again.
I based my dockerfile on https://gist.github.com/bsedat/16cb74ebc8ab0ed61ac598a129b0a...
Blogpost: https://zorbash.com/post/docker-multi-stage-elixir-distiller... (I'm not the author)
We have some on DO and some on Heroku for clients. Both work well enough.
That's my main complain about Elixir. Releasing and configuring at runtime is a huge pain. I honestly don't see any value in this whole "compile time configuration". If it's at compile time, I can put it in the code. What I call configuration is things I can change at runtime. The fact that something that is a given in any language (config via env vars) requires an extra dependency in Elixir is kind of sad.
Otherwise I love the language, the paradigm and the platform.
I don't think it's very much work - but everytime i try to build something like this I go down this path of trying to work out exactly what the architecture should be like.
Maybe it's a config application you include in extra_applications. How would you tell it the format of the file? How could you do validations?
And then maybe do an escript or similar for configuring it on the fly - something like "elixir_set <variable> <value>"
Error messages have gotten better in Elixir 1.5 The whole ecosystem is actually getting better with each release.
For shipping to production I use 'distillery'. You create a 'release' and you can even instruct it to read some arguments from the env vars.
But yeah, more resources would definitely be welcome. Hopefully as more people start using the language, more resources will be created.