const Discord = require('discord.js'); const fs = require('fs'); const chalk = require('chalk'); const UserData = require('../models/user'); const cp = require('child_process'); module.exports = { name: "pull", help: new Discord.MessageEmbed() .setTitle("Help -> VCS Pull") .setDescription("Pulls new commits from VCS") .addField("Syntax", "`refresh`") .addField("Notice", "This command is only available to Natsuki developers."), async execute(message, msg, args, cmd, prefix, mention, client) { const tu = await UserData.findOne({uid: message.author.id}); if (!tu || !tu.developer) {return message.channel.send("You must be a Natsuki developer in order to do this!");} console.log(`\n${chalk.yellow('[WARN]')} >> ${chalk.gray('VCS:')} ${chalk.white('Initiating remote->local VCS sync/refresh!')}`); cp.exec("git pull origin master", function(error, stdout, stderr) { if (stderr || error) { let date = new Date; date = date.toString().slice(date.toString().search(":") - 2, date.toString().search(":") + 6); console.error(`\n${chalk.red('[ERROR]')} >> ${chalk.yellow(`At [${date}] | Occurred while trying to pull from VCS`)}`, stderr || error); } else { console.log(`\n${chalk.gray('[INFO]')} >> ${chalk.hex('ff4fd0')(`VCS Pull successful`)}\n`); } }); } };