| 
									
										
										
										
											2022-06-03 18:46:45 +08:00
										 |  |  | load("@rules_erlang//:xref2.bzl", "xref") | 
					
						
							| 
									
										
										
										
											2022-01-06 03:57:48 +08:00
										 |  |  | load("@rules_erlang//:dialyze.bzl", "dialyze", "plt") | 
					
						
							| 
									
										
										
										
											2021-07-12 23:54:55 +08:00
										 |  |  | load( | 
					
						
							|  |  |  |     "//:rabbitmq.bzl", | 
					
						
							|  |  |  |     "assert_suites", | 
					
						
							| 
									
										
										
										
											2022-05-17 20:07:16 +08:00
										 |  |  |     "rabbitmq_app", | 
					
						
							| 
									
										
										
										
											2021-07-12 23:54:55 +08:00
										 |  |  |     "rabbitmq_suite", | 
					
						
							|  |  |  | ) | 
					
						
							| 
									
										
										
										
											2021-03-29 17:01:43 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  | py_binary( | 
					
						
							|  |  |  |     name = "codegen", | 
					
						
							|  |  |  |     srcs = [ | 
					
						
							|  |  |  |         "codegen.py", | 
					
						
							|  |  |  |     ], | 
					
						
							|  |  |  |     imports = ["../../deps/rabbitmq_codegen"], | 
					
						
							|  |  |  |     deps = [ | 
					
						
							|  |  |  |         "//deps/rabbitmq_codegen:amqp_codegen", | 
					
						
							|  |  |  |     ], | 
					
						
							|  |  |  | ) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | genrule( | 
					
						
							|  |  |  |     name = "generated_headers", | 
					
						
							|  |  |  |     srcs = [ | 
					
						
							|  |  |  |         "//deps/rabbitmq_codegen:amqp-rabbitmq-0.9.1.json", | 
					
						
							|  |  |  |         "//deps/rabbitmq_codegen:credit_extension.json", | 
					
						
							|  |  |  |         "//deps/rabbitmq_codegen:amqp-rabbitmq-0.8.json", | 
					
						
							|  |  |  |     ], | 
					
						
							|  |  |  |     outs = ["include/rabbit_framing.hrl"], | 
					
						
							|  |  |  |     cmd = "$(location :codegen) --ignore-conflicts header $(SRCS) $@", | 
					
						
							|  |  |  |     tools = [":codegen"], | 
					
						
							|  |  |  | ) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | genrule( | 
					
						
							|  |  |  |     name = "rabbit_framing_amqp_0_9_1.erl", | 
					
						
							|  |  |  |     srcs = [ | 
					
						
							|  |  |  |         "//deps/rabbitmq_codegen:amqp-rabbitmq-0.9.1.json", | 
					
						
							|  |  |  |         "//deps/rabbitmq_codegen:credit_extension.json", | 
					
						
							|  |  |  |     ], | 
					
						
							|  |  |  |     outs = ["src/rabbit_framing_amqp_0_9_1.erl"], | 
					
						
							|  |  |  |     cmd = "$(location :codegen) body $(SRCS) $@", | 
					
						
							|  |  |  |     tools = [":codegen"], | 
					
						
							|  |  |  | ) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | genrule( | 
					
						
							|  |  |  |     name = "rabbit_framing_amqp_0_8.erl", | 
					
						
							|  |  |  |     srcs = [ | 
					
						
							|  |  |  |         "//deps/rabbitmq_codegen:amqp-rabbitmq-0.8.json", | 
					
						
							|  |  |  |     ], | 
					
						
							|  |  |  |     outs = ["src/rabbit_framing_amqp_0_8.erl"], | 
					
						
							|  |  |  |     cmd = "$(location :codegen) body $(SRCS) $@", | 
					
						
							|  |  |  |     tools = [":codegen"], | 
					
						
							|  |  |  | ) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | RUNTIME_DEPS = [ | 
					
						
							| 
									
										
										
										
											2022-07-25 23:11:56 +08:00
										 |  |  |     "@thoas//:erlang_app", | 
					
						
							| 
									
										
										
										
											2022-01-06 03:57:48 +08:00
										 |  |  |     "@recon//:erlang_app", | 
					
						
							|  |  |  |     "@credentials_obfuscation//:erlang_app", | 
					
						
							| 
									
										
										
										
											2021-03-29 17:01:43 +08:00
										 |  |  | ] | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | APP_NAME = "rabbit_common" | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-04-07 23:19:35 +08:00
										 |  |  | APP_EXTRA_KEYS = """
 | 
					
						
							|  |  |  | %% Hex.pm package informations. | 
					
						
							|  |  |  | 	{licenses, ["MPL-2.0"]}, | 
					
						
							|  |  |  | 	{links, [ | 
					
						
							|  |  |  | 	    {"Website", "https://www.rabbitmq.com/"}, | 
					
						
							|  |  |  | 	    {"GitHub", "https://github.com/rabbitmq/rabbitmq-common"} | 
					
						
							|  |  |  | 	  ]}, | 
					
						
							|  |  |  | 	{build_tools, ["make", "rebar3"]}, | 
					
						
							|  |  |  | 	{files, [ | 
					
						
							|  |  |  | 	    "erlang.mk", | 
					
						
							|  |  |  | 	    "git-revisions.txt", | 
					
						
							|  |  |  | 	    "include", | 
					
						
							|  |  |  | 	    "LICENSE*", | 
					
						
							|  |  |  | 	    "Makefile", | 
					
						
							|  |  |  | 	    "rabbitmq-components.mk", | 
					
						
							|  |  |  | 	    "README", | 
					
						
							|  |  |  | 	    "README.md", | 
					
						
							|  |  |  | 	    "mk" | 
					
						
							|  |  |  | 	  ]} | 
					
						
							|  |  |  | """
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-05-28 16:52:49 +08:00
										 |  |  | EXTRA_APPS = [ | 
					
						
							|  |  |  |     "compiler", | 
					
						
							|  |  |  |     "crypto", | 
					
						
							|  |  |  |     "public_key", | 
					
						
							|  |  |  |     "sasl", | 
					
						
							|  |  |  |     "ssl", | 
					
						
							|  |  |  |     "syntax_tools", | 
					
						
							|  |  |  |     "tools", | 
					
						
							|  |  |  |     "xmerl", | 
					
						
							|  |  |  | ] | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-05-17 20:07:16 +08:00
										 |  |  | rabbitmq_app( | 
					
						
							| 
									
										
										
										
											2021-03-29 17:01:43 +08:00
										 |  |  |     app_description = "Modules shared by rabbitmq-server and rabbitmq-erlang-client", | 
					
						
							| 
									
										
										
										
											2022-05-17 20:07:16 +08:00
										 |  |  |     app_extra_keys = APP_EXTRA_KEYS, | 
					
						
							| 
									
										
										
										
											2021-03-29 17:01:43 +08:00
										 |  |  |     app_name = APP_NAME, | 
					
						
							| 
									
										
										
										
											2021-05-28 16:52:49 +08:00
										 |  |  |     extra_apps = EXTRA_APPS, | 
					
						
							| 
									
										
										
										
											2022-05-17 20:07:16 +08:00
										 |  |  |     extra_hdrs = [ | 
					
						
							|  |  |  |         "include/rabbit_framing.hrl", | 
					
						
							| 
									
										
										
										
											2022-04-01 14:41:30 +08:00
										 |  |  |     ], | 
					
						
							| 
									
										
										
										
											2022-05-17 20:07:16 +08:00
										 |  |  |     extra_srcs = [ | 
					
						
							| 
									
										
										
										
											2021-03-29 17:01:43 +08:00
										 |  |  |         "src/rabbit_framing_amqp_0_8.erl", | 
					
						
							|  |  |  |         "src/rabbit_framing_amqp_0_9_1.erl", | 
					
						
							|  |  |  |     ], | 
					
						
							| 
									
										
										
										
											2022-05-17 20:07:16 +08:00
										 |  |  |     runtime_deps = RUNTIME_DEPS, | 
					
						
							| 
									
										
										
										
											2021-03-29 17:01:43 +08:00
										 |  |  | ) | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-09-10 20:21:57 +08:00
										 |  |  | xref( | 
					
						
							|  |  |  |     additional_libs = [ | 
					
						
							| 
									
										
										
										
											2022-01-06 03:57:48 +08:00
										 |  |  |         "@ranch//:erlang_app", | 
					
						
							| 
									
										
										
										
											2021-09-10 20:21:57 +08:00
										 |  |  |     ], | 
					
						
							|  |  |  | ) | 
					
						
							| 
									
										
										
										
											2021-05-21 18:02:50 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-05-28 16:52:49 +08:00
										 |  |  | plt( | 
					
						
							|  |  |  |     name = "base_plt", | 
					
						
							|  |  |  |     apps = [ | 
					
						
							|  |  |  |         "mnesia", | 
					
						
							|  |  |  |         "crypto", | 
					
						
							|  |  |  |         "ssl", | 
					
						
							|  |  |  |     ] + EXTRA_APPS, | 
					
						
							| 
									
										
										
										
											2021-05-28 19:27:21 +08:00
										 |  |  |     plt = "//:base_plt", | 
					
						
							| 
									
										
										
										
											2021-05-28 16:52:49 +08:00
										 |  |  | ) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | dialyze( | 
					
						
							|  |  |  |     plt = ":base_plt", | 
					
						
							|  |  |  | ) | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-07-12 23:54:55 +08:00
										 |  |  | suites = [ | 
					
						
							|  |  |  |     rabbitmq_suite( | 
					
						
							|  |  |  |         name = "rabbit_env_SUITE", | 
					
						
							|  |  |  |         size = "small", | 
					
						
							|  |  |  |         deps = [ | 
					
						
							| 
									
										
										
										
											2022-01-06 03:57:48 +08:00
										 |  |  |             "@proper//:erlang_app", | 
					
						
							| 
									
										
										
										
											2021-07-12 23:54:55 +08:00
										 |  |  |         ], | 
					
						
							|  |  |  |     ), | 
					
						
							|  |  |  |     rabbitmq_suite( | 
					
						
							|  |  |  |         name = "supervisor2_SUITE", | 
					
						
							|  |  |  |         size = "small", | 
					
						
							| 
									
										
										
										
											2022-08-29 05:37:34 +08:00
										 |  |  |         additional_srcs = [ | 
					
						
							|  |  |  |             "test/test_event_handler.erl", | 
					
						
							|  |  |  |         ], | 
					
						
							| 
									
										
										
										
											2021-07-12 23:54:55 +08:00
										 |  |  |     ), | 
					
						
							|  |  |  |     rabbitmq_suite( | 
					
						
							|  |  |  |         name = "unit_priority_queue_SUITE", | 
					
						
							|  |  |  |         size = "small", | 
					
						
							|  |  |  |     ), | 
					
						
							|  |  |  |     rabbitmq_suite( | 
					
						
							|  |  |  |         name = "unit_SUITE", | 
					
						
							|  |  |  |         size = "medium", | 
					
						
							|  |  |  |         additional_srcs = [ | 
					
						
							|  |  |  |             "test/gen_server2_test_server.erl", | 
					
						
							|  |  |  |         ], | 
					
						
							|  |  |  |         deps = [ | 
					
						
							| 
									
										
										
										
											2022-01-06 03:57:48 +08:00
										 |  |  |             "@credentials_obfuscation//:erlang_app", | 
					
						
							|  |  |  |             "@proper//:erlang_app", | 
					
						
							| 
									
										
										
										
											2021-07-12 23:54:55 +08:00
										 |  |  |         ], | 
					
						
							|  |  |  |     ), | 
					
						
							|  |  |  |     rabbitmq_suite( | 
					
						
							|  |  |  |         name = "worker_pool_SUITE", | 
					
						
							|  |  |  |         size = "small", | 
					
						
							|  |  |  |     ), | 
					
						
							|  |  |  | ] | 
					
						
							| 
									
										
										
										
											2021-03-29 17:01:43 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-07-12 23:54:55 +08:00
										 |  |  | assert_suites( | 
					
						
							|  |  |  |     suites, | 
					
						
							|  |  |  |     glob(["test/**/*_SUITE.erl"]), | 
					
						
							| 
									
										
										
										
											2021-03-29 17:01:43 +08:00
										 |  |  | ) |