Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
function exec(vm, username, passwd, path, params, callback){
virtualbox.start(vm, function(error){
if(error){
logging.error('Failed to start VM "%s"', vm);
callback && callback(error);
return;
}
logging.debug('Executing VirtualBox command on VM "%s". Username: %s Password: %s', vm, username, passwd);
virtualbox.exec({ 'vm': vm, 'username': username, 'passwd': passwd, 'cmd': path, 'params': params }, function(error, stdout){
if(error){
logging.error(error);
}
callback && callback(error, stdout);
virtualbox.poweroff(VirtualBoxManager.vmName, function (error)
{
if (error)
{
Logger.log("error", "Virtual Machine " + VirtualBoxManager.vmName + "failed to stop");
Logger.log("error", error);
callback(error);
}
else
{
Logger.log("Virtual Machine " + VirtualBoxManager.vmName + "has stopped");
virtualbox.start(VirtualBoxManager.vmName, function (error)
{
if (!isNull(error))
{
Logger.log("error", "Virtual Machine " + VirtualBoxManager.vmName + " failed to stop");
Logger.log("error", error);
callback(error);
}
else
{
Logger.log("Virtual Machine " + VirtualBoxManager.vmName + " restarted. ");
callback(null);
}
});
}
});
};
virtualbox.isRunning(VirtualBoxManager.vmName, function startCallback (error, running)
{
if (isNull(error))
{
if (!running)
{
virtualbox.start(VirtualBoxManager.vmName, function startCallback (error)
{
if (isNull(error))
{
Logger.log("Started VM");
callback(null);
}
else
{
Logger.log("Failed to start VM");
Logger.log("error", error);
callback(error);
}
});
}
else
{