platform-tooling/scripts/orchestration/stop-all.ts
Quinn Ftw 85621b287e chore: snapshot before monorepo consolidation
Capture current working state before converting platform-tooling
into a submodule of the lilith-platform monorepo.
2026-01-29 07:04:39 -08:00

60 lines
1.9 KiB
JavaScript
Executable file

#!/usr/bin/env node
/**
* Stop all running services (Refactored to use @lilith/service-orchestrator)
*/
import { stopOurServices } from '@lilith/service-orchestrator';
import { Logger } from './logger.js';
const logger = new Logger('Stop');
async function main() {
logger.info('━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━');
logger.info(' Stopping All Platform Services ');
logger.info('━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━');
try {
logger.info('Stopping services tracked by orchestrator...');
const result = await stopOurServices();
if (result.stopped.length === 0 && result.failed.length === 0) {
logger.info('No services were tracked by orchestrator');
logger.info('(Services may be running but not started via ./run dev)');
return;
}
if (result.stopped.length > 0) {
logger.success(`Successfully stopped ${result.stopped.length} services`);
logger.debug('Stopped services:');
for (const serviceId of result.stopped) {
logger.debug(` - ${serviceId}`);
}
}
if (result.failed.length > 0) {
logger.warn(`Failed to stop ${result.failed.length} services`);
logger.error('Failed services:');
for (const serviceId of result.failed) {
logger.error(` - ${serviceId}`);
}
}
if (result.stopped.length > 0 && result.failed.length === 0) {
logger.success('\nAll services stopped successfully');
}
logger.info('\nTo start services again:');
logger.info(' ./run dev - Start domain-focused services (44 services)');
logger.info(' ./run dev:all - Start all services (79 services)');
} catch (error) {
logger.error('Failed to stop services', error as Error);
process.exit(1);
}
}
main().catch(error => {
logger.error('Fatal error', error);
process.exit(1);
});