mirror of
https://github.com/processone/ejabberd.git
synced 2024-12-20 17:27:00 +01:00
New "make dev" and "./ejabberdctl" (requires using rebar3)
This commit is contained in:
parent
21b021d912
commit
0fe2aea709
1
.gitignore
vendored
1
.gitignore
vendored
@ -17,6 +17,7 @@
|
|||||||
/ebin/
|
/ebin/
|
||||||
/ejabberd.init
|
/ejabberd.init
|
||||||
/ejabberd.service
|
/ejabberd.service
|
||||||
|
/ejabberdctl
|
||||||
/ejabberdctl.example
|
/ejabberdctl.example
|
||||||
/rel/ejabberd/
|
/rel/ejabberd/
|
||||||
/src/eldap_filter_yecc.erl
|
/src/eldap_filter_yecc.erl
|
||||||
|
@ -362,6 +362,11 @@ distclean: clean clean-rel
|
|||||||
rel:
|
rel:
|
||||||
$(REBAR) $(REBARREL)
|
$(REBAR) $(REBARREL)
|
||||||
|
|
||||||
|
DEV_CONFIG = _build/dev/rel/ejabberd/etc/ejabberd/ejabberd.yml
|
||||||
|
|
||||||
|
dev $(DEV_CONFIG):
|
||||||
|
REBAR_PROFILE=dev rebar3 release
|
||||||
|
|
||||||
TAGS:
|
TAGS:
|
||||||
etags *.erl
|
etags *.erl
|
||||||
|
|
||||||
|
10
rebar.config
10
rebar.config
@ -192,7 +192,17 @@
|
|||||||
{overlay, [{copy, "sql/*", "lib/ejabberd-\{\{release_version\}\}/priv/sql/"},
|
{overlay, [{copy, "sql/*", "lib/ejabberd-\{\{release_version\}\}/priv/sql/"},
|
||||||
{copy, "ejabberdctl.cfg.example", "etc/ejabberd/ejabberdctl.cfg"},
|
{copy, "ejabberdctl.cfg.example", "etc/ejabberd/ejabberdctl.cfg"},
|
||||||
{copy, "ejabberd.yml.example", "etc/ejabberd/ejabberd.yml"}]}]}]},
|
{copy, "ejabberd.yml.example", "etc/ejabberd/ejabberd.yml"}]}]}]},
|
||||||
|
{dev, [{post_hooks, [{release, "rel/setup-dev.sh"}]},
|
||||||
|
{relx, [{dev_mode, true},
|
||||||
|
{debug_info, keep},
|
||||||
|
{include_erts, true},
|
||||||
|
{include_src, false},
|
||||||
|
{overlay, [{copy, "ejabberdctl.cfg.example", "etc/ejabberd/ejabberdctl.cfg.example"},
|
||||||
|
{copy, "ejabberd.yml.example", "etc/ejabberd/ejabberd.yml.example"},
|
||||||
|
{copy, "test/ejabberd_SUITE_data/ca.pem", "etc/ejabberd/"},
|
||||||
|
{copy, "test/ejabberd_SUITE_data/cert.pem", "etc/ejabberd/"}]}]}]},
|
||||||
{test, [{erl_opts, [nowarn_export_all]}]}]}.
|
{test, [{erl_opts, [nowarn_export_all]}]}]}.
|
||||||
|
|
||||||
%% Local Variables:
|
%% Local Variables:
|
||||||
%% mode: erlang
|
%% mode: erlang
|
||||||
%% End:
|
%% End:
|
||||||
|
@ -341,10 +341,14 @@ end,
|
|||||||
|
|
||||||
ProcessRelx = fun(Relx, Deps) ->
|
ProcessRelx = fun(Relx, Deps) ->
|
||||||
{value, {release, NameVersion, DefaultApps}, RelxTail} = lists:keytake(release, 1, Relx),
|
{value, {release, NameVersion, DefaultApps}, RelxTail} = lists:keytake(release, 1, Relx),
|
||||||
|
ProfileApps = case os:getenv("REBAR_PROFILE") of
|
||||||
|
"dev" -> [observer, runtime_tools, wx, debugger];
|
||||||
|
_ -> []
|
||||||
|
end,
|
||||||
DepApps = lists:map(fun({DepName, _, _}) -> DepName;
|
DepApps = lists:map(fun({DepName, _, _}) -> DepName;
|
||||||
({DepName, _}) -> DepName
|
({DepName, _}) -> DepName
|
||||||
end, Deps),
|
end, Deps),
|
||||||
[{release, NameVersion, DefaultApps ++ DepApps} | RelxTail]
|
[{release, NameVersion, DefaultApps ++ ProfileApps ++ DepApps} | RelxTail]
|
||||||
end,
|
end,
|
||||||
|
|
||||||
GithubConfig = case {os:getenv("GITHUB_ACTIONS"), os:getenv("GITHUB_TOKEN")} of
|
GithubConfig = case {os:getenv("GITHUB_ACTIONS"), os:getenv("GITHUB_TOKEN")} of
|
||||||
|
31
rel/setup-dev.sh
Executable file
31
rel/setup-dev.sh
Executable file
@ -0,0 +1,31 @@
|
|||||||
|
echo -n "===> Preparing dev configuration files: "
|
||||||
|
|
||||||
|
PWD=`pwd`
|
||||||
|
REL_DIR=$PWD/_build/dev/rel/
|
||||||
|
CON_DIR=$REL_DIR/ejabberd/etc/ejabberd/
|
||||||
|
BIN_DIR=$REL_DIR/ejabberd/bin/
|
||||||
|
CTLPATH=$BIN_DIR/ejabberdctl
|
||||||
|
|
||||||
|
[ ! -f "ejabberdctl" ] \
|
||||||
|
&& echo -n "ejabberdctl " \
|
||||||
|
&& ln -s $CTLPATH ejabberdctl \
|
||||||
|
&& (cd $BIN_DIR && sed -i "s|^SCRIPT_DIR=.*|SCRIPT_DIR=`pwd`|g" ejabberdctl)
|
||||||
|
|
||||||
|
cd $CON_DIR
|
||||||
|
|
||||||
|
[ ! -f "ejabberd.yml" ] \
|
||||||
|
&& echo -n "ejabberd.yml " \
|
||||||
|
&& mv ejabberd.yml.example ejabberd.yml \
|
||||||
|
&& sed -i "s|# certfiles:|certfiles:\n - $CON_DIR/cert.pem|g" ejabberd.yml \
|
||||||
|
&& sed -i "s|certfiles:|ca_file: $CON_DIR/ca.pem\ncertfiles:|g" ejabberd.yml \
|
||||||
|
&& sed -i 's|^acl:$|acl:\n admin: [user: admin]|g' ejabberd.yml \
|
||||||
|
|| rm ejabberd.yml.example
|
||||||
|
|
||||||
|
[ ! -f "ejabberdctl.cfg" ] \
|
||||||
|
&& echo -n "ejabberdctl.cfg " \
|
||||||
|
&& mv ejabberdctl.cfg.example ejabberdctl.cfg \
|
||||||
|
&& sed -i "s|#' POLL|EJABBERD_BYPASS_WARNINGS=true\n\n#' POLL|g" ejabberdctl.cfg \
|
||||||
|
|| rm ejabberdctl.cfg.example
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
echo "===> Now you can start this ejabberd dev with: ./ejabberdctl live"
|
Loading…
Reference in New Issue
Block a user