summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Watson <tim@rabbitmq.com>2012-05-22 15:50:26 +0100
committerTim Watson <tim@rabbitmq.com>2012-05-22 15:50:26 +0100
commitbebd9d2ae6da04c367e4b7aa976c2b4d4abbd471 (patch)
tree599d9b7c61ab8b690f08ae95617281967863bf3b
parent635d1a9456dc475116b5a5568fc4ab883d09dd8a (diff)
Support ct_run using short name
Not every system under test can be run with long names, and this makes rebar's common_test support useless in those environments, as it currently uses long names (test@hostname.domain) by default, without recourse to change them. This patch adds support for a {ct_use_short_names, boolean()} config variable, which allows the user to specify whether short or long names are required.
-rw-r--r--rebar.config.sample3
-rw-r--r--src/rebar_ct.erl14
2 files changed, 13 insertions, 4 deletions
diff --git a/rebar.config.sample b/rebar.config.sample
index dc4253b..0e846f9 100644
--- a/rebar.config.sample
+++ b/rebar.config.sample
@@ -85,6 +85,9 @@
%% Option to pass extra parameters when launching Common Test
{ct_extra_params, "-boot start_sasl -s myapp"}.
+%% Option to use short names (i.e., -sname test) when starting ct
+{ct_use_short_names, true}.
+
%% == Cleanup ==
%% Which files to cleanup
diff --git a/src/rebar_ct.erl b/src/rebar_ct.erl
index b3e77b0..b8060b2 100644
--- a/src/rebar_ct.erl
+++ b/src/rebar_ct.erl
@@ -145,14 +145,14 @@ make_cmd(TestDir, Config) ->
undefined ->
?FMT("erl " % should we expand ERL_PATH?
" -noshell -pa ~s ~s"
- " -name test@~s"
+ " ~s"
" -logdir \"~s\""
" -env TEST_DIR \"~s\""
" ~s"
" -s ct_run script_start -s erlang halt",
[CodePathString,
Include,
- net_adm:localhost(),
+ build_name(Config),
LogDir,
filename:join(Cwd, TestDir),
get_extra_params(Config)]) ++
@@ -164,14 +164,14 @@ make_cmd(TestDir, Config) ->
SpecFlags ->
?FMT("erl " % should we expand ERL_PATH?
" -noshell -pa ~s ~s"
- " -name test@~s"
+ " ~s"
" -logdir \"~s\""
" -env TEST_DIR \"~s\""
" ~s"
" -s ct_run script_start -s erlang halt",
[CodePathString,
Include,
- net_adm:localhost(),
+ build_name(Config),
LogDir,
filename:join(Cwd, TestDir),
get_extra_params(Config)]) ++
@@ -180,6 +180,12 @@ make_cmd(TestDir, Config) ->
RawLog = filename:join(LogDir, "raw.log"),
{Cmd, RawLog}.
+build_name(Config) ->
+ case rebar_config:get_local(Config, ct_use_short_names, false) of
+ true -> "-sname test";
+ false -> " -name test@" ++ net_adm:localhost()
+ end.
+
get_extra_params(Config) ->
rebar_config:get_local(Config, ct_extra_params, "").