Catch readonly write errors more cleanly

Fail more cleanly when run from a readonly files system without setting readOnly true.
This commit is contained in:
Dave Conway-Jones
2018-08-26 10:49:53 +01:00
parent 3169f93cc2
commit ffa65afbb2
3 changed files with 15 additions and 3 deletions

View File

@@ -142,6 +142,7 @@
"restore": "Restoring __type__ file backup : __path__",
"restore-fail": "Restoring __type__ file backup failed : __message__",
"fsync-fail": "Flushing file __path__ to disk failed : __message__",
"fwrite-fail": "Writing backup file __path__ to disk failed.",
"projects": {
"changing-project": "Setting active project : __project__",
"active-project": "Active project : __project__",

View File

@@ -81,7 +81,11 @@ module.exports = {
writeFile: function(path,content,backupPath) {
if (backupPath) {
if (fs.existsSync(path)) {
fs.renameSync(path,backupPath);
try {
fs.renameSync(path,backupPath);
} catch(e) {
log.warn(log._("storage.localfilesystem.fwrite-fail",{path:path}));
}
}
}
return when.promise(function(resolve,reject) {