Files
BetterDesk/web-nodejs/lib/updateResultStore.js
T
UNITRONIX a6ec256f57 feat(update): implement last update result reporting in settings
Added a new API endpoint to retrieve the last update result, enhancing the user interface by displaying detailed error messages for failed updates. Improved the update completion modal to reflect the status of services and console restarts, ensuring users are informed of any issues. Updated the settings JavaScript to load and display the last update result dynamically, improving overall user experience during updates.
2026-06-07 15:06:48 +02:00

38 lines
913 B
JavaScript

'use strict';
const fs = require('fs');
const path = require('path');
function lastUpdateResultPath(dataDir) {
return path.join(dataDir, '.last_update_result.json');
}
function persistUpdateResult(dataDir, payload) {
if (!dataDir) return null;
const target = lastUpdateResultPath(dataDir);
const record = {
savedAt: new Date().toISOString(),
...payload,
};
fs.mkdirSync(dataDir, { recursive: true });
fs.writeFileSync(target, JSON.stringify(record, null, 2));
return record;
}
function readLastUpdateResult(dataDir) {
if (!dataDir) return null;
const target = lastUpdateResultPath(dataDir);
if (!fs.existsSync(target)) return null;
try {
return JSON.parse(fs.readFileSync(target, 'utf8'));
} catch (_) {
return null;
}
}
module.exports = {
lastUpdateResultPath,
persistUpdateResult,
readLastUpdateResult,
};