Skip to content
Oeiuwq Faith Blog OpenSource Porfolio

erlware/relx

Sane, simple release creation for Erlang

erlware/relx.json
{
"createdAt": "2013-05-07T00:09:13Z",
"defaultBranch": "main",
"description": "Sane, simple release creation for Erlang",
"fullName": "erlware/relx",
"homepage": "http://erlware.github.io/relx",
"language": "Erlang",
"name": "relx",
"pushedAt": "2025-11-10T15:55:53Z",
"stargazersCount": 693,
"topics": [],
"updatedAt": "2025-11-20T07:35:55Z",
"url": "https://github.com/erlware/relx"
}

Cirrus CI - Task and Script Build Status

Relx is a library that assembles Erlang/OTP releases. Given a release specification and a list of directories in which to search for OTP applications it will generate a release output.

It is generally used through the Erlang/OTP build tool rebar3 which provides a cli interface.

relx is a library used by rebar3. Documentation on using rebar3 for building releases with relx can be found on rebar3.org.

Also see Adopting Erlang’s Releases chapter.

Common Test suites can be run with rebar3:

Terminal window
$ rebar3 compile
$ rebar3 ct

Tests for the start scripts that are generated by relx are tested with shelltestrunner.

The script shelltests/run_tests.sh will clone rebar3 main and build it with the current relx as a checkout dependency and then run the tests using that rebar3 escript:

Terminal window
$ shelltests/run_tests.sh