diff options
author | Tristan Sloughter <[email protected]> | 2013-10-18 20:46:37 -0500 |
---|---|---|
committer | Tristan Sloughter <[email protected]> | 2013-10-18 20:47:32 -0500 |
commit | a19a0cd5efbce527f5ada3885161951d1ca2b5b8 (patch) | |
tree | a1771435bfe16319d9a1c6fc5751021ba01afba9 /src | |
parent | 2e6c1d0f1e8e8e6dd913b8a500cf3388c96acd10 (diff) | |
download | relx-a19a0cd5efbce527f5ada3885161951d1ca2b5b8.tar.gz relx-a19a0cd5efbce527f5ada3885161951d1ca2b5b8.tar.bz2 relx-a19a0cd5efbce527f5ada3885161951d1ca2b5b8.zip |
add extend to release definition. This closes #16
Diffstat (limited to 'src')
-rw-r--r-- | src/rlx_prv_config.erl | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/rlx_prv_config.erl b/src/rlx_prv_config.erl index 126b497..e2eac7e 100644 --- a/src/rlx_prv_config.erl +++ b/src/rlx_prv_config.erl @@ -156,6 +156,18 @@ load_terms({dev_mode, DevMode}, {ok, State0}) -> {ok, rlx_state:dev_mode(State0, DevMode)}; load_terms({include_src, IncludeSrc}, {ok, State0}) -> {ok, rlx_state:include_src(State0, IncludeSrc)}; +load_terms({release, {RelName, Vsn, {extend, RelName2}}, Applications}, {ok, State0}) -> + Release0 = rlx_release:new(RelName, Vsn), + ExtendRelease = rlx_state:get_configured_release(State0, RelName2, Vsn), + Applications1 = rlx_release:goals(ExtendRelease), + case rlx_release:goals(Release0, + lists:umerge(lists:usort(Applications), + lists:usort(Applications1))) of + E={error, _} -> + E; + {ok, Release1} -> + {ok, rlx_state:add_configured_release(State0, Release1)} + end; load_terms({release, {RelName, Vsn}, Applications}, {ok, State0}) -> Release0 = rlx_release:new(RelName, Vsn), case rlx_release:goals(Release0, Applications) of |