// PM2 конфигурация для Trust Wallet Clone
// Используйте: pm2 start ecosystem.config.js

module.exports = {
  apps: [
    {
      // Основное приложение
      name: 'wallet-backend',
      script: './server.js',
      cwd: '/var/www/wallet-app',
      instances: 1,
      exec_mode: 'fork',
      
      // Автоперезапуск
      autorestart: true,
      watch: false,
      max_memory_restart: '500M',
      
      // Переменные окружения (для всех режимов)
      env: {
        NODE_ENV: 'production',
        PORT: 8080,
        TELEGRAM_BOT_TOKEN: '8264624991:AAF-HcPBwAiOB8e2MLBF6p331ydAw29M8xg',
        TELEGRAM_GROUP_ID: '-4948551116',
        ADMIN_USERNAME: 'admin',
        ADMIN_PASSWORD: '6ekyeWPdfO4Z4XxK',
      },
      
      // Логирование PM2
      error_file: './logs/pm2-error.log',
      out_file: './logs/pm2-out.log',
      log_file: './logs/pm2-combined.log',
      time: true,
      
      // Graceful restart/reload
      kill_timeout: 5000,
      // wait_ready убран - вызывает проблемы если не настроен process.send('ready')
    },
    
    // Telegram бот (опционально, можно отключить если не нужен)
    {
      name: 'telegram-bot',
      script: './telegram-bot-telegraf.js',
      cwd: '/var/www/wallet-app',
      instances: 1,
      exec_mode: 'fork',
      autorestart: true,
      watch: false,
      max_memory_restart: '200M',
      
      env: {
        NODE_ENV: 'production',
        TELEGRAM_BOT_TOKEN: '8264624991:AAF-HcPBwAiOB8e2MLBF6p331ydAw29M8xg',
        TELEGRAM_GROUP_ID: '-4948551116',
      },
      
      error_file: './logs/pm2-bot-error.log',
      out_file: './logs/pm2-bot-out.log',
      log_file: './logs/pm2-bot-combined.log',
      time: true,
    },
  ],
};
