@@ -941,6 +941,14 @@ TEST_WEB_83 := \
941941 test_web_zend_1_21
942942
943943FILTER := .
944+ MAX_RETRIES := 3
945+
946+ define run_composer_with_retry
947+ for i in $$(seq 1 $(MAX_RETRIES ) ) ; do \
948+ echo "Attempting composer update (attempt $$i of $(MAX_RETRIES ) )..."; \
949+ $(COMPOSER ) --working-dir=$1 update $2 && break || (echo "Retry $$i failed, waiting 5 seconds before next attempt..." && sleep 5); \
950+ done
951+ endef
944952
945953define run_tests_without_coverage
946954 $(TEST_EXTRA_ENV ) $(ENV_OVERRIDE ) php $(TEST_EXTRA_INI ) $(REQUEST_INIT_HOOK ) $(PHPUNIT ) $(1 ) --filter=$(FILTER )
@@ -1041,9 +1049,9 @@ test_metrics: global_test_run_dependencies
10411049 $(call run_tests,--testsuite=metrics $(TESTS ) )
10421050
10431051benchmarks_run_dependencies : global_test_run_dependencies
1044- $(COMPOSER ) --working-dir= tests/Frameworks/Symfony/Version_5_2 update
1052+ $(call run_composer_with_retry, tests/Frameworks/Symfony/Version_5_2,)
10451053 php tests/Frameworks/Symfony/Version_5_2/bin/console cache:clear --no-warmup --env=prod
1046- $(COMPOSER ) --working-dir= tests/Frameworks/Laravel/Version_8_x update
1054+ $(call run_composer_with_retry, tests/Frameworks/Laravel/Version_8_x,)
10471055 rm -f tests/.scenarios.lock/benchmarks/composer.lock
10481056 $(MAKE ) test_scenario_benchmarks
10491057
@@ -1154,96 +1162,96 @@ test_integrations_predis1: global_test_run_dependencies
11541162 $(MAKE ) test_scenario_predis1
11551163 $(call run_tests_debug,tests/Integrations/Predis)
11561164test_integrations_roadrunner : global_test_run_dependencies
1157- $(COMPOSER ) --working-dir= tests/Frameworks/Roadrunner/Version_2 update
1165+ $(call run_composer_with_retry, tests/Frameworks/Roadrunner/Version_2,)
11581166 $(call run_tests_debug,tests/Integrations/Roadrunner/V2)
11591167test_integrations_sqlsrv : global_test_run_dependencies
11601168 $(MAKE ) test_scenario_default
11611169 $(call run_tests_debug,tests/Integrations/SQLSRV)
11621170test_web_cakephp_28 : global_test_run_dependencies
1163- $(COMPOSER ) --working-dir= tests/Frameworks/CakePHP/Version_2_8 update
1171+ $(call run_composer_with_retry, tests/Frameworks/CakePHP/Version_2_8,)
11641172 $(call run_tests_debug,--testsuite=cakephp-28-test)
11651173test_web_codeigniter_22 : global_test_run_dependencies
11661174 $(call run_tests_debug,--testsuite=codeigniter-22-test)
11671175test_web_drupal_89 : global_test_run_dependencies
1168- $(COMPOSER ) --working-dir= tests/Frameworks/Drupal/Version_8_9/core update --ignore-platform-reqs
1169- $(COMPOSER ) --working-dir= tests/Frameworks/Drupal/Version_8_9 update --ignore-platform-reqs
1176+ $(call run_composer_with_retry, tests/Frameworks/Drupal/Version_8_9/core, --ignore-platform-reqs)
1177+ $(call run_composer_with_retry, tests/Frameworks/Drupal/Version_8_9, --ignore-platform-reqs)
11701178 $(call run_tests_debug,tests/Integrations/Drupal/V8_9)
11711179test_web_drupal_95 : global_test_run_dependencies
1172- $(COMPOSER ) --working-dir= tests/Frameworks/Drupal/Version_9_5/core update --ignore-platform-reqs
1173- $(COMPOSER ) --working-dir= tests/Frameworks/Drupal/Version_9_5 update --ignore-platform-reqs
1180+ $(call run_composer_with_retry, tests/Frameworks/Drupal/Version_9_5/core, --ignore-platform-reqs)
1181+ $(call run_composer_with_retry, tests/Frameworks/Drupal/Version_9_5, --ignore-platform-reqs)
11741182 $(call run_tests_debug,tests/Integrations/Drupal/V9_5)
11751183test_web_drupal_101 : global_test_run_dependencies
1176- $(COMPOSER ) --working-dir= tests/Frameworks/Drupal/Version_10_1/core update --ignore-platform-reqs
1177- $(COMPOSER ) --working-dir= tests/Frameworks/Drupal/Version_10_1 update --ignore-platform-reqs
1184+ $(call run_composer_with_retry, tests/Frameworks/Drupal/Version_10_1/core, --ignore-platform-reqs)
1185+ $(call run_composer_with_retry, tests/Frameworks/Drupal/Version_10_1, --ignore-platform-reqs)
11781186 $(call run_tests_debug,tests/Integrations/Drupal/V10_1)
11791187test_web_laminas_rest_19 : global_test_run_dependencies
1180- $(COMPOSER ) --working-dir= tests/Frameworks/Laminas/ApiTools/Version_1_9 update
1188+ $(call run_composer_with_retry, tests/Frameworks/Laminas/ApiTools/Version_1_9,)
11811189 $(call run_tests_debug,tests/Integrations/Laminas/ApiTools/V1_9)
11821190test_web_laminas_14 : global_test_run_dependencies
1183- $(COMPOSER ) --working-dir= tests/Frameworks/Laminas/Version_1_4 update
1191+ $(call run_composer_with_retry, tests/Frameworks/Laminas/Version_1_4,)
11841192 $(call run_tests_debug,tests/Integrations/Laminas/V1_4)
11851193test_web_laminas_20 : global_test_run_dependencies
1186- $(COMPOSER ) --working-dir= tests/Frameworks/Laminas/Version_2_0 update
1194+ $(call run_composer_with_retry, tests/Frameworks/Laminas/Version_2_0,)
11871195 $(call run_tests_debug,tests/Integrations/Laminas/V2_0)
11881196test_web_laravel_42 : global_test_run_dependencies
1189- $(COMPOSER ) --working-dir= tests/Frameworks/Laravel/Version_4_2 update
1197+ $(call run_composer_with_retry, tests/Frameworks/Laravel/Version_4_2,)
11901198 php tests/Frameworks/Laravel/Version_4_2/artisan optimize
11911199 $(call run_tests_debug,tests/Integrations/Laravel/V4)
11921200test_web_laravel_57 : global_test_run_dependencies
1193- $(COMPOSER ) --working-dir= tests/Frameworks/Laravel/Version_5_7 update
1201+ $(call run_composer_with_retry, tests/Frameworks/Laravel/Version_5_7,)
11941202 $(call run_tests_debug,tests/Integrations/Laravel/V5_7)
11951203test_web_laravel_58 : global_test_run_dependencies
1196- $(COMPOSER ) --working-dir= tests/Frameworks/Laravel/Version_5_8 update
1204+ $(call run_composer_with_retry, tests/Frameworks/Laravel/Version_5_8,)
11971205 $(call run_tests_debug,--testsuite=laravel-58-test)
11981206test_web_laravel_8x : global_test_run_dependencies
1199- $(COMPOSER ) --working-dir= tests/Frameworks/Laravel/Version_8_x update
1207+ $(call run_composer_with_retry, tests/Frameworks/Laravel/Version_8_x,)
12001208 $(call run_tests_debug,--testsuite=laravel-8x-test)
12011209test_web_laravel_9x : global_test_run_dependencies
1202- $(COMPOSER ) --working-dir= tests/Frameworks/Laravel/Version_9_x update
1210+ $(call run_composer_with_retry, tests/Frameworks/Laravel/Version_9_x,)
12031211 $(call run_tests_debug,--testsuite=laravel-9x-test)
12041212test_web_laravel_10x : global_test_run_dependencies
1205- $(COMPOSER ) --working-dir= tests/Frameworks/Laravel/Version_10_x update
1213+ $(call run_composer_with_retry, tests/Frameworks/Laravel/Version_10_x,)
12061214 $(call run_tests_debug,--testsuite=laravel-10x-test)
12071215test_web_lumen_52 : global_test_run_dependencies
1208- $(COMPOSER ) --working-dir= tests/Frameworks/Lumen/Version_5_2 update
1216+ $(call run_composer_with_retry, tests/Frameworks/Lumen/Version_5_2,)
12091217 $(call run_tests_debug,tests/Integrations/Lumen/V5_2)
12101218test_web_lumen_56 : global_test_run_dependencies
1211- $(COMPOSER ) --working-dir= tests/Frameworks/Lumen/Version_5_6 update
1219+ $(call run_composer_with_retry, tests/Frameworks/Lumen/Version_5_6,)
12121220 $(call run_tests_debug,tests/Integrations/Lumen/V5_6)
12131221test_web_lumen_58 : global_test_run_dependencies
1214- $(COMPOSER ) --working-dir= tests/Frameworks/Lumen/Version_5_8 update
1222+ $(call run_composer_with_retry, tests/Frameworks/Lumen/Version_5_8,)
12151223 $(call run_tests_debug,tests/Integrations/Lumen/V5_8)
12161224test_web_lumen_81 : global_test_run_dependencies
1217- $(COMPOSER ) --working-dir= tests/Frameworks/Lumen/Version_8_1 update
1225+ $(call run_composer_with_retry, tests/Frameworks/Lumen/Version_8_1,)
12181226 $(call run_tests_debug,tests/Integrations/Lumen/V8_1)
12191227test_web_lumen_90 : global_test_run_dependencies
1220- $(COMPOSER ) --working-dir= tests/Frameworks/Lumen/Version_9_0 update
1228+ $(call run_composer_with_retry, tests/Frameworks/Lumen/Version_9_0,)
12211229 $(call run_tests_debug,tests/Integrations/Lumen/V9_0)
12221230test_web_lumen_100 : global_test_run_dependencies
1223- $(COMPOSER ) --working-dir= tests/Frameworks/Lumen/Version_10_0 update
1231+ $(call run_composer_with_retry, tests/Frameworks/Lumen/Version_10_0,)
12241232 $(call run_tests_debug,tests/Integrations/Lumen/V10_0)
12251233test_web_slim_312 : global_test_run_dependencies
1226- $(COMPOSER ) --working-dir= tests/Frameworks/Slim/Version_3_12 update
1234+ $(call run_composer_with_retry, tests/Frameworks/Slim/Version_3_12,)
12271235 $(call run_tests_debug,--testsuite=slim-312-test)
12281236test_web_slim_4 : global_test_run_dependencies
1229- $(COMPOSER ) --working-dir= tests/Frameworks/Slim/Version_4 update
1237+ $(call run_composer_with_retry, tests/Frameworks/Slim/Version_4,)
12301238 $(call run_tests_debug,--testsuite=slim-4-test)
12311239test_web_symfony_23 : global_test_run_dependencies
1232- $(COMPOSER ) --working-dir= tests/Frameworks/Symfony/Version_2_3 update
1240+ $(call run_composer_with_retry, tests/Frameworks/Symfony/Version_2_3,)
12331241 $(call run_tests_debug,tests/Integrations/Symfony/V2_3)
12341242test_web_symfony_28 : global_test_run_dependencies
1235- $(COMPOSER ) --working-dir= tests/Frameworks/Symfony/Version_2_8 update
1243+ $(call run_composer_with_retry, tests/Frameworks/Symfony/Version_2_8,)
12361244 $(call run_tests_debug,tests/Integrations/Symfony/V2_8)
12371245test_web_symfony_30 : global_test_run_dependencies
1238- $(COMPOSER ) --working-dir= tests/Frameworks/Symfony/Version_3_0 update
1246+ $(call run_composer_with_retry, tests/Frameworks/Symfony/Version_3_0,)
12391247 php tests/Frameworks/Symfony/Version_3_0/bin/console cache:clear --no-warmup --env=prod
12401248 $(call run_tests_debug,tests/Integrations/Symfony/V3_0)
12411249test_web_symfony_33 : global_test_run_dependencies
1242- $(COMPOSER ) --working-dir= tests/Frameworks/Symfony/Version_3_3 update
1250+ $(call run_composer_with_retry, tests/Frameworks/Symfony/Version_3_3,)
12431251 php tests/Frameworks/Symfony/Version_3_3/bin/console cache:clear --no-warmup --env=prod
12441252 $(call run_tests_debug,tests/Integrations/Symfony/V3_3)
12451253test_web_symfony_34 : global_test_run_dependencies
1246- $(COMPOSER ) --working-dir= tests/Frameworks/Symfony/Version_3_4 update
1254+ $(call run_composer_with_retry, tests/Frameworks/Symfony/Version_3_4,)
12471255 php tests/Frameworks/Symfony/Version_3_4/bin/console cache:clear --no-warmup --env=prod
12481256 $(call run_tests_debug,tests/Integrations/Symfony/V3_4)
12491257test_web_symfony_40 : global_test_run_dependencies
@@ -1253,34 +1261,33 @@ test_web_symfony_40: global_test_run_dependencies
12531261 php tests/Frameworks/Symfony/Version_4_0/bin/console cache:clear --no-warmup --env=prod
12541262 $(call run_tests_debug,tests/Integrations/Symfony/V4_0)
12551263test_web_symfony_42 : global_test_run_dependencies
1256- $(COMPOSER ) --working-dir= tests/Frameworks/Symfony/Version_4_2 update
1264+ $(call run_composer_with_retry, tests/Frameworks/Symfony/Version_4_2,)
12571265 php tests/Frameworks/Symfony/Version_4_2/bin/console cache:clear --no-warmup --env=prod
12581266 $(call run_tests_debug,tests/Integrations/Symfony/V4_2)
12591267test_web_symfony_44 : global_test_run_dependencies
1260- $(COMPOSER ) --working-dir= tests/Frameworks/Symfony/Version_4_4 update
1268+ $(call run_composer_with_retry, tests/Frameworks/Symfony/Version_4_4,)
12611269 php tests/Frameworks/Symfony/Version_4_4/bin/console cache:clear --no-warmup --env=prod
12621270 $(call run_tests_debug,--testsuite=symfony-44-test)
12631271test_web_symfony_50 : global_test_run_dependencies
12641272 $(COMPOSER ) --working-dir=tests/Frameworks/Symfony/Version_5_0 install # EOL; install from lock
12651273 php tests/Frameworks/Symfony/Version_5_0/bin/console cache:clear --no-warmup --env=prod
12661274 $(call run_tests_debug,tests/Integrations/Symfony/V5_0)
12671275test_web_symfony_51 : global_test_run_dependencies
1268- $(COMPOSER ) --working-dir= tests/Frameworks/Symfony/Version_5_1 update
1276+ $(call run_composer_with_retry, tests/Frameworks/Symfony/Version_5_1,)
12691277 php tests/Frameworks/Symfony/Version_5_1/bin/console cache:clear --no-warmup --env=prod
12701278 $(call run_tests_debug,tests/Integrations/Symfony/V5_1)
12711279test_web_symfony_52 : global_test_run_dependencies
1272- $(COMPOSER ) --working-dir= tests/Frameworks/Symfony/Version_5_2 update
1280+ $(call run_composer_with_retry, tests/Frameworks/Symfony/Version_5_2,)
12731281 php tests/Frameworks/Symfony/Version_5_2/bin/console cache:clear --no-warmup --env=prod
12741282 $(call run_tests_debug,--testsuite=symfony-52-test)
12751283test_web_symfony_62 : global_test_run_dependencies
1276- $(COMPOSER ) --working-dir= tests/Frameworks/Symfony/Version_6_2 update
1284+ $(call run_composer_with_retry, tests/Frameworks/Symfony/Version_6_2,)
12771285 php tests/Frameworks/Symfony/Version_6_2/bin/console cache:clear --no-warmup --env=prod
12781286 $(call run_tests_debug,--testsuite=symfony-62-test)
12791287test_web_symfony_70 : global_test_run_dependencies
1280- $(COMPOSER ) --working-dir= tests/Frameworks/Symfony/Version_7_0 update
1288+ $(call run_composer_with_retry, tests/Frameworks/Symfony/Version_7_0,)
12811289 php tests/Frameworks/Symfony/Version_7_0/bin/console cache:clear --no-warmup --env=prod
12821290 $(call run_tests_debug,--testsuite=symfony-70-test)
1283-
12841291test_web_wordpress_48 : global_test_run_dependencies
12851292 $(call run_tests_debug,tests/Integrations/WordPress/V4_8)
12861293test_web_wordpress_55 : global_test_run_dependencies
@@ -1290,26 +1297,26 @@ test_web_wordpress_59: global_test_run_dependencies
12901297test_web_wordpress_61 : global_test_run_dependencies
12911298 $(call run_tests_debug,tests/Integrations/WordPress/V6_1)
12921299test_web_yii_2 : global_test_run_dependencies
1293- $(COMPOSER ) --working-dir= tests/Frameworks/Yii/Version_2_0 update
1300+ $(call run_composer_with_retry, tests/Frameworks/Yii/Version_2_0,)
12941301 $(call run_tests_debug,tests/Integrations/Yii/V2_0)
12951302test_web_magento_23 : global_test_run_dependencies
1296- $(COMPOSER ) --working-dir= tests/Frameworks/Magento/Version_2_3 update
1303+ $(call run_composer_with_retry, tests/Frameworks/Magento/Version_2_3,)
12971304 $(call run_tests_debug,tests/Integrations/Magento/V2_3)
12981305test_web_magento_24 : global_test_run_dependencies
1299- $(COMPOSER ) --working-dir= tests/Frameworks/Magento/Version_2_4 update
1306+ $(call run_composer_with_retry, tests/Frameworks/Magento/Version_2_4,)
13001307 $(call run_tests_debug,tests/Integrations/Magento/V2_4)
13011308test_web_nette_24 : global_test_run_dependencies
1302- $(COMPOSER ) --working-dir= tests/Frameworks/Nette/Version_2_4 update
1309+ $(call run_composer_with_retry, tests/Frameworks/Nette/Version_2_4,)
13031310 $(call run_tests_debug,tests/Integrations/Nette/V2_4)
13041311test_web_nette_30 : global_test_run_dependencies
1305- $(COMPOSER ) --working-dir= tests/Frameworks/Nette/Version_3_0 update
1312+ $(call run_composer_with_retry, tests/Frameworks/Nette/Version_3_0,)
13061313 $(call run_tests_debug,tests/Integrations/Nette/V3_0)
13071314test_web_zend_1 : global_test_run_dependencies
13081315 $(call run_tests_debug,tests/Integrations/ZendFramework/V1)
13091316test_web_zend_1_21 : global_test_run_dependencies
13101317 $(call run_tests_debug,tests/Integrations/ZendFramework/V1_21)
13111318test_web_custom : global_test_run_dependencies
1312- $(COMPOSER ) --working-dir= tests/Frameworks/Custom/Version_Autoloaded update
1319+ $(call run_composer_with_retry, tests/Frameworks/Custom/Version_Autoloaded,)
13131320 $(call run_tests_debug,--testsuite=custom-framework-autoloading-test)
13141321
13151322test_scenario_% :
0 commit comments