Erlang/Elixir Release Assembler
Latest commit 43d1ae9 Apr 21, 2014 @yrashk Merge pull request #16 from edgurgel/patch-1
Failed to load latest commit information.
.gitignore Update Apr 21, 2014
mix.exs Update syntax and APIs Feb 25, 2014
package.head.exs Release generator -> Release assembler Oct 13, 2012

Relex — Release assembler

Relex is a simplistic assembler for Erlang releases in Elixir.

In order to define a release, this is your start point:

defmodule MyApp.Release do
  use Relex.Release

  def name, do: "myapp"
  def version, do: "1"

  def applications, do: [:myapp]

See Relex.Release.Template documentation for more information

After having this module compiled, run MyApp.Release.assemble! path: "/output/dir" (path is optional)

Mix task

You can also use Relex with Mix. For this, add the following dependency:

{:relex, github: "yrashk/relex"},

Then, prepend your mix.exs file with this:

Code.append_path "_build/#{Mix.env}/lib/relex/ebin/"

and then, inside of your project module, define the release:

if Code.ensure_loaded?(Relex.Release) do
  defmodule Release do
    use Relex.Release

    def name, do: "myrelease"
    def version, do: Mix.project[:version]
    def applications, do: [:myapp]
    def lib_dirs, do: ["deps"]

Now you can run mix relex.assemble and mix relex.clean commands