From 2ae9f006a3989a0203442be19e2b42cb76a0c345 Mon Sep 17 00:00:00 2001 From: Badlop Date: Tue, 8 Mar 2022 12:35:39 +0100 Subject: [PATCH] Use Elixir's release instead of Distillery's release --- ecs/Dockerfile | 11 ++++++----- ecs/bin/ejabberdctl | 2 +- ecs/vars.config | 8 +++++++- 3 files changed, 14 insertions(+), 7 deletions(-) diff --git a/ecs/Dockerfile b/ecs/Dockerfile index 0a89362..2195328 100644 --- a/ecs/Dockerfile +++ b/ecs/Dockerfile @@ -17,18 +17,19 @@ RUN git checkout ${VERSION/latest/HEAD} \ && (cd deps/eimp; ./configure) # Compile -RUN mix do compile, distillery.init, distillery.release --env=prod +RUN MIX_ENV=prod mix release # Prepare runtime environment RUN mkdir runtime \ - && tar -C runtime -zxf _build/prod/rel/ejabberd/releases/*/ejabberd.tar.gz \ + && tar -C runtime -zxf _build/prod/ejabberd-*.tar.gz \ && cd runtime \ && cp releases/*/start.boot bin \ - && echo 'beam_lib:strip_files(filelib:wildcard("lib/*/ebin/*beam")), init:stop().' | erts*/bin/erl -boot start_clean >/dev/null \ + && cp releases/*/start_clean.boot bin \ + && echo 'beam_lib:strip_files(filelib:wildcard("lib/*/ebin/*beam")), init:stop().' | erl >/dev/null \ && mv erts*/bin/* bin \ && EJABBERD_VERSION=`(cd releases; ls -1 -d *.*.*)` \ - && rm -rf releases erts* bin/*src bin/dialyzer bin/typer \ - && rm bin/ejabberd bin/ejabberd.bat \ + && rm -rf releases erts* bin/*src bin/dialyzer bin/typer etc \ + && rm bin/ejabberd \ && mkdir lib/ejabberd-$EJABBERD_VERSION/priv/bin \ && cp /usr/lib/elixir/bin/* bin/ \ && sed -i 's|ERL_EXEC="erl"|ERL_EXEC="/home/ejabberd/bin/erl"|' bin/elixir \ diff --git a/ecs/bin/ejabberdctl b/ecs/bin/ejabberdctl index b209057..055ae8b 100755 --- a/ecs/bin/ejabberdctl +++ b/ecs/bin/ejabberdctl @@ -78,7 +78,7 @@ done } # define erl parameters -ERLANG_OPTS="+K $POLL -smp $SMP +P $ERL_PROCESSES $ERL_OPTIONS" +ERLANG_OPTS="-boot_var RELEASE_LIB ../lib +K $POLL -smp $SMP +P $ERL_PROCESSES $ERL_OPTIONS" if [ -n "$FIREWALL_WINDOW" ] ; then ERLANG_OPTS="$ERLANG_OPTS -kernel inet_dist_listen_min ${FIREWALL_WINDOW%-*} inet_dist_listen_max ${FIREWALL_WINDOW#*-}" fi diff --git a/ecs/vars.config b/ecs/vars.config index 4bb31fd..ef48efd 100644 --- a/ecs/vars.config +++ b/ecs/vars.config @@ -1,10 +1,16 @@ +{tools, false}. + {mysql, true}. {odbc, true}. +{mssql, false}. {pgsql, true}. {sqlite, true}. {redis, true}. +{pam, false}. {zlib, true}. {elixir, true}. -{iconv, true}. {stun, true}. {sip, true}. +{lua, true}. + +{release_dir, "${SCRIPT_DIR%/*}"}.