datastore-backup
Version:
Programatic Backup of Google Cloud Datastore
44 lines • 3.35 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
/*
* backup.ts
*
* Created by Dr. Maximillian Dornseif 2021-12-21 in datastore-backup 1.0.0
* Copyright (c) 2021 Dr. Maximillian Dornseif
*/
const datastore_1 = require("@google-cloud/datastore");
const argparse_1 = require("argparse");
const ora_1 = __importDefault(require("ora"));
const datastore_backup_1 = require("../lib/datastore-backup");
const parser = new argparse_1.ArgumentParser({
description: 'Backup Datastore.',
epilog: 'Please provide `GOOGLE_APPLICATION_CREDENTIALS` via the Environment!',
add_help: true,
});
parser.add_argument('projectId', { help: 'Datastore project ID' });
parser.add_argument('bucket', { help: 'GCS bucket to store backup' });
parser.add_argument('-d', '--backupDir', {
default: 'bak',
help: 'prefix/dir within bucket',
});
parser.add_argument('-n', '--backupName', {
help: 'name of backup (default: autogenerated)',
});
parser.add_argument('-s', '--namespace', { help: 'datastore namespace' });
const args = parser.parse_args();
async function main() {
const datastore = new datastore_1.Datastore({
projectId: args.projectId,
namespace: args.namespace,
}); //);
//
const spinner = (0, ora_1.default)().start('🌈 Unicorns! ✨🌈');
await (0, datastore_backup_1.dumpAllKinds)(datastore, args.bucket, args.backupName, args.backupDir, spinner);
return '';
}
main().then(console.log).catch(console.error);
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YXN0b3JlRHVtcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9iaW4vZGF0YXN0b3JlRHVtcC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFDQTs7Ozs7R0FLRztBQUNILHVEQUFvRDtBQUNwRCx1Q0FBMEM7QUFDMUMsOENBQXNCO0FBRXRCLDhEQUF1RDtBQUV2RCxNQUFNLE1BQU0sR0FBRyxJQUFJLHlCQUFjLENBQUM7SUFDaEMsV0FBVyxFQUFFLG1CQUFtQjtJQUNoQyxNQUFNLEVBQ0osc0VBQXNFO0lBQ3hFLFFBQVEsRUFBRSxJQUFJO0NBQ2YsQ0FBQyxDQUFDO0FBRUgsTUFBTSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsRUFBRSxJQUFJLEVBQUUsc0JBQXNCLEVBQUUsQ0FBQyxDQUFDO0FBQ25FLE1BQU0sQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLEVBQUUsSUFBSSxFQUFFLDRCQUE0QixFQUFFLENBQUMsQ0FBQztBQUN0RSxNQUFNLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxhQUFhLEVBQUU7SUFDdkMsT0FBTyxFQUFFLEtBQUs7SUFDZCxJQUFJLEVBQUUsMEJBQTBCO0NBQ2pDLENBQUMsQ0FBQztBQUNILE1BQU0sQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLGNBQWMsRUFBRTtJQUN4QyxJQUFJLEVBQUUseUNBQXlDO0NBQ2hELENBQUMsQ0FBQztBQUNILE1BQU0sQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLGFBQWEsRUFBRSxFQUFFLElBQUksRUFBRSxxQkFBcUIsRUFBRSxDQUFDLENBQUM7QUFFMUUsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLFVBQVUsRUFBRSxDQUFDO0FBQ2pDLEtBQUssVUFBVSxJQUFJO0lBQ2pCLE1BQU0sU0FBUyxHQUFHLElBQUkscUJBQVMsQ0FBQztRQUM5QixTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7UUFDekIsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTO0tBQzFCLENBQUMsQ0FBQyxDQUFDLElBQUk7SUFDUixFQUFFO0lBRUYsTUFBTSxPQUFPLEdBQUcsSUFBQSxhQUFHLEdBQUUsQ0FBQyxLQUFLLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUVoRCxNQUFNLElBQUEsK0JBQVksRUFDaEIsU0FBUyxFQUNULElBQUksQ0FBQyxNQUFNLEVBQ1gsSUFBSSxDQUFDLFVBQVUsRUFDZixJQUFJLENBQUMsU0FBUyxFQUNkLE9BQU8sQ0FDUixDQUFDO0lBRUYsT0FBTyxFQUFFLENBQUM7QUFDWixDQUFDO0FBRUQsSUFBSSxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDIn0=