diff options
| author | Philip Kuryloski <kuryloskip@vmware.com> | 2021-04-14 12:44:16 +0200 |
|---|---|---|
| committer | Philip Kuryloski <kuryloskip@vmware.com> | 2021-04-14 12:44:16 +0200 |
| commit | e4aceb53a0b8f5420edea76189f8bb5b810ecb35 (patch) | |
| tree | 3de6a5cf1f0dbe74aaa0ad7fe3d4e5b63c67500b | |
| parent | 011a907805ad598d6932e0047077af6e66c6619d (diff) | |
| download | rabbitmq-server-git-e4aceb53a0b8f5420edea76189f8bb5b810ecb35.tar.gz | |
Add rabbitmq_stomp to bazel
| -rw-r--r-- | deps/rabbitmq_jms_topic_exchange/BUILD.bazel | 2 | ||||
| -rw-r--r-- | deps/rabbitmq_stomp/BUILD.bazel | 326 | ||||
| -rw-r--r-- | deps/rabbitmq_stomp/test/python_SUITE.erl | 13 |
3 files changed, 324 insertions, 17 deletions
diff --git a/deps/rabbitmq_jms_topic_exchange/BUILD.bazel b/deps/rabbitmq_jms_topic_exchange/BUILD.bazel index 1903091b19..f75b9ab612 100644 --- a/deps/rabbitmq_jms_topic_exchange/BUILD.bazel +++ b/deps/rabbitmq_jms_topic_exchange/BUILD.bazel @@ -1,8 +1,6 @@ load( "@bazel-erlang//:bazel_erlang_lib.bzl", - "DEFAULT_TEST_ERLC_OPTS", "erlang_lib", - "erlc", "test_erlang_lib", ) load("@bazel-erlang//:ct.bzl", "ct_suite") diff --git a/deps/rabbitmq_stomp/BUILD.bazel b/deps/rabbitmq_stomp/BUILD.bazel index 90832dd3e6..85a60cf2fa 100644 --- a/deps/rabbitmq_stomp/BUILD.bazel +++ b/deps/rabbitmq_stomp/BUILD.bazel @@ -1,4 +1,24 @@ -load("//:rabbitmq.bzl", "APP_VERSION", "RABBITMQ_ERLC_OPTS", "rabbitmq_lib") +load( + "@bazel-erlang//:bazel_erlang_lib.bzl", + "erlang_lib", + "erlc", + "test_erlang_lib", +) +load("@bazel-erlang//:ct.bzl", "ct_suite") +load("//:rabbitmq_home.bzl", "rabbitmq_home") +load("//:rabbitmq_run.bzl", "rabbitmq_run") +load( + "//:rabbitmq.bzl", + "APP_VERSION", + "RABBITMQ_ERLC_OPTS", + "RABBITMQ_TEST_ERLC_OPTS", +) + +APP_NAME = "rabbitmq_stomp" + +APP_DESCRIPTION = "RabbitMQ STOMP plugin" + +APP_MODULE = "rabbit_stomp" APP_ENV = """[ {default_user, @@ -22,21 +42,309 @@ APP_ENV = """[ {proxy_protocol, false} ]""" +BUILD_DEPS = [ + "//deps/rabbitmq_cli:rabbitmqctl", +] + DEPS = [ - "@ranch//:bazel_erlang_lib", + "//deps/amqp_client:bazel_erlang_lib", "//deps/rabbit_common:bazel_erlang_lib", + "@ranch//:bazel_erlang_lib", +] + +RUNTIME_DEPS = [ "//deps/rabbit:bazel_erlang_lib", - "//deps/amqp_client:bazel_erlang_lib", ] -rabbitmq_lib( - app_description = "RabbitMQ STOMP plugin", +erlang_lib( + app_description = APP_DESCRIPTION, + app_env = APP_ENV, + app_module = APP_MODULE, + app_name = APP_NAME, + app_version = APP_VERSION, + build_deps = BUILD_DEPS, + erlc_opts = RABBITMQ_ERLC_OPTS, + runtime_deps = RUNTIME_DEPS, + deps = DEPS, +) + +test_erlang_lib( + app_description = APP_DESCRIPTION, app_env = APP_ENV, - app_module = "rabbit_stomp", - app_name = "rabbitmq_stomp", + app_module = APP_MODULE, + app_name = APP_NAME, app_version = APP_VERSION, - build_deps = [ + build_deps = BUILD_DEPS, + erlc_opts = RABBITMQ_TEST_ERLC_OPTS, + runtime_deps = RUNTIME_DEPS, + deps = DEPS, +) + +rabbitmq_home( + name = "broker-for-tests-home", + plugins = [ + "//deps/rabbit:bazel_erlang_lib", + ":bazel_erlang_lib", + ], +) + +rabbitmq_run( + name = "rabbitmq-for-tests-run", + home = ":broker-for-tests-home", +) + +erlc( + name = "rabbit_stomp_client", + testonly = True, + srcs = [ + "test/src/rabbit_stomp_client.erl", + ], + hdrs = glob([ + "include/**/*.hrl", + "src/**/*.hrl", + ]), + deps = [ + ":test_bazel_erlang_lib", + ], +) + +ct_suite( + name = "command_SUITE", + size = "small", + additional_beam = [ + ":rabbit_stomp_client", + ], + data = [ + "@rabbitmq_ct_helpers//tools/tls-certs:Makefile", + "@rabbitmq_ct_helpers//tools/tls-certs:openssl.cnf.in", + ], + erlc_opts = RABBITMQ_TEST_ERLC_OPTS, + test_env = { + "SKIP_MAKE_TEST_DIST": "true", + "RABBITMQ_CT_SKIP_AS_ERROR": "true", + "RABBITMQ_RUN": "$TEST_SRCDIR/$TEST_WORKSPACE/deps/rabbitmq_stomp/rabbitmq-for-tests-run", + "RABBITMQCTL": "$TEST_SRCDIR/$TEST_WORKSPACE/deps/rabbitmq_stomp/broker-for-tests-home/sbin/rabbitmqctl", + "RABBITMQ_PLUGINS": "$TEST_SRCDIR/$TEST_WORKSPACE/deps/rabbitmq_stomp/broker-for-tests-home/sbin/rabbitmq-plugins", + "RABBITMQ_QUEUES": "$TEST_SRCDIR/$TEST_WORKSPACE/deps/rabbitmq_stomp/broker-for-tests-home/sbin/rabbitmq-queues", + }, + tools = [ + ":rabbitmq-for-tests-run", + ], + runtime_deps = [ + "//deps/rabbitmq_cli:elixir_as_bazel_erlang_lib", "//deps/rabbitmq_cli:rabbitmqctl", + "@rabbitmq_ct_helpers//:bazel_erlang_lib", + ], + deps = [ + "//deps/amqp_client:bazel_erlang_lib", + "//deps/rabbit_common:bazel_erlang_lib", + ], +) + +ct_suite( + name = "config_schema_SUITE", + size = "small", + data = [ + "@rabbitmq_ct_helpers//tools/tls-certs:Makefile", + "@rabbitmq_ct_helpers//tools/tls-certs:openssl.cnf.in", + ], + erlc_opts = RABBITMQ_TEST_ERLC_OPTS, + test_env = { + "SKIP_MAKE_TEST_DIST": "true", + "RABBITMQ_CT_SKIP_AS_ERROR": "true", + "RABBITMQ_RUN": "$TEST_SRCDIR/$TEST_WORKSPACE/deps/rabbitmq_stomp/rabbitmq-for-tests-run", + "RABBITMQCTL": "$TEST_SRCDIR/$TEST_WORKSPACE/deps/rabbitmq_stomp/broker-for-tests-home/sbin/rabbitmqctl", + "RABBITMQ_PLUGINS": "$TEST_SRCDIR/$TEST_WORKSPACE/deps/rabbitmq_stomp/broker-for-tests-home/sbin/rabbitmq-plugins", + "RABBITMQ_QUEUES": "$TEST_SRCDIR/$TEST_WORKSPACE/deps/rabbitmq_stomp/broker-for-tests-home/sbin/rabbitmq-queues", + }, + tools = [ + ":rabbitmq-for-tests-run", + ], + runtime_deps = [ + "//deps/rabbitmq_cli:elixir_as_bazel_erlang_lib", + "//deps/rabbitmq_cli:rabbitmqctl", + "@rabbitmq_ct_client_helpers//:bazel_erlang_lib", + "@rabbitmq_ct_helpers//:bazel_erlang_lib", + ], +) + +ct_suite( + name = "connections_SUITE", + additional_beam = [ + ":rabbit_stomp_client", + ], + data = [ + "@rabbitmq_ct_helpers//tools/tls-certs:Makefile", + "@rabbitmq_ct_helpers//tools/tls-certs:openssl.cnf.in", + ], + erlc_opts = RABBITMQ_TEST_ERLC_OPTS, + test_env = { + "SKIP_MAKE_TEST_DIST": "true", + "RABBITMQ_CT_SKIP_AS_ERROR": "true", + "RABBITMQ_RUN": "$TEST_SRCDIR/$TEST_WORKSPACE/deps/rabbitmq_stomp/rabbitmq-for-tests-run", + "RABBITMQCTL": "$TEST_SRCDIR/$TEST_WORKSPACE/deps/rabbitmq_stomp/broker-for-tests-home/sbin/rabbitmqctl", + "RABBITMQ_PLUGINS": "$TEST_SRCDIR/$TEST_WORKSPACE/deps/rabbitmq_stomp/broker-for-tests-home/sbin/rabbitmq-plugins", + "RABBITMQ_QUEUES": "$TEST_SRCDIR/$TEST_WORKSPACE/deps/rabbitmq_stomp/broker-for-tests-home/sbin/rabbitmq-queues", + }, + tools = [ + ":rabbitmq-for-tests-run", + ], + runtime_deps = [ + "//deps/rabbitmq_cli:elixir_as_bazel_erlang_lib", + "//deps/rabbitmq_cli:rabbitmqctl", + "@rabbitmq_ct_helpers//:bazel_erlang_lib", + ], + deps = [ + "//deps/amqp_client:bazel_erlang_lib", + "//deps/rabbit_common:bazel_erlang_lib", + ], +) + +ct_suite( + name = "frame_SUITE", + size = "small", + erlc_opts = RABBITMQ_TEST_ERLC_OPTS, + test_env = { + "RABBITMQ_CT_SKIP_AS_ERROR": "true", + }, + deps = [ + "//deps/amqp_client:bazel_erlang_lib", + "//deps/rabbit_common:bazel_erlang_lib", + ], +) + +ct_suite( + name = "proxy_protocol_SUITE", + size = "small", + data = [ + "@rabbitmq_ct_helpers//tools/tls-certs:Makefile", + "@rabbitmq_ct_helpers//tools/tls-certs:openssl.cnf.in", + ], + erlc_opts = RABBITMQ_TEST_ERLC_OPTS, + test_env = { + "SKIP_MAKE_TEST_DIST": "true", + "RABBITMQ_CT_SKIP_AS_ERROR": "true", + "RABBITMQ_RUN": "$TEST_SRCDIR/$TEST_WORKSPACE/deps/rabbitmq_stomp/rabbitmq-for-tests-run", + "RABBITMQCTL": "$TEST_SRCDIR/$TEST_WORKSPACE/deps/rabbitmq_stomp/broker-for-tests-home/sbin/rabbitmqctl", + "RABBITMQ_PLUGINS": "$TEST_SRCDIR/$TEST_WORKSPACE/deps/rabbitmq_stomp/broker-for-tests-home/sbin/rabbitmq-plugins", + "RABBITMQ_QUEUES": "$TEST_SRCDIR/$TEST_WORKSPACE/deps/rabbitmq_stomp/broker-for-tests-home/sbin/rabbitmq-queues", + }, + tools = [ + ":rabbitmq-for-tests-run", + ], + runtime_deps = [ + "//deps/rabbitmq_cli:elixir_as_bazel_erlang_lib", + "//deps/rabbitmq_cli:rabbitmqctl", + "@rabbitmq_ct_client_helpers//:bazel_erlang_lib", + "@rabbitmq_ct_helpers//:bazel_erlang_lib", + ], +) + +ct_suite( + name = "python_SUITE", + data = [ + "@rabbitmq_ct_helpers//tools/tls-certs:Makefile", + "@rabbitmq_ct_helpers//tools/tls-certs:openssl.cnf.in", + ], + erlc_opts = RABBITMQ_TEST_ERLC_OPTS, + groups = [ + "tls", + "implicit_connect", + "main", + ], + test_env = { + "SKIP_MAKE_TEST_DIST": "true", + "RABBITMQ_CT_SKIP_AS_ERROR": "true", + "RABBITMQ_RUN": "$TEST_SRCDIR/$TEST_WORKSPACE/deps/rabbitmq_stomp/rabbitmq-for-tests-run", + "RABBITMQCTL": "$TEST_SRCDIR/$TEST_WORKSPACE/deps/rabbitmq_stomp/broker-for-tests-home/sbin/rabbitmqctl", + "RABBITMQ_PLUGINS": "$TEST_SRCDIR/$TEST_WORKSPACE/deps/rabbitmq_stomp/broker-for-tests-home/sbin/rabbitmq-plugins", + "RABBITMQ_QUEUES": "$TEST_SRCDIR/$TEST_WORKSPACE/deps/rabbitmq_stomp/broker-for-tests-home/sbin/rabbitmq-queues", + }, + tools = [ + ":rabbitmq-for-tests-run", + ], + runtime_deps = [ + "//deps/rabbitmq_cli:elixir_as_bazel_erlang_lib", + "//deps/rabbitmq_cli:rabbitmqctl", + "@rabbitmq_ct_helpers//:bazel_erlang_lib", + ], +) + +ct_suite( + name = "system_SUITE", + size = "small", + additional_beam = [ + ":rabbit_stomp_client", + ], + data = [ + "@rabbitmq_ct_helpers//tools/tls-certs:Makefile", + "@rabbitmq_ct_helpers//tools/tls-certs:openssl.cnf.in", + ], + erlc_opts = RABBITMQ_TEST_ERLC_OPTS, + test_env = { + "SKIP_MAKE_TEST_DIST": "true", + "RABBITMQ_CT_SKIP_AS_ERROR": "true", + "RABBITMQ_RUN": "$TEST_SRCDIR/$TEST_WORKSPACE/deps/rabbitmq_stomp/rabbitmq-for-tests-run", + "RABBITMQCTL": "$TEST_SRCDIR/$TEST_WORKSPACE/deps/rabbitmq_stomp/broker-for-tests-home/sbin/rabbitmqctl", + "RABBITMQ_PLUGINS": "$TEST_SRCDIR/$TEST_WORKSPACE/deps/rabbitmq_stomp/broker-for-tests-home/sbin/rabbitmq-plugins", + "RABBITMQ_QUEUES": "$TEST_SRCDIR/$TEST_WORKSPACE/deps/rabbitmq_stomp/broker-for-tests-home/sbin/rabbitmq-queues", + }, + tools = [ + ":rabbitmq-for-tests-run", + ], + runtime_deps = [ + "//deps/rabbitmq_cli:elixir_as_bazel_erlang_lib", + "//deps/rabbitmq_cli:rabbitmqctl", + "@rabbitmq_ct_helpers//:bazel_erlang_lib", + ], + deps = [ + "//deps/amqp_client:bazel_erlang_lib", + "//deps/rabbit_common:bazel_erlang_lib", + ], +) + +ct_suite( + name = "topic_SUITE", + size = "small", + additional_beam = [ + ":rabbit_stomp_client", + ], + data = [ + "@rabbitmq_ct_helpers//tools/tls-certs:Makefile", + "@rabbitmq_ct_helpers//tools/tls-certs:openssl.cnf.in", + ], + erlc_opts = RABBITMQ_TEST_ERLC_OPTS, + test_env = { + "SKIP_MAKE_TEST_DIST": "true", + "RABBITMQ_CT_SKIP_AS_ERROR": "true", + "RABBITMQ_RUN": "$TEST_SRCDIR/$TEST_WORKSPACE/deps/rabbitmq_stomp/rabbitmq-for-tests-run", + "RABBITMQCTL": "$TEST_SRCDIR/$TEST_WORKSPACE/deps/rabbitmq_stomp/broker-for-tests-home/sbin/rabbitmqctl", + "RABBITMQ_PLUGINS": "$TEST_SRCDIR/$TEST_WORKSPACE/deps/rabbitmq_stomp/broker-for-tests-home/sbin/rabbitmq-plugins", + "RABBITMQ_QUEUES": "$TEST_SRCDIR/$TEST_WORKSPACE/deps/rabbitmq_stomp/broker-for-tests-home/sbin/rabbitmq-queues", + }, + tools = [ + ":rabbitmq-for-tests-run", + ], + runtime_deps = [ + "//deps/rabbitmq_cli:elixir_as_bazel_erlang_lib", + "//deps/rabbitmq_cli:rabbitmqctl", + "@rabbitmq_ct_helpers//:bazel_erlang_lib", + ], + deps = [ + "//deps/amqp_client:bazel_erlang_lib", + "//deps/rabbit_common:bazel_erlang_lib", + ], +) + +ct_suite( + name = "util_SUITE", + size = "small", + erlc_opts = RABBITMQ_TEST_ERLC_OPTS, + test_env = { + "RABBITMQ_CT_SKIP_AS_ERROR": "true", + }, + deps = [ + "//deps/amqp_client:bazel_erlang_lib", + "//deps/rabbit_common:bazel_erlang_lib", ], - deps = DEPS, ) diff --git a/deps/rabbitmq_stomp/test/python_SUITE.erl b/deps/rabbitmq_stomp/test/python_SUITE.erl index 8717173aa3..84ceefe1ec 100644 --- a/deps/rabbitmq_stomp/test/python_SUITE.erl +++ b/deps/rabbitmq_stomp/test/python_SUITE.erl @@ -75,12 +75,13 @@ run(Config, Test) -> StompPortTls = rabbit_ct_broker_helpers:get_node_config(Config, 0, tcp_port_stomp_tls), AmqpPort = rabbit_ct_broker_helpers:get_node_config(Config, 0, tcp_port_amqp), NodeName = rabbit_ct_broker_helpers:get_node_config(Config, 0, nodename), - PythonPath = os:getenv("PYTHONPATH"), - os:putenv("PYTHONPATH", filename:join([DataDir, "deps", "pika","pika"]) - ++":"++ - filename:join([DataDir, "deps", "stomppy", "stomppy"]) - ++ ":" ++ - PythonPath), + PikaPath = filename:join([DataDir, "deps", "pika","pika"]), + StomppyPath = filename:join([DataDir, "deps", "stomppy", "stomppy"]), + PythonPath = case os:getenv("PYTHONPATH") of + false -> PikaPath ++ ":" ++ StomppyPath; + P -> PikaPath ++ ":" ++ StomppyPath ++ ":" ++ P + end, + os:putenv("PYTHONPATH", PythonPath), os:putenv("AMQP_PORT", integer_to_list(AmqpPort)), os:putenv("STOMP_PORT", integer_to_list(StompPort)), os:putenv("STOMP_PORT_TLS", integer_to_list(StompPortTls)), |
