reltool_util
Erlang reltool utility functionality application
release is an escript which provides the same basic functionality as
rebar generate, with additional error reporting coming from the reltool OTP
source code which rebar suppresses.
scope is an escript which moves your Erlang application dependencies
into their own "scope", so in Erlang, this means that it adds a prefix to
the application name and all the modules used by the application. The general
sequence of operations you would want to use with the scope script are:
- use the
-rreplace mode to modify internal source code, - modify the internal source code manually, if necessary,
- run the
scopescript normally before compilation, - if it is necessary to return the source back to the original state, use the
-uundo mode to remove the scoped source code and replace it with the original source code. Thescopescript is meant to be part of a build process so the dependency modifications should be automatic (if the dependencies are not convoluted).
Example arguments for normal operation are: -s cloudi_x_ -p cloudi -b _original -d directory1 -d directory2.
Dependencies that use include_lib require that the dependency directory name is
changed to have the scope, but the script can still add/remove the scope to the
application and module names normally.
The reltool_util source code provides a simple way to start an Erlang
application manually, outside of a release (which is useful when regression
testing requires that an application be started, especially if the tests are
part of a build process like rebar eunit or rebar ct).