n8n/packages/cli/src/commands/license/clear.ts

43 lines
990 B
TypeScript
Raw Normal View History

import { Command } from '@oclif/command';
import { LoggerProxy } from 'n8n-workflow';
import * as Db from '@/Db';
import { getLogger } from '@/Logger';
import { SETTINGS_LICENSE_CERT_KEY } from '@/constants';
export class ClearLicenseCommand extends Command {
static description = 'Clear license';
static examples = ['$ n8n clear:license'];
async run() {
const logger = getLogger();
LoggerProxy.init(logger);
try {
await Db.init();
console.info('Clearing license from database.');
await Db.collections.Settings.delete({
key: SETTINGS_LICENSE_CERT_KEY,
});
console.info('Done. Restart n8n to take effect.');
} catch (e: unknown) {
console.error('Error updating database. See log messages for details.');
logger.error('\nGOT ERROR');
logger.info('====================================');
if (e instanceof Error) {
logger.error(e.message);
if (e.stack) {
logger.error(e.stack);
}
}
this.exit(1);
}
this.exit();
}
}