Closed revenz closed 1 year ago
Need to implement ability to update apps in the dotnet rewrite
Legacy Node code
async updateApps(req, res) { console.log('Updating Applications'); const dir = __dirname + '/../temp'; if(fs.existsSync(dir) == false){ console.log('Creating temporary directory'); fs.mkdirSync(dir, {recursive: true}); } let appsUrl = 'https://github.com/revenz/Fenrus/raw/master/apps.zip?t=' + new Date().getTime(); let zipfile = dir + '/' + new Utils().newGuid(); try { let appHelper = AppHelper.getInstance(); if(!appHelper.count()) appHelper.load(); let previous = appHelper.count() || 0; console.log('Previous application count: ' + previous); await HttpHelper.download(appsUrl, zipfile); const zip = new StreamZip.async({ file: zipfile}); const count = await zip.extract(null, './apps'); console.log(`Extracted ${count} entries`); await zip.close(); console.log('Successfully updated applications'); appHelper.load(); let updated = appHelper.count() || 0; console.log('Updated application list in memory'); res.status(200).send(`Updated ${count} applications.\n\n${updated - previous} new app${updated - previous == 1 ? '' : 's'}`).end(); } catch(err) { console.log('Failed to update applications: ' + err); res.status(500).send('' + err).end(); } }
done
Need to implement ability to update apps in the dotnet rewrite
Legacy Node code