aboutsummaryrefslogtreecommitdiffstats
path: root/overlays/index.md
diff options
context:
space:
mode:
authorTristan Sloughter <[email protected]>2013-09-21 13:51:27 -0500
committerTristan Sloughter <[email protected]>2013-09-21 13:51:27 -0500
commit5acf0e4a3cfafca569a9e22f1730f11c8c6a4a07 (patch)
treefaa40ecc88c1136f1627d11a0aef0718d36f7a7b /overlays/index.md
parent5488f1c22c4664b4b591ed35fea3d413becdb4dd (diff)
downloadrelx-5acf0e4a3cfafca569a9e22f1730f11c8c6a4a07.tar.gz
relx-5acf0e4a3cfafca569a9e22f1730f11c8c6a4a07.tar.bz2
relx-5acf0e4a3cfafca569a9e22f1730f11c8c6a4a07.zip
add overview, overlays and configuration pages
Diffstat (limited to 'overlays/index.md')
-rw-r--r--overlays/index.md56
1 files changed, 56 insertions, 0 deletions
diff --git a/overlays/index.md b/overlays/index.md
new file mode 100644
index 0000000..a6b6c4e
--- /dev/null
+++ b/overlays/index.md
@@ -0,0 +1,56 @@
+---
+layout: default
+title: Relx Overlays
+---
+
+Overlays
+========
+
+Overlays as defined in Rebar are directly supported in Relx. So you
+can take your Overlay configuration and move it to your
+`relx.config` and it should just work. For example, you could take
+the following:
+
+ {overlay_vars, "vars.config"}.
+ {overlay, [{mkdir, "log/sasl"},
+ {copy, "files/erl", "{{erts_vsn}}/bin/erl"},
+ {copy, "files/nodetool", "{{erts_vsn}}/bin/nodetool"},
+ {template, "files/app.config", "etc/app.config"},
+ {template, "files/vm.args", "etc/vm.args"}]}.
+
+and move it directly from your `reltool.config` to your
+`relx.config` and it would work in exactly the same way. In Relx
+you have more options though. Relx exposes more variables along
+with the full power of a Django templating system (see
+[erlydtl](http://code.google.com/p/erlydtl/)). You can look at the
+documentation there for the full syntax supported. The variables
+supported are listed below.
+
+Available Variables
+-------------------
+
+* *log* : The current log level in the format of `(<logname>:<loglevel>)`
+* *output_dir* : The current output directory for the built release
+* *target_dir* : The same as `output_dir`, exists for backwards compatibility
+* *overridden* : The current list of overridden apps (a list of app names)
+* *overrides.<AppName>* : The override directory for said <AppName>
+* *goals* : The list of user specified goals in the system
+* *lib_dirs* : The list of library directories, both user specified and derived
+* *config_file* : The list of config file used in the system
+* *providers* : The list of provider names used for this run of relx
+* *sys_config* : The location of the sys config file
+* *root_dir* : The root dir of the current project
+* *default_release_name* : The current default release name for the relx run
+* *default_release_version* : The current default release version for the relx run
+* *default_release* : The current default release for the relx run
+* *release_erts_version* : The version of the Erlang Runtime System in use
+* *erts_vsn* : The same as `release_erts_vsn` (for backwards compatibility)
+* *release_name* : The currently executing release
+* *release_version* : the currently executing version
+* *rel_vsn* : Same as `release_version`. Exists for backwards compatibility
+* *release_applications* : A list of applications included in the release
+* *release.[AppName].version : The version of `<AppName>`
+* *release.[AppName].dir : The on system directory of `<AppName>`
+* *release.[AppName].active_dependencies : The list of active application dependencies for `<AppName>`
+* *release.[AppName].library_dependencies : The list of library application dependencies for `<AppName>`
+* *release.[AppName].link : Indicates if this application should be linked in or not