basho / node_package

RPM/Debian/FreeBSD/SmartOS/Solaris/OSX packaging templates for Erlang Nodes
Apache License 2.0
89 stars 63 forks source link

Please see [[RELEASE-NOTES.md][RELEASE-NOTES.md]] for important changes in the 3.0.0 release of node_package

** Overview

node_package is a set of RPM/Debian/Solaris templates and scripts, suitable for packaging embedded Erlang nodes.

*** Supported Operating Systems

Currently supported operating systems / distros

** Use

*** Makefile Variables

**** Required Variables

The following variables need to be exported for node_package to work correctly.

**** Defaulted Variables

The following variables will have a default, but can be overriden in your application.

** Package and Script Variables

*** Package Variables The following variables describe a package and should be put in the =pkg.vars.config= file.

**** Required Variables

**** Optional Variables

*** Script Variables The following variables are used in the =env.sh= and =runner= scripts which can be used by reltool for =rel= and =devrel= builds. They should be set in your application's =vars.config=.

**** Optional Variables

*** Templating Order There are several templating steps done in node_package:

So, if you want to have a variable persist all the way through to the final reltool step, the variable needs to be set in pkg.vars.config (or defaulted in .template) AND be present in the vars.config, so it can be applied to the reltool templates.

*** Example App

The easiest app that uses =node_package= is [[https://github.com/basho/stanchion][stanchion]] a small application that Basho uses along side Riak CS.

In particular, see:

It also has custom settings in its [[https://github.com/basho/stanchion/blob/develop/rel/vars.config#L31][vars.config]] for adjusting settings in the =bin/stanchion= that comes from node_package's =runner= script.