UNPKG

hayai-db

Version:

⚔ Instantly create and manage local databases with one command

33 lines (32 loc) • 1.35 kB
import { Command } from 'commander'; import chalk from 'chalk'; import ora from 'ora'; import { getDockerManager } from '../../core/docker.js'; export const stopCommand = new Command('stop') .description('Stop database instances') .argument('[name]', 'Database instance name (optional, stops all if not specified)') .option('-a, --all', 'Stop all database instances') .action(async (name) => { try { const dockerManager = getDockerManager(); await dockerManager.initialize(); if (name) { // Stop specific database const spinner = ora(`Stopping database '${name}'...`).start(); await dockerManager.stopDatabase(name); spinner.succeed(`Database '${name}' stopped successfully`); } else { // Stop all databases const spinner = ora('Stopping all databases...').start(); await dockerManager.stopAllDatabases(); spinner.succeed('All databases stopped successfully'); } console.log(chalk.green('\nāœ… Database(s) stopped!')); console.log(chalk.yellow('šŸ’” Run `hayai list` to see current status')); } catch (error) { console.error(chalk.red('\nāŒ Failed to stop database(s):'), error instanceof Error ? error.message : error); process.exit(1); } });