From 70e88916e93539acd161aa935fdf515d07cf47ee Mon Sep 17 00:00:00 2001 From: ShadowVR Date: Sat, 1 Jun 2024 14:35:55 -0400 Subject: [PATCH] Added bot.js --- bot.js | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 bot.js diff --git a/bot.js b/bot.js new file mode 100644 index 0000000..a3bb019 --- /dev/null +++ b/bot.js @@ -0,0 +1,52 @@ +const simpleGit = require('simple-git'); +const path = require('path'); +const { exec } = require('child_process'); + +async function updateBotFromGitHub() { + const git = simpleGit(path.resolve(__dirname)); + + try { + console.log('Checking for updates from GitHub...'); + + if (!await git.checkIsRepo()) { + await git.init().addRemote('origin', 'https://git.shadowhosting.xyz/shadowvr/AI_botter.git').fetch(); + } else { + await git.fetch('origin', 'main'); + } + + // Force update by resetting to the latest commit on the remote main branch + await git.reset(['--hard', 'origin/main']); + + console.log('Bot updated from GitHub.'); + + } catch (error) { + console.error('Error updating bot from GitHub:', error); + } +} + +function startIndexJs() { + console.log('Starting index.js...'); + const indexProcess = exec('node index.js', { + cwd: path.resolve(__dirname), + }); + + indexProcess.stdout.on('data', (data) => { + console.log(data.toString()); + }); + + indexProcess.stderr.on('data', (data) => { + console.error(data.toString()); + }); + + indexProcess.on('exit', (code) => { + console.log(`index.js process exited with code ${code}`); + }); +} + +async function updateAndStartIndexJs() { + await updateBotFromGitHub(); + startIndexJs(); +} + +// Perform initial update and start index.js +updateAndStartIndexJs();