backups: use a real targetId
This commit is contained in:
@@ -13,7 +13,7 @@ const archives = require('../archives.js'),
|
||||
safe = require('safetydance');
|
||||
|
||||
describe('Archives', function () {
|
||||
const { setup, cleanup, auditSource } = common;
|
||||
const { setup, cleanup, auditSource, getDefaultBackupTarget } = common;
|
||||
|
||||
const appBackup = {
|
||||
id: null,
|
||||
@@ -27,11 +27,13 @@ describe('Archives', function () {
|
||||
manifest: null,
|
||||
preserveSecs: 0,
|
||||
label: '',
|
||||
appConfig: { loc: 'loc1' }
|
||||
appConfig: { loc: 'loc1' },
|
||||
targetId: null
|
||||
};
|
||||
|
||||
before(async function () {
|
||||
await setup();
|
||||
appBackup.targetId = (await getDefaultBackupTarget()).id;
|
||||
appBackup.id = await backups.add(appBackup);
|
||||
});
|
||||
after(cleanup);
|
||||
|
||||
@@ -17,7 +17,7 @@ const archives = require('../archives.js'),
|
||||
timers = require('timers/promises');
|
||||
|
||||
describe('backup cleaner', function () {
|
||||
const { setup, cleanup, app } = common;
|
||||
const { setup, cleanup, app, getDefaultBackupTarget } = common;
|
||||
|
||||
before(setup);
|
||||
after(cleanup);
|
||||
@@ -139,7 +139,8 @@ describe('backup cleaner', function () {
|
||||
dependsOn: [ 'backup-app-00', 'backup-app-01' ],
|
||||
manifest: null,
|
||||
preserveSecs: 0,
|
||||
appConfig: null
|
||||
appConfig: null,
|
||||
targetId: null
|
||||
};
|
||||
|
||||
const BACKUP_0_APP_0 = { // backup of installed app
|
||||
@@ -153,7 +154,8 @@ describe('backup cleaner', function () {
|
||||
dependsOn: [],
|
||||
manifest: null,
|
||||
preserveSecs: 0,
|
||||
appConfig: null
|
||||
appConfig: null,
|
||||
targetId: null
|
||||
};
|
||||
|
||||
const BACKUP_0_APP_1 = { // this app is uninstalled
|
||||
@@ -167,7 +169,8 @@ describe('backup cleaner', function () {
|
||||
dependsOn: [],
|
||||
manifest: null,
|
||||
preserveSecs: 0,
|
||||
appConfig: null
|
||||
appConfig: null,
|
||||
targetId: null
|
||||
};
|
||||
|
||||
const BACKUP_1_BOX = {
|
||||
@@ -181,7 +184,8 @@ describe('backup cleaner', function () {
|
||||
dependsOn: [ 'backup-app-10', 'backup-app-11' ],
|
||||
manifest: null,
|
||||
preserveSecs: 0,
|
||||
appConfig: null
|
||||
appConfig: null,
|
||||
targetId: null
|
||||
};
|
||||
|
||||
const BACKUP_1_APP_0 = {
|
||||
@@ -195,7 +199,8 @@ describe('backup cleaner', function () {
|
||||
dependsOn: [],
|
||||
manifest: null,
|
||||
preserveSecs: 0,
|
||||
appConfig: null
|
||||
appConfig: null,
|
||||
targetId: null
|
||||
};
|
||||
|
||||
const BACKUP_1_APP_1 = {
|
||||
@@ -209,7 +214,8 @@ describe('backup cleaner', function () {
|
||||
dependsOn: [],
|
||||
manifest: null,
|
||||
preserveSecs: 0,
|
||||
appConfig: null
|
||||
appConfig: null,
|
||||
targetId: null
|
||||
};
|
||||
|
||||
const BACKUP_2_APP_2 = { // this is archived and left alone
|
||||
@@ -223,11 +229,12 @@ describe('backup cleaner', function () {
|
||||
dependsOn: [],
|
||||
manifest: null,
|
||||
preserveSecs: 0,
|
||||
appConfig: null
|
||||
appConfig: null,
|
||||
targetId: null
|
||||
};
|
||||
|
||||
before(async function () {
|
||||
target = await backupTargets._getDefault();
|
||||
target = await getDefaultBackupTarget();
|
||||
await backupTargets.setConfig(target, {
|
||||
provider: 'filesystem',
|
||||
backupFolder: '/tmp/someplace',
|
||||
@@ -258,6 +265,10 @@ describe('backup cleaner', function () {
|
||||
});
|
||||
|
||||
it('add the backups', async function () {
|
||||
for (const b of [BACKUP_0_APP_0, BACKUP_0_APP_1, BACKUP_0_BOX, BACKUP_1_APP_0, BACKUP_1_APP_1, BACKUP_1_BOX, BACKUP_2_APP_2]) {
|
||||
b.targetId = target.id;
|
||||
}
|
||||
|
||||
BACKUP_0_APP_0.id = await backups.add(BACKUP_0_APP_0);
|
||||
BACKUP_0_APP_1.id = await backups.add(BACKUP_0_APP_1);
|
||||
BACKUP_0_BOX.dependsOn = [ BACKUP_0_APP_0.id, BACKUP_0_APP_1.id ];
|
||||
|
||||
@@ -14,7 +14,7 @@ const backups = require('../backups.js'),
|
||||
safe = require('safetydance');
|
||||
|
||||
describe('backups', function () {
|
||||
const { setup, cleanup } = common;
|
||||
const { setup, cleanup, getDefaultBackupTarget } = common;
|
||||
|
||||
const boxBackup = {
|
||||
id: null,
|
||||
@@ -52,13 +52,12 @@ describe('backups', function () {
|
||||
|
||||
before(async function () {
|
||||
await setup();
|
||||
defaultBackupTarget = await backupTargets._getDefault();
|
||||
defaultBackupTarget = await getDefaultBackupTarget();
|
||||
boxBackup.targetId = defaultBackupTarget.id;
|
||||
appBackup.targetId = defaultBackupTarget.id;
|
||||
});
|
||||
after(cleanup);
|
||||
|
||||
|
||||
describe('crud', function () {
|
||||
it('add succeeds', async function () {
|
||||
boxBackup.id = await backups.add(boxBackup);
|
||||
|
||||
@@ -32,7 +32,7 @@ describe('backups', function () {
|
||||
it('can get backup target', async function () {
|
||||
const backupTarget = await backupTargets.get(defaultBackupTarget.id);
|
||||
expect(backupTarget.config.provider).to.be('filesystem');
|
||||
expect(backupTarget.config.backupFolder).to.be('/var/backups');
|
||||
expect(backupTarget.config.backupFolder).to.be.ok(); // the test sets this to some tmp location
|
||||
expect(backupTarget.format).to.be('tgz');
|
||||
expect(backupTarget.encryption).to.be(null);
|
||||
});
|
||||
|
||||
@@ -17,7 +17,7 @@ const backups = require('../backups.js'),
|
||||
timers = require('timers/promises');
|
||||
|
||||
describe('backuptask', function () {
|
||||
const { setup, cleanup } = common;
|
||||
const { setup, cleanup, getDefaultBackupTarget } = common;
|
||||
|
||||
before(setup);
|
||||
after(cleanup);
|
||||
@@ -34,7 +34,7 @@ describe('backuptask', function () {
|
||||
|
||||
before(async function () {
|
||||
fs.rmSync(backupConfig.backupFolder, { recursive: true, force: true });
|
||||
defaultBackupTarget = await backupTargets._getDefault();
|
||||
defaultBackupTarget = await getDefaultBackupTarget();
|
||||
await backupTargets.setConfig(defaultBackupTarget, backupConfig);
|
||||
});
|
||||
|
||||
|
||||
@@ -28,7 +28,7 @@ describe('Cloudron', function () {
|
||||
expect(error.reason).to.be(BoxError.BAD_FIELD);
|
||||
});
|
||||
|
||||
it('cannot set valid timezone', async function () {
|
||||
it('can set valid timezone', async function () {
|
||||
await cloudron.setTimeZone('Africa/Johannesburg');
|
||||
const tz = await cloudron.getTimeZone();
|
||||
expect(tz).to.be('Africa/Johannesburg');
|
||||
|
||||
+17
-1
@@ -173,6 +173,8 @@ exports = module.exports = {
|
||||
checkMails,
|
||||
clearMailQueue,
|
||||
|
||||
getDefaultBackupTarget,
|
||||
|
||||
mockApiServerOrigin: 'http://localhost:6060',
|
||||
dashboardDomain: domain.domain,
|
||||
dashboardFqdn: `my.${domain.domain}`,
|
||||
@@ -218,7 +220,16 @@ async function databaseSetup() {
|
||||
await database._clear();
|
||||
await appstore._setApiServerOrigin(exports.mockApiServerOrigin);
|
||||
await dashboard._setLocation(constants.DASHBOARD_SUBDOMAIN, exports.dashboardDomain);
|
||||
await backupTargets._addDefault();
|
||||
|
||||
// duplicated here since we clear the database
|
||||
await backupTargets.add({
|
||||
provider: 'filesystem',
|
||||
label: '',
|
||||
config: { backupFolder: '/tmp/boxtest' },
|
||||
format: 'tgz',
|
||||
retention: { keepWithinSecs: 2 * 24 * 60 * 60 },
|
||||
schedule: '00 00 23 * * *'
|
||||
});
|
||||
}
|
||||
|
||||
async function domainSetup() {
|
||||
@@ -263,3 +274,8 @@ async function checkMails(number) {
|
||||
// return for further investigation
|
||||
return emails;
|
||||
}
|
||||
|
||||
async function getDefaultBackupTarget() {
|
||||
const result = await backupTargets.list(1, 1);
|
||||
return result[0];
|
||||
}
|
||||
|
||||
@@ -24,7 +24,7 @@ const backupTargets = require('../backuptargets.js'),
|
||||
const chunk = s3._chunk;
|
||||
|
||||
describe('Storage', function () {
|
||||
const { setup, cleanup } = common;
|
||||
const { setup, cleanup, getDefaultBackupTarget } = common;
|
||||
|
||||
before(setup);
|
||||
after(cleanup);
|
||||
@@ -41,9 +41,7 @@ describe('Storage', function () {
|
||||
|
||||
before(async function () {
|
||||
gTmpFolder = fs.mkdtempSync(path.join(os.tmpdir(), 'filesystem-storage-test_'));
|
||||
|
||||
defaultBackupTarget = await backupTargets._getDefault();
|
||||
|
||||
defaultBackupTarget = await getDefaultBackupTarget();
|
||||
gBackupConfig.backupFolder = path.join(gTmpFolder, 'backups/');
|
||||
});
|
||||
|
||||
|
||||
Reference in New Issue
Block a user