Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/yrashk/relex
Erlang/Elixir Release Assembler
https://github.com/yrashk/relex
Last synced: about 1 month ago
JSON representation
Erlang/Elixir Release Assembler
- Host: GitHub
- URL: https://github.com/yrashk/relex
- Owner: yrashk
- Created: 2012-10-13T00:18:47.000Z (about 12 years ago)
- Default Branch: master
- Last Pushed: 2014-04-21T05:59:21.000Z (over 10 years ago)
- Last Synced: 2024-11-01T09:33:30.189Z (about 1 month ago)
- Language: Elixir
- Homepage:
- Size: 305 KB
- Stars: 59
- Watchers: 5
- Forks: 12
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- freaking_awesome_elixir - Elixir - Erlang/Elixir Release Assembler. (Release Management)
- fucking-awesome-elixir - relex - Erlang/Elixir Release Assembler. (Release Management)
- awesome-elixir - relex - Erlang/Elixir Release Assembler. (Release Management)
README
# Relex — Release assembler
Relex is a simplistic assembler for Erlang releases in Elixir.
In order to define a release, this is your start point:
```elixir
defmodule MyApp.Release do
use Relex.Releasedef name, do: "myapp"
def version, do: "1"def applications, do: [:myapp]
end
```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:
```elixir
{:relex, github: "yrashk/relex"},
```Then, prepend your mix.exs file with this:
```elixir
Code.append_path "_build/#{Mix.env}/lib/relex/ebin/"
```and then, inside of your project module, define the release:
```elixir
if Code.ensure_loaded?(Relex.Release) do
defmodule Release do
use Relex.Releasedef name, do: "myrelease"
def version, do: Mix.project[:version]
def applications, do: [:myapp]
def lib_dirs, do: ["deps"]
end
end
```Now you can run `mix relex.assemble` and `mix relex.clean` commands