summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPhilip Kuryloski <kuryloskip@vmware.com>2021-11-18 12:24:03 -0800
committerGitHub <noreply@github.com>2021-11-18 12:24:03 -0800
commit870cf780a41137a338beed7f6c27957bf89b51c0 (patch)
treefdb7fac13b0d1ce3458e22a7c9eeaa7c9075e3bc
parent9f39d56a32ab03168a17e146987b6df6cd5149c0 (diff)
parent3684d0942d8b345f413e64b36af124d3349bd1bc (diff)
downloadrabbitmq-server-git-870cf780a41137a338beed7f6c27957bf89b51c0.tar.gz
Merge pull request #3764 from rabbitmq/use-bazel-erlang-1-4-0
Use bazel-erlang 1.4.0
-rw-r--r--BAZEL.md2
-rw-r--r--WORKSPACE.bazel6
-rw-r--r--deps/rabbitmq_cli/rabbitmqctl.bzl2
-rw-r--r--deps/rabbitmq_ct_helpers/BUILD.bazel4
-rw-r--r--deps/rabbitmq_ct_helpers/src/rabbit_ct_helpers.erl4
-rw-r--r--deps/rabbitmq_ct_helpers/tools/tls-certs/BUILD.bazel4
-rw-r--r--deps/rabbitmq_stomp/BUILD.bazel1
-rw-r--r--deps/rabbitmq_web_dispatch/BUILD.bazel6
-rw-r--r--deps/rabbitmq_web_dispatch/test/rabbit_web_dispatch_SUITE.erl5
-rw-r--r--deps/rabbitmq_web_mqtt/BUILD.bazel1
-rw-r--r--rabbitmq.bzl10
11 files changed, 20 insertions, 25 deletions
diff --git a/BAZEL.md b/BAZEL.md
index bc87e73314..c635e59e3f 100644
--- a/BAZEL.md
+++ b/BAZEL.md
@@ -51,7 +51,7 @@ for certain `rabbitmq_cli` tests to pass. This is because `rabbitmqctl wait` she
### Running tests
-Many rabbit tests spawn single or clustered rabbit nodes, and therefore it's best to run test suites sequentially on a single machine. Hence the `--test_strategy=exclusive` flag used in `.bazelrc` above. Naturally that restriction does not hold if utilizing remote execution (as is the case for RabbitMQ's CI pipelines).
+Many rabbit tests spawn single or clustered rabbit nodes, and therefore it's best to run test suites sequentially on a single machine. Hence the `build --local_test_jobs=1` flag used in `.bazelrc`. Additionally, it may be reasonable to disable test sharding and stream test output when running tests locally with `--test_output=streamed` as an additional argument (to just disable sharding, but not stream output, use `--test_sharding_strategy=disabled`). Naturally that restriction does not hold if utilizing remote execution (as is the case for RabbitMQ's CI pipelines).
Erlang Common Test logs will not be placed in the logs directory when run with bazel. They can be found under `bazel-testlogs`. For instance, those of the rabbit application's backing_queue suite will be under `bazel-testlogs/deps/rabbit/backing_queue_SUITE/test.outputs/`.
diff --git a/WORKSPACE.bazel b/WORKSPACE.bazel
index cd9e4a2bec..eee0a587e9 100644
--- a/WORKSPACE.bazel
+++ b/WORKSPACE.bazel
@@ -46,9 +46,9 @@ rules_pkg_dependencies()
http_archive(
name = "bazel-erlang",
- sha256 = "03b75fae7e3d3e80644ba1b0f1bf43b9da3c7c36435ea7baba0d0f87b3c05482",
- strip_prefix = "bazel-erlang-1.2.0",
- urls = ["https://github.com/rabbitmq/bazel-erlang/archive/refs/tags/1.2.0.zip"],
+ sha256 = "f37c339711ce05b748688938ad9b1c00a78f0b2ef67d6baa734f5a34e33ad8a3",
+ strip_prefix = "bazel-erlang-1.4.0",
+ urls = ["https://github.com/rabbitmq/bazel-erlang/archive/refs/tags/1.4.0.zip"],
)
load("@bazel-erlang//:bazel_erlang.bzl", "bazel_erlang_deps")
diff --git a/deps/rabbitmq_cli/rabbitmqctl.bzl b/deps/rabbitmq_cli/rabbitmqctl.bzl
index 5c393926b6..f28c1fa692 100644
--- a/deps/rabbitmq_cli/rabbitmqctl.bzl
+++ b/deps/rabbitmq_cli/rabbitmqctl.bzl
@@ -131,7 +131,7 @@ def _impl(ctx):
deps = flat_deps(ctx.attr.deps)
runfiles = ctx.runfiles([ebin])
- for dep in ctx.attr.deps:
+ for dep in deps:
runfiles = runfiles.merge(dep[DefaultInfo].default_runfiles)
return [
diff --git a/deps/rabbitmq_ct_helpers/BUILD.bazel b/deps/rabbitmq_ct_helpers/BUILD.bazel
index bd5d16299e..bdb45b0fa7 100644
--- a/deps/rabbitmq_ct_helpers/BUILD.bazel
+++ b/deps/rabbitmq_ct_helpers/BUILD.bazel
@@ -7,4 +7,8 @@ erlang_lib(
"@proper//:bazel_erlang_lib",
"//deps/rabbit_common:bazel_erlang_lib",
],
+ extra_priv = [
+ "tools/tls-certs/Makefile",
+ "tools/tls-certs/openssl.cnf.in",
+ ],
)
diff --git a/deps/rabbitmq_ct_helpers/src/rabbit_ct_helpers.erl b/deps/rabbitmq_ct_helpers/src/rabbit_ct_helpers.erl
index 717637b85a..12e7a158c8 100644
--- a/deps/rabbitmq_ct_helpers/src/rabbit_ct_helpers.erl
+++ b/deps/rabbitmq_ct_helpers/src/rabbit_ct_helpers.erl
@@ -482,7 +482,9 @@ load_rabbitmqctl_app(Config) ->
Config;
{error, {already_loaded, rabbitmqctl}} ->
Config;
- {error, _} ->
+ {error, Reason} ->
+ ct:pal(?LOW_IMPORTANCE,
+ "Failed to load rabbitmqctl application: ~p", [Reason]),
{skip, "Application rabbitmqctl could not be loaded, " ++
"please place compiled rabbitmq_cli on the code path"}
end.
diff --git a/deps/rabbitmq_ct_helpers/tools/tls-certs/BUILD.bazel b/deps/rabbitmq_ct_helpers/tools/tls-certs/BUILD.bazel
deleted file mode 100644
index 0495ada921..0000000000
--- a/deps/rabbitmq_ct_helpers/tools/tls-certs/BUILD.bazel
+++ /dev/null
@@ -1,4 +0,0 @@
-exports_files([
- "Makefile",
- "openssl.cnf.in",
-])
diff --git a/deps/rabbitmq_stomp/BUILD.bazel b/deps/rabbitmq_stomp/BUILD.bazel
index c27271ef83..c4a1079ca5 100644
--- a/deps/rabbitmq_stomp/BUILD.bazel
+++ b/deps/rabbitmq_stomp/BUILD.bazel
@@ -87,6 +87,7 @@ erlc(
"src/**/*.hrl",
]),
erlc_opts = RABBITMQ_TEST_ERLC_OPTS,
+ dest = "test",
deps = [
":test_bazel_erlang_lib",
],
diff --git a/deps/rabbitmq_web_dispatch/BUILD.bazel b/deps/rabbitmq_web_dispatch/BUILD.bazel
index 56e41882cd..4e16ad0d71 100644
--- a/deps/rabbitmq_web_dispatch/BUILD.bazel
+++ b/deps/rabbitmq_web_dispatch/BUILD.bazel
@@ -43,9 +43,6 @@ test_erlang_lib(
app_name = APP_NAME,
app_version = APP_VERSION,
extra_apps = EXTRA_APPS,
- extra_priv = [
- "test/priv/www/index.html",
- ],
deps = DEPS,
)
@@ -84,6 +81,9 @@ suites = [
rabbitmq_integration_suite(
PACKAGE,
name = "rabbit_web_dispatch_SUITE",
+ data = [
+ "test/priv/www/index.html",
+ ],
),
rabbitmq_suite(
name = "rabbit_web_dispatch_unit_SUITE",
diff --git a/deps/rabbitmq_web_dispatch/test/rabbit_web_dispatch_SUITE.erl b/deps/rabbitmq_web_dispatch/test/rabbit_web_dispatch_SUITE.erl
index 17d50f81db..115c0cfbac 100644
--- a/deps/rabbitmq_web_dispatch/test/rabbit_web_dispatch_SUITE.erl
+++ b/deps/rabbitmq_web_dispatch/test/rabbit_web_dispatch_SUITE.erl
@@ -71,12 +71,9 @@ query_static_resource_test1(Host, Port) ->
rabbit_web_dispatch:register_static_context(test, [{port, Port}],
"rabbit_web_dispatch_test",
?MODULE, "test/priv/www", "Test"),
- inets:start(),
{ok, {_Status, _Headers, Body}} =
httpc:request(format("http://~s:~w/rabbit_web_dispatch_test/index.html", [Host, Port])),
- ?assert(string:str(Body, "RabbitMQ HTTP Server Test Page") /= 0),
-
- passed.
+ ?assertMatch(I when I > 0, string:str(Body, "RabbitMQ HTTP Server Test Page")).
add_idempotence_test(Config) ->
Port = rabbit_ct_broker_helpers:get_node_config(Config, 0, tcp_port_http_extra),
diff --git a/deps/rabbitmq_web_mqtt/BUILD.bazel b/deps/rabbitmq_web_mqtt/BUILD.bazel
index b0635a7351..a2322a10c0 100644
--- a/deps/rabbitmq_web_mqtt/BUILD.bazel
+++ b/deps/rabbitmq_web_mqtt/BUILD.bazel
@@ -67,6 +67,7 @@ erlc(
name = "test_utils",
srcs = glob(["test/src/*.erl"]),
hdrs = glob(["test/src/*.hrl"]),
+ dest = "test",
erlc_opts = RABBITMQ_TEST_ERLC_OPTS,
)
diff --git a/rabbitmq.bzl b/rabbitmq.bzl
index 456e88c29e..cdee47393c 100644
--- a/rabbitmq.bzl
+++ b/rabbitmq.bzl
@@ -129,10 +129,7 @@ def rabbitmq_integration_suite(
erlc_opts = RABBITMQ_TEST_ERLC_OPTS + erlc_opts,
additional_hdrs = additional_hdrs,
additional_srcs = additional_srcs,
- data = [
- "//deps/rabbitmq_ct_helpers/tools/tls-certs:Makefile",
- "//deps/rabbitmq_ct_helpers/tools/tls-certs:openssl.cnf.in",
- ] + data,
+ data = data,
test_env = dict({
"SKIP_MAKE_TEST_DIST": "true",
"RABBITMQ_CT_SKIP_AS_ERROR": "true",
@@ -161,10 +158,7 @@ def rabbitmq_integration_suite(
name = name + "-mixed",
suite_name = name,
tags = tags + ["mixed-version-cluster"],
- data = [
- "//deps/rabbitmq_ct_helpers/tools/tls-certs:Makefile",
- "//deps/rabbitmq_ct_helpers/tools/tls-certs:openssl.cnf.in",
- ] + data,
+ data = data,
test_env = dict({
"SKIP_MAKE_TEST_DIST": "true",
"RABBITMQ_FEATURE_FLAGS": "",