-
Notifications
You must be signed in to change notification settings - Fork 1
Configuring Assemblies
An "assembly" is a group of files and/or directories assembled into an archive and distributed. File system entries are included (or excluded) by setting up the appropriate entries in your configuration. For example, consider the following additions to a standard, top level rebar.config, which will put the entire [rebar generated release](https://github.com/basho/rebar/wiki/Release-handling) into an archive, but exclude the erts subdirectories.
{sub_dirs, ["rel"]}.
{dist, [
{incl_dirs, ["rel/*"]},
{excl_dirs, ["**/erts-*"]}
]}.The plugin will work out the difference between overlapping includes and excludes so as to remove the directory matching the +erts-* + glob pattern from the output prior to archiving.
These parameters can be given to any assembly tuple, wherever it is sourced from.
| Option | Description | Default |
|---|---|---|
format |
The output format, one of zip,tar,targz. |
targz |
outdir |
The output directory into which all assemblies should be placed. |
./dist |
workdir |
The directory in which all temporary file system entries should be dealt with. |
./dist/.work |
incl_dirs |
List of glob patterns, literal folder names or folder specs to include. |
No Default |
excl_dirs |
List of glob patterns, literal folder names or folder specs to exclude. |
No Default |
incl_files |
List of glob patterns, literal file names or file specs to include. |
No Default |
excl_files |
List of glob patterns, literal file names or file specs to exclude. |
No Default |
The incl and excl options for both files and folders take lists, containing one of three kinds of configuration entry. The first is a simple path, which can be relative or absolute and is represented as a string. The second, a glob expression passed to filelib:fold_files/5 in order to collect files (or directories), also represented as a string.