UNPKG

fileutils-cli

Version:

A collection of powerful command line file utilities

28 lines (25 loc) 950 B
const fs = require('fs-extra'); const os = require('os'); const path = require('path'); const { Sequelize, DataTypes } = require('sequelize'); module.exports.init = async function() { let sequelize = await dbInit(path.join(os.homedir(), '.fu', 'fu.db')); return sequelize; }; module.exports.initTest = async function() { let sequelize = await dbInit(path.join(os.homedir(), '.fu', 'test.db')); return sequelize; }; async function dbInit(dbPath) { let sequelize = new Sequelize({ dialect: 'sqlite', storage: dbPath, logging: false }); const Batch = await require('../model/batch')(sequelize, DataTypes); const Op = await require('../model/operation')(sequelize, DataTypes); await require('../model/favorites')(sequelize, DataTypes); await Batch.hasMany(Op); await Op.belongsTo(Batch); const dbFileExists = await fs.pathExists(dbPath); if (!dbFileExists) { await sequelize.sync({ alter: true }); } return sequelize; }