const path = require("path");

// 이 설정 파일이 있는 위치(프로젝트 루트) 기준으로 모든 경로를 계산한다.
// → 프로젝트를 다른 경로로 옮겨도 그대로 동작.
const ROOT = __dirname;

module.exports = {
  apps: [
    {
      name: "defVideo",
      // 빌드 산출물 (npm run build 후 생성됨)
      script: path.join(ROOT, "server/dist/server/src/app.js"),
      cwd: ROOT,
      // nvm 으로 설치한 Node 20 을 명시 (PM2 데몬이 시스템 Node 12 를 쓰지 않도록)
      interpreter: "/home/hanmac/.nvm/versions/node/v20.20.2/bin/node",
      env: {
        PORT: 55173,
        VIDEOS_DIR: path.join(ROOT, "samplevideo"),
        HLS_DIR: path.join(ROOT, "storage/hls"),
        FRAMES_DIR: path.join(ROOT, "storage/frames"),
        THUMBNAILS_DIR: path.join(ROOT, "storage/thumbnails"),
        DB_PATH: path.join(ROOT, "storage/annotations.db"),
        // apt 로 설치하면 /usr/bin 에 생성됨
        FFMPEG_PATH: "/usr/bin/ffmpeg",
        FFPROBE_PATH: "/usr/bin/ffprobe",
        GEO_DATA_DIR: path.join(ROOT, "samplevideo"),
        CENTER_CSV_PATH: path.join(ROOT, "pythonsource/input/center.csv"),
      },
    },
  ],
};
