MCPcopy
hub / github.com/FlowiseAI/Flowise / init

Function init

packages/server/src/DataSource.ts:15–102  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

13let appDataSource: DataSource
14
15export const init = async (): Promise<void> => {
16 let homePath
17 let flowisePath = path.join(getUserHome(), '.flowise')
18 if (!fs.existsSync(flowisePath)) {
19 fs.mkdirSync(flowisePath)
20 }
21 switch (process.env.DATABASE_TYPE) {
22 case 'sqlite':
23 homePath = process.env.DATABASE_PATH ?? flowisePath
24 appDataSource = new DataSource({
25 type: 'sqlite',
26 database: path.resolve(homePath, 'database.sqlite'),
27 synchronize: false,
28 migrationsRun: false,
29 entities: Object.values(entities),
30 migrations: sqliteMigrations
31 })
32 break
33 case 'mysql':
34 appDataSource = new DataSource({
35 type: 'mysql',
36 host: process.env.DATABASE_HOST,
37 port: parseInt(process.env.DATABASE_PORT || '3306'),
38 username: process.env.DATABASE_USER,
39 password: process.env.DATABASE_PASSWORD,
40 database: process.env.DATABASE_NAME,
41 charset: 'utf8mb4',
42 synchronize: false,
43 migrationsRun: false,
44 entities: Object.values(entities),
45 migrations: mysqlMigrations,
46 ssl: getDatabaseSSLFromEnv()
47 })
48 break
49 case 'mariadb':
50 appDataSource = new DataSource({
51 type: 'mariadb',
52 host: process.env.DATABASE_HOST,
53 port: parseInt(process.env.DATABASE_PORT || '3306'),
54 username: process.env.DATABASE_USER,
55 password: process.env.DATABASE_PASSWORD,
56 database: process.env.DATABASE_NAME,
57 charset: 'utf8mb4',
58 synchronize: false,
59 migrationsRun: false,
60 entities: Object.values(entities),
61 migrations: mariadbMigrations,
62 ssl: getDatabaseSSLFromEnv()
63 })
64 break
65 case 'postgres':
66 appDataSource = new DataSource({
67 type: 'postgres',
68 host: process.env.DATABASE_HOST,
69 port: parseInt(process.env.DATABASE_PORT || '5432'),
70 username: process.env.DATABASE_USER,
71 password: process.env.DATABASE_PASSWORD,
72 database: process.env.DATABASE_NAME,

Callers 1

getDataSourceFunction · 0.70

Calls 3

getUserHomeFunction · 0.90
getDatabaseSSLFromEnvFunction · 0.85
stringifyMethod · 0.80

Tested by

no test coverage detected