Add tasks.startTask

This commit is contained in:
Girish Ramakrishnan
2018-11-29 16:13:01 -08:00
parent 2f729b56fa
commit fca0e897b2
5 changed files with 88 additions and 90 deletions

View File

@@ -9,7 +9,9 @@ var backupdb = require('../backupdb.js'),
backups = require('../backups.js'),
BackupsError = require('../backups.js').BackupsError,
HttpError = require('connect-lastmile').HttpError,
HttpSuccess = require('connect-lastmile').HttpSuccess;
HttpSuccess = require('connect-lastmile').HttpSuccess,
tasks = require('../tasks.js'),
TasksError = require('../tasks.js').TasksError;
function auditSource(req) {
var ip = req.headers['x-forwarded-for'] || req.connection.remoteAddress || null;
@@ -34,8 +36,8 @@ function list(req, res, next) {
function startBackup(req, res, next) {
// note that cloudron.backup only waits for backup initiation and not for backup to complete
// backup progress can be checked up ny polling the progress api call
backups.startBackupTask(auditSource(req), function (error) {
if (error && error.reason === BackupsError.BAD_STATE) return next(new HttpError(409, error.message));
tasks.startTask(tasks.TASK_BACKUP, auditSource(req), function (error) {
if (error && error.reason === TasksError.BAD_STATE) return next(new HttpError(409, error.message));
if (error) return next(new HttpError(500, error));
next(new HttpSuccess(202, {}));