Disable cleanup by default and show errors in admin area

This commit is contained in:
Stefan Müller 2024-09-10 17:25:51 +02:00
parent 593d1021b6
commit 3330ed8d1b
6 changed files with 53 additions and 1 deletions

View file

@ -254,6 +254,13 @@ exports.socketio = (hookName: string, {io}: any) => {
})
socket.on('cleanupPadRevisions', async (padId: string) => {
if (!settings.cleanup.enabled) {
socket.emit('results:cleanupPadRevisions', {
error: 'Cleanup disabled. Enable cleanup in settings.json: cleanup.enabled => true',
});
return;
}
const padExists = await padManager.doesPadExists(padId);
if (padExists) {
logger.info(`Cleanup pad revisions: ${padId}`);
@ -265,9 +272,16 @@ exports.socketio = (hookName: string, {io}: any) => {
keepRevisions: settings.cleanup.keepRevisions,
});
logger.info('successful cleaned up pad: ', padId)
} else {
socket.emit('results:cleanupPadRevisions', {
error: 'Error cleaning up pad',
});
}
} catch (err: any) {
logger.error(`Error in pad ${padId}: ${err.stack || err}`);
socket.emit('results:cleanupPadRevisions', {
error: err.toString(),
});
return;
}
}

View file

@ -48,7 +48,7 @@ exports.deleteRevisions = async (padId: string, keepRevisions: number): Promise<
logger.debug('Initial pad is valid')
if (pad.head < keepRevisions) {
if (pad.head <= keepRevisions) {
logger.debug('Pad has not enough revisions')
return false
}

View file

@ -384,6 +384,7 @@ exports.showSettingsInAdminPage = true;
* Settings for cleanup of pads
*/
exports.cleanup = {
enabled: false,
keepRevisions: 100,
}