수정완료

This commit is contained in:
kjy
2025-12-28 22:35:32 +09:00
parent dd854cac08
commit 151d3a0908
11 changed files with 101 additions and 157 deletions

50
starter.ts Normal file
View File

@@ -0,0 +1,50 @@
import schedule from "node-schedule";
import { exec } from "node:child_process";
console.log("start ...");
async function runTsFile(filePath: string): Promise<void> {
console.log(`\n🚀 시작됨: ${filePath}`);
const proc = Bun.spawn(["bun", "run", filePath], {
stdout: "inherit", // 자식 프로세스의 출력을 부모 터미널에 실시간으로 보냄
stderr: "inherit", // 에러 출력도 실시간으로 보냄
});
// 프로세스가 종료될 때까지 await로 대기
const exitCode = await proc.exited;
if (exitCode !== 0) {
console.error(`❌ 실패: ${filePath} (종료 코드: ${exitCode})`);
// 실패 시 다음 스크립트를 실행하지 않고 중단하고 싶다면 throw
throw new Error(`${filePath} 실행 중 오류가 발생했습니다.`);
}
console.log(`✅ 완료: ${filePath}\n`);
}
// 11시에 실행 - fetch-articles -> fetch-detailAddress -> updateRanging -> sendTelegram
schedule.scheduleJob("0 11 * * *", async () => {
console.log("Running scheduled jobs at 11 AM");
try {
await runTsFile("./src/fetch-articles.ts");
await runTsFile("./src/fetch-detailAddress.ts");
await runTsFile("./src/updateRanging.ts");
await runTsFile("./src/sendTelegram.ts");
} catch (error) {
console.error("Error in 11 AM scheduled job:", error);
}
});
// 16시에 실행 - fetch-articles -> fetch-detailAddress -> updateRanging -> sendTelegram
schedule.scheduleJob("0 16 * * *", async () => {
console.log("Running scheduled jobs at 4 PM");
try {
await runTsFile("./src/fetch-articles.ts");
await runTsFile("./src/fetch-detailAddress.ts");
await runTsFile("./src/updateRanging.ts");
await runTsFile("./src/sendTelegram.ts");
} catch (error) {
console.error("Error in 4 PM scheduled job:", error);
}
});