Files
Sheep-Service/cron/tasks/backup.js
Rozenrod 04f39da611 Змінено директорії
Додано скрипти CRON
Поліпшено механізм запису стендів та їх редагування
2025-10-27 00:11:18 +02:00

33 lines
986 B
JavaScript

const fs = require("fs");
const path = require("path");
const TelegramBot = require("node-telegram-bot-api");
const TOKEN = process.env.TELEGRAM_TOKEN;
const CHAT_ID = process.env.CHAT_ID;
const DB_PATH = process.env.DATABASE_PATH || "../";
const FILE = path.join(DB_PATH, "database.sqlite");
const bot = new TelegramBot(TOKEN, { polling: false });
class Backup {
async database() {
try {
if (!fs.existsSync(FILE)) {
console.log("❌ Файл бази даних не знайдено:", FILE);
return;
}
console.log(`📤 Надсилаю файл: ${FILE}`);
await bot.sendDocument(CHAT_ID, fs.createReadStream(FILE), {
caption: "📦 Резервна копія бази даних",
});
console.log("✅ Файл успішно надіслано!");
} catch (err) {
console.error("❌ Помилка при надсиланні файлу:", err.message);
}
}
}
module.exports = new Backup();