aboutsummaryrefslogtreecommitdiff
path: root/src/bot.ts
blob: d7b5ad9714730296866785104ee807f656058074 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import { init } from './lib/utils/BushLogger.js';
// creates proxies on console.log and console.warn
// also starts a REPL session
init();

const { dirname } = await import('path');
const { fileURLToPath } = await import('url');
const { default: config } = await import('../config/options.js');
const { Sentry } = await import('./lib/common/Sentry.js');
const { BushClient } = await import('./lib/index.js');

const isDry = process.argv.includes('dry');
if (!isDry && config.credentials.sentryDsn !== null) new Sentry(dirname(fileURLToPath(import.meta.url)) || process.cwd(), config);
BushClient.extendStructures();
const client = new BushClient(config);
if (!isDry) await client.dbPreInit();
await client.init();
if (isDry) {
	await client.destroy();
	process.exit(0);
} else {
	await client.start();
}