UNPKG

curl-runner-core

Version:

Core library for running cURL scripts with comprehensive logging, error handling, and parallel execution capabilities. Zero external dependencies for maximum security.

63 lines (49 loc) • 1.83 kB
#!/usr/bin/env node /** * Simple example demonstrating curl-runner-core parallel execution * * This example shows how to use the library for basic parallel execution */ import { CurlRunner } from 'curl-runner-core'; async function simpleExample() { console.log('šŸš€ curl-runner-core Simple Example\n'); // Create runner instance const runner = new CurlRunner('./scripts', './logs'); try { // Check available scripts const scripts = await runner.scanScripts(); console.log(`šŸ“ Found ${scripts.length} scripts: ${scripts.join(', ')}\n`); if (scripts.length === 0) { console.log('āš ļø No scripts found. Please add some .sh files to ./scripts/'); return; } // Run scripts in parallel console.log('⚔ Running scripts in parallel...'); const startTime = Date.now(); const results = await runner.runAllScriptsParallel(); const duration = Date.now() - startTime; // Show results const successful = results.filter(r => r.success); const failed = results.filter(r => !r.success); console.log('\nšŸ“Š Results:'); console.log(`āœ… Successful: ${successful.length}`); console.log(`āŒ Failed: ${failed.length}`); console.log(`ā±ļø Duration: ${duration}ms`); if (successful.length > 0) { console.log('\nāœ… Successful scripts:'); successful.forEach(result => { console.log(` • ${result.scriptName}: ${result.duration}ms`); }); } if (failed.length > 0) { console.log('\nāŒ Failed scripts:'); failed.forEach(result => { console.log(` • ${result.scriptName}: ${result.error}`); }); } } catch (error) { console.error('āŒ Example failed:', error.message); } } // Run the example simpleExample().catch(console.error);