#!/usr/bin/env node /** * 跨平台服务重启工具 * 用法: node scripts/service-restart.js * 示例: node scripts/service-restart.js k3s:test:default:pod:park-server-xxx */ import { ServiceRouter } from '../dist/services/router.js'; import { ConfigManager } from '../dist/config/manager.js'; async function main() { const serviceId = process.argv[2]; if (!serviceId) { console.error('用法: node scripts/service-restart.js '); console.error(''); console.error('服务 ID 格式:'); console.error(' Docker: docker::'); console.error(' K3s: k3s::::'); console.error(' Systemd: systemd::'); console.error(''); console.error('提示: 使用 node scripts/service-find.js 查找服务 ID'); process.exit(1); } const configManager = new ConfigManager(); const router = new ServiceRouter(configManager); try { console.log(`🔄 重启服务: ${serviceId}`); console.log('───────────────────────────────────────────────────────────'); const result = await router.getManager(serviceId).restart(serviceId); if (result.success) { console.log(`✅ ${result.message || '重启成功'}`); } else { console.log(`❌ ${result.message || '重启失败'}`); process.exit(1); } } finally { await router.closeAll(); } } main().catch(console.error);