reactive-interaction-gateway
reactive-interaction-gateway copied to clipboard
Allow for non-dockerized installation
While Docker is a modern and popular way to deploy an application, it would still be nice to support the old-fashioned way of installing RIG into the OS' file tree. Couple of things to do here:
- [ ] Create a makefile that by default (i.e., upon
make) compiles the release. - [ ] Create a template for a new configuration file, with comments describing where to find the Operator's Guide, etc. A
make installshould install the file to/etc/rig/env.conf. - [ ] Have
make installinstall the release built bymake. The target path will be either/opt/or the directories under/usr/; take a look at general packaging guidelines as well as at existing Erlang packages like ejabberd (PKGFILE). Perhaps there are already best practices around the new Elixir releases. Also,make installhas to support the usual prefix parameter in order to be useful to packaging RIG into Linux Distro packages. Pretty sure there's a standard way how to do this, too. - [ ] Create a
systemdservice file that runs RIG and used/etc/rig/env.confas the environment configuration using the EnvironmentFile directive. This service file should be installed bymake installas well. Also see the related distillery guide.
Note that I assume systemd cause it's pretty much the standard nowadays.
After this is done, it should be straightforward to create tar, deb, rpm, etc. packages.
EDIT - found this, perhaps that's exactly what we need: https://github.com/18Months/distillery_packager