DweebUI/utils/uninstall.js

50 lines
1.3 KiB
JavaScript
Raw Normal View History

import { docker } from "../server.js";
import { Syslog } from "../database/models.js";
export const Uninstall = async (req, res) => {
let { confirm, service_name } = req.body;
console.log(`Uninstalling ${service_name}...`);
if (confirm == 'Yes') {
let containerName = docker.getContainer(service_name);
console.log(`Stopping ${service_name}...`)
try {
await containerName.stop();
} catch {
console.log(`Error stopping ${service_name} container`);
}
try {
console.log(`Removing ${service_name}...`);
containerName.remove();
const syslog = await Syslog.create({
user: req.session.user,
email: null,
event: "App Removal",
2024-01-13 08:04:01 +00:00
message: `${service_name} uninstalled successfully`,
ip: req.socket.remoteAddress
});
} catch {
2024-01-14 10:23:14 +00:00
const syslog = await Syslog.create({
user: req.session.user,
email: null,
event: "App Removal",
message: `${service_name} uninstallation failed`,
ip: req.socket.remoteAddress
});
}
} else {
console.log(`Didn't confirm uninstallation of ${service_name}...`);
}
res.redirect('/');
}