Add rabbitmq_prometheus to bazel

This commit is contained in:
Philip Kuryloski 2021-05-05 11:43:03 +02:00
parent 29f0733c6b
commit d61aa69039
2 changed files with 139 additions and 0 deletions

111
deps/rabbitmq_prometheus/BUILD.bazel vendored Normal file
View File

@ -0,0 +1,111 @@
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",
"rabbitmq_lib",
)
APP_NAME = "rabbitmq_prometheus"
APP_MODULE = "rabbit_prometheus_app"
APP_ENV = """[
{return_per_object_metrics, false}
]"""
BUILD_DEPS = [
"//deps/amqp_client:bazel_erlang_lib",
"//deps/rabbit_common:bazel_erlang_lib",
]
DEPS = [
"@prometheus//:bazel_erlang_lib",
]
RUNTIME_DEPS = [
"//deps/rabbit:bazel_erlang_lib",
"//deps/rabbitmq_management_agent:bazel_erlang_lib",
"//deps/rabbitmq_web_dispatch:bazel_erlang_lib",
"@accept//:bazel_erlang_lib",
]
rabbitmq_lib(
app_module = APP_MODULE,
app_name = APP_NAME,
app_version = APP_VERSION,
erlc_opts = RABBITMQ_ERLC_OPTS,
test_erlc_opts = RABBITMQ_TEST_ERLC_OPTS,
build_deps = BUILD_DEPS,
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",
)
ct_suite(
name = "config_schema_SUITE",
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 = {
"RABBITMQ_CT_SKIP_AS_ERROR": "true",
"RABBITMQ_RUN": "$TEST_SRCDIR/$TEST_WORKSPACE/deps/rabbitmq_prometheus/rabbitmq-for-tests-run",
"RABBITMQCTL": "$TEST_SRCDIR/$TEST_WORKSPACE/deps/rabbitmq_prometheus/broker-for-tests-home/sbin/rabbitmqctl",
"RABBITMQ_PLUGINS": "$TEST_SRCDIR/$TEST_WORKSPACE/deps/rabbitmq_prometheus/broker-for-tests-home/sbin/rabbitmq-plugins",
},
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 = "rabbit_prometheus_http_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 = {
"RABBITMQ_CT_SKIP_AS_ERROR": "true",
"RABBITMQ_RUN": "$TEST_SRCDIR/$TEST_WORKSPACE/deps/rabbitmq_prometheus/rabbitmq-for-tests-run",
"RABBITMQCTL": "$TEST_SRCDIR/$TEST_WORKSPACE/deps/rabbitmq_prometheus/broker-for-tests-home/sbin/rabbitmqctl",
"RABBITMQ_PLUGINS": "$TEST_SRCDIR/$TEST_WORKSPACE/deps/rabbitmq_prometheus/broker-for-tests-home/sbin/rabbitmq-plugins",
},
tools = [
":rabbitmq-for-tests-run",
],
deps = [
"//deps/amqp_client:bazel_erlang_lib",
"//deps/rabbit_common:bazel_erlang_lib",
"@rabbitmq_ct_helpers//:bazel_erlang_lib",
],
runtime_deps = [
"//deps/rabbitmq_cli:elixir_as_bazel_erlang_lib",
"//deps/rabbitmq_cli:rabbitmqctl",
"@rabbitmq_ct_client_helpers//:bazel_erlang_lib",
],
)

View File

@ -6,6 +6,11 @@ load("@bazel-erlang//:hex_pm.bzl", "hex_pm_bazel_erlang_lib")
load("//:rabbitmq.bzl", "APP_VERSION")
def rabbitmq_external_deps(rabbitmq_workspace = "@rabbitmq-server"):
hex_pm_bazel_erlang_lib(
name = "accept",
version = "0.3.5",
)
github_bazel_erlang_lib(
name = "aten",
org = "rabbitmq",
@ -148,6 +153,21 @@ erlang_lib(
urls = ["https://github.com/rabbitmq/osiris/archive/master.zip"],
)
github_bazel_erlang_lib(
name = "prometheus",
org = "deadtrickster",
repo = "prometheus.erl",
first_srcs = [
"src/prometheus_collector.erl",
"src/prometheus_format.erl",
"src/prometheus_instrumenter.erl",
"src/prometheus_metric.erl",
],
deps = [
"@quantile_estimator//:bazel_erlang_lib",
],
)
github_bazel_erlang_lib(
name = "proper",
first_srcs = [
@ -157,6 +177,14 @@ erlang_lib(
org = "manopapad",
)
hex_pm_bazel_erlang_lib(
name = "quantile_estimator",
version = "0.2.1",
erlc_opts = [
"+debug_info",
],
)
github_bazel_erlang_lib(
name = "ra",
first_srcs = [