From 940e67573a339c4b8131fc2016ccbf7678cd3ebb Mon Sep 17 00:00:00 2001 From: D Corbacho Date: Tue, 2 Sep 2025 10:56:56 +0200 Subject: [PATCH] Local shovels: exclude tests in mixed-versions with 3.13.x (#14482) The test suites need to be excluded at group level, so the end_per_suite is always executed and the cluster stopped. Otherwise, clusters remain running in CI and the following suites find the TCP ports busy. (cherry picked from commit 7f1febe70b94aca8b736b49c2bc3296db2689455) --- .../test/local_dynamic_SUITE.erl | 24 ++++++++--------- .../test/local_dynamic_cluster_SUITE.erl | 19 +++++++------- .../test/local_static_SUITE.erl | 26 +++++++++---------- 3 files changed, 33 insertions(+), 36 deletions(-) diff --git a/deps/rabbitmq_shovel/test/local_dynamic_SUITE.erl b/deps/rabbitmq_shovel/test/local_dynamic_SUITE.erl index 98f0f4fdd778..2e0466d8050a 100644 --- a/deps/rabbitmq_shovel/test/local_dynamic_SUITE.erl +++ b/deps/rabbitmq_shovel/test/local_dynamic_SUITE.erl @@ -97,17 +97,10 @@ init_per_suite(Config0) -> "dest_queue_down" ]} ]), - Config2 = rabbit_ct_helpers:run_setup_steps(Config1, - rabbit_ct_broker_helpers:setup_steps() ++ - rabbit_ct_client_helpers:setup_steps()), - [Node] = rabbit_ct_broker_helpers:get_node_configs(Config2, nodename), - case rabbit_ct_broker_helpers:enable_feature_flag( - Config2, [Node], 'rabbitmq_4.0.0') of - ok -> - Config2; - _ -> - {skip, "This suite requires rabbitmq_4.0.0 feature flag"} - end. + rabbit_ct_helpers:run_setup_steps( + Config1, + rabbit_ct_broker_helpers:setup_steps() ++ + rabbit_ct_client_helpers:setup_steps()). end_per_suite(Config) -> application:stop(amqp10_client), @@ -116,7 +109,14 @@ end_per_suite(Config) -> rabbit_ct_broker_helpers:teardown_steps()). init_per_group(_, Config) -> - Config. + [Node] = rabbit_ct_broker_helpers:get_node_configs(Config, nodename), + case rabbit_ct_broker_helpers:enable_feature_flag( + Config, [Node], 'rabbitmq_4.0.0') of + ok -> + Config; + _ -> + {skip, "This suite requires rabbitmq_4.0.0 feature flag"} + end. end_per_group(_, Config) -> Config. diff --git a/deps/rabbitmq_shovel/test/local_dynamic_cluster_SUITE.erl b/deps/rabbitmq_shovel/test/local_dynamic_cluster_SUITE.erl index 9ef61c38960e..6d18a2986bfc 100644 --- a/deps/rabbitmq_shovel/test/local_dynamic_cluster_SUITE.erl +++ b/deps/rabbitmq_shovel/test/local_dynamic_cluster_SUITE.erl @@ -50,15 +50,9 @@ init_per_suite(Config0) -> "dest_queue_down" ]} ]), - Config2 = rabbit_ct_helpers:run_setup_steps(Config1, - rabbit_ct_broker_helpers:setup_steps() ++ - rabbit_ct_client_helpers:setup_steps()), - case rabbit_ct_broker_helpers:enable_feature_flag(Config2, 'rabbitmq_4.0.0') of - ok -> - Config2; - _ -> - {skip, "This suite requires rabbitmq_4.0.0 feature flag"} - end. + rabbit_ct_helpers:run_setup_steps(Config1, + rabbit_ct_broker_helpers:setup_steps() ++ + rabbit_ct_client_helpers:setup_steps()). end_per_suite(Config) -> application:stop(amqp10_client), @@ -67,7 +61,12 @@ end_per_suite(Config) -> rabbit_ct_broker_helpers:teardown_steps()). init_per_group(_, Config) -> - Config. + case rabbit_ct_broker_helpers:enable_feature_flag(Config, 'rabbitmq_4.0.0') of + ok -> + Config; + _ -> + {skip, "This suite requires rabbitmq_4.0.0 feature flag"} + end. end_per_group(_, Config) -> Config. diff --git a/deps/rabbitmq_shovel/test/local_static_SUITE.erl b/deps/rabbitmq_shovel/test/local_static_SUITE.erl index 6547fd82fa54..d83a50d73f6c 100644 --- a/deps/rabbitmq_shovel/test/local_static_SUITE.erl +++ b/deps/rabbitmq_shovel/test/local_static_SUITE.erl @@ -61,19 +61,10 @@ init_per_suite(Config) -> "dest_queue_down" ]} ]), - Config2 = rabbit_ct_helpers:run_setup_steps( - Config1, - rabbit_ct_broker_helpers:setup_steps() ++ - rabbit_ct_client_helpers:setup_steps() ++ - [fun stop_shovel_plugin/1]), - [Node] = rabbit_ct_broker_helpers:get_node_configs(Config2, nodename), - case rabbit_ct_broker_helpers:enable_feature_flag( - Config2, [Node], 'rabbitmq_4.0.0') of - ok -> - Config2; - _ -> - {skip, "This suite requires rabbitmq_4.0.0 feature flag"} - end. + rabbit_ct_helpers:run_setup_steps(Config1, + rabbit_ct_broker_helpers:setup_steps() ++ + rabbit_ct_client_helpers:setup_steps() ++ + [fun stop_shovel_plugin/1]). end_per_suite(Config) -> application:stop(amqp10_client), @@ -82,7 +73,14 @@ end_per_suite(Config) -> rabbit_ct_broker_helpers:teardown_steps()). init_per_group(_, Config) -> - Config. + [Node] = rabbit_ct_broker_helpers:get_node_configs(Config, nodename), + case rabbit_ct_broker_helpers:enable_feature_flag( + Config, [Node], 'rabbitmq_4.0.0') of + ok -> + Config; + _ -> + {skip, "This suite requires rabbitmq_4.0.0 feature flag"} + end. end_per_group(_, Config) -> Config.