]>
git.immae.eu Git - github/Chocobozzz/PeerTube.git/blob - server/initializers/database.js
9642231b94ff7308498e88aee8c893bb1cf07e0f
3 const fs
= require('fs')
4 const path
= require('path')
5 const Sequelize
= require('sequelize')
7 const constants
= require('../initializers/constants')
8 const logger
= require('../helpers/logger')
9 const utils
= require('../helpers/utils')
13 const sequelize
= new Sequelize(constants
.CONFIG
.DATABASE
.DBNAME
, 'peertube', 'peertube', {
15 host: constants
.CONFIG
.DATABASE
.HOSTNAME
,
16 port: constants
.CONFIG
.DATABASE
.PORT
,
17 benchmark: utils
.isTestInstance(),
19 logging: function (message
, benchmark
) {
20 let newMessage
= message
21 if (benchmark
!== undefined) {
22 newMessage
+= ' | ' + benchmark
+ 'ms'
25 logger
.debug(newMessage
)
29 const modelDirectory
= path
.join(__dirname
, '..', 'models')
30 fs
.readdir(modelDirectory
, function (err
, files
) {
33 files
.filter(function (file
) {
34 if (file
=== 'utils.js') return false
38 .forEach(function (file
) {
39 const model
= sequelize
.import(path
.join(modelDirectory
, file
))
41 database
[model
.name
] = model
44 Object
.keys(database
).forEach(function (modelName
) {
45 if ('associate' in database
[modelName
]) {
46 database
[modelName
].associate(database
)
50 logger
.info('Database is ready.')
53 database
.sequelize
= sequelize
54 database
.Sequelize
= Sequelize
56 // ---------------------------------------------------------------------------
58 module
.exports
= database