Age | Commit message (Collapse) | Author |
|
vm.args check for name/sname parameter
|
|
tests now include if:
- start succeeds when the node name is given in a different args file than vm.args
- start fails when no node name given
- start fails when multiple node names given
- start fails when referenced args_file does not exist
- start fails when a referenced args_file is not readable
- start fails when an args_file is referenced via a relative path
- start fails when there are circular dependencies between args_files
|
|
- distinction between non-existing and existing but non-readable args_file
- fixed circularity check to include the base vm.args file
|
|
disabling progress reports during erl root check in extended start sc…
|
|
Start top-level applications as early as possible.
|
|
vm.args and referenced args_files will now be checked for:
- non-existing -args_files
- circular dependencies between -args_files
- relative paths in -args_files
- multiple/mixed occurences of -name and -sname parameters
- missing -name or -sname parameters
|
|
|
|
|
|
usage of \s in awk regexp is a gawk extension. OSX comes with a different variant of awk. This fix should make the awk code POSIX-compliant and should work in all variants of awk (tested with gawk --traditional)
|
|
The current version of extended_bin checks if there is a name or sname parameter in vm.args and refuses to start if there is none. However, it is allowed that the vm.args file (more abstract, any -args_file that is given to erl/erlexec etc) itself may contain -args_file parameters (see http://erlang.org/doc/man/erl.html), which may contain the name/sname parameters.
This change will recursively scan the files mentioned in -args_file parameters in vm.args as well as -args_file parameters in the mentioned files etcetc, and return the first occurence of a name/sname parameter.
Two points are worth mentioning, though:
- The name/sname check works only with absolute paths in the args_file parameters. Relative paths are probably a bad idea there, anyway, since it would make any setup rather fragile.
- There is no check for circular dependencies. There was none before, and this change does not add any.
|
|
PIPE_DIR handling
|
|
As mentioned in the (closed) issue #127, the default pipe directory is not multi-user friendly. When running multiple relx-generated releases as different users, the first to be started will create the /tmp/erl_pipes directory, which the ones starting after that cannot create their pipe dirs in. The ticket mentions that this should be fixed by #154, but I cannot see how this is supposed to solve the issue. Right now, the only way I see is to use prefix the start command with env PIPE_DIR=/some/other/dir/, which is quite cumbersome.
This change will work exactly as before when PIPE_DIR is explicitly set. In case PIPE_DIR is not set, however, it will first attempt to create the parent dir /tmp/erl_pipes with mode 1777, which should enable releases being run as other users to create their pipe dirs.
|
|
Prevent .erlang from prepending string to the erl root dir
|
|
Any output string from .erlang to stdout will be prepend to
code:root_dir(), so it will cause the retrieved dir incorrect.
The fix is to start erl with the no_dot_erlang boot file.
|
|
|
|
Don't fail status script command if empty
|
|
Let people define their own when they want to.
|
|
|
|
Add OTP20 support
|
|
|
|
Fixing windows paths for bin scripts
|
|
The syntax for proper path handling when the path may contain
parentheses (such as C:\Program Files (x86)\...) requires quoting the
entire assignment expression:
set "var=%val%"
any other way of doing it may interpret the parentheses and cause
failures.
|
|
Rename gb_tree:tree to gb_trees:tree
|
|
|
|
Windows bat file has an error, causing upgrade to not work
|
|
be 'install' or 'unpack'
|
|
Update README.md
|
|
|
|
Have Travis run on latest OTP19.3
|
|
Feature/extended start script status
|
|
Provide a status command to start script which,
by default, runs a builtin hook that simply prints
which applications are running in the node.
This hook can then be customized to print whatever
the user wants by adding
{status, [{custom, "path/to/hook"}]}
to already existing extended_start_script_hooks.
|
|
|
|
|
|
add osx configuration to .travis.yml
|
|
|
|
Only ensure kernel,stdlib for empty dep apps
|
|
Don't require compiler in the release for relups
|
|
|
|
Add the ability to chmod files in the overlay.
|
|
Two types are supported, direct chmoding, like
{chmod, 8#00700, "path/to/file/maybe/with/{{templates}}" }
or templating the permission where you have a template var like
{file_perm, 8#00700}
and an overlay
{chmod, "{{file_perm}}","path/to/file/maybe/with/{{templates}}" }
|
|
Do not try and ensure them for every app, there
are some OTP apps that only require kernel and
there's really no point in rewriting those.
|
|
lrascao/feature/empty_application_apps_silently_skipped
Ensure stdlib,kernel as application dependencies
|
|
Make this dependency explicit as it was causing
apps with empty application lists to not be included
in the generated release.
|
|
Fix OSX readlink
|
|
Only use multi-node sys.config if requested when replacing OS vars
|
|
Don't drop debug info on default build
|
|
It does not support the -f option.
|
|
When replacing OS vars only create multi-node sys.config
files (ie. filenames containing the node name) only if explicitly
requested. This is necessary because inclusion of other config
files inside of sys.config is only allowed if the file is actually called
sys.config and nothing else.
|
|
Drop it only when generating relx escript.
|
|
Drop use of export_all erlc directive
|