`node_package` is a set of RPM/Debian/Solaris templates and scripts, suitable for packaging embedded Erlang nodes.
Currently supported operating systems / distros
- Redhat / Fedora and variants
- Debian / Ubuntu and variants
- FreeBSD
- OSX
Planned supported operating systems
- SmartOS
The following variables need to be exported for node_package to work correctly.
PKG_VERSION- The version of your application (ex: 1.2.0)PKG_ID- The full name of the package, typically{{package_name}}-PKG_VERSION(ex: riak-1.2.0)
The following variables will have a default, but can be overriden in your application.
PKG_BUILD- (Default: 1) Sets the “release” version of the build (ex: app-5.4-1 <- the ‘1’)ERLANG_BIN- (Default: `which erl`) Sets the path of the current erlang binary
The following variables describe a package
package_name- The name of the packagepackage_install_name- The name used in the install directories eg: /usr/lib/{{package_install_name}}. Usually the same as package_name.package_shortdesc- A short (< one line) description of the packagepackage_install_user- The user to create and run the daemon frompackage_install_group- The group to create and add the above user tocopyright- The copyright holder (ex: 2011 Basho Technologies, Inc)license_type- The short desciption of what license the app is undervendor_name- The name of the person or company who is releasing this packagevendor_url- The website of the person or company who is releasing this packagevendor_contact_name- The name of the maintainer (ex: Basho Packaging)vendor_contact_email- The email address of the maintainer (ex: packages@basho.com)solaris_pkgname- Package names for Solaris follow a naming convention of MAINTapp (ex: BASHOriak)runner_wait_process- The erlang process to wait for to determine if your app started or not. (ex: `riak_core_node_watcher` in riak’s case)
license_full_text- If the full text of a license needs to be included, use this variabledeb_depends- Dependencies you require on deb sytems. This should be a comma separated list.package_desc- A long description of the packagesolaris_depends- (not supported yet) Dependencies specific to the solaris packagepackage_install_user_desc- The description of the user created for the apprunner_ulimit_warn- The runner script will warn if `ulimit -n` is less than this value. This defaults to 4096 in all packages.platform_patch_dir- Directory to include in erlang’s load path to allow for patches to be hotloaded. (ex: {platform_lib_dir}/basho-patches)bin_or_sbin- Tells where to put the binaries, in */bin or */sbin (default: bin)