/
githubmr
/
facebook-react-native
Обзор
Документация
Войти
/
githubmr
/
facebook-react-native
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
main
scripts/e2e/utils/retry.js
41 строка
981 B
Tim Yung
RN: Add `@noflow` to Node.js Scripts (#51779)
04 июн 2025, 22:03
04 июн 2025, 22:03
cc90748
Код
Авторство
О чём код?
/** * Copyright (c) Meta Platforms, Inc. and affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. * * @format * @noflow */ const {spawnSync} = require('child_process'); async function retry(command, options, maxRetries, delay, args) { for (let i = 1; i <= maxRetries; i++) { console.log(`Attempt ${i}: ${command}`); const result = spawnSync(command, args ? args : [], options); if (result.status === 0) { console.log(`Command succeeded on attempt ${i}`); return true; } console.warn(`Command failed on attempt ${i}`); if (i >= maxRetries) { console.log('Maximum retries reached. Exiting.'); return false; } if (delay > 0) { console.log(`Sleeping for ${delay} seconds...`); await new Promise(resolve => setTimeout(resolve, delay)); } console.log('Retrying...\n\n'); } } module.exports = { retry, };