|
|
|
@ -190,7 +190,15 @@ module.exports = {
|
|
|
|
|
// -> Create DB Schema if different than the default 'public'
|
|
|
|
|
async createDefaultSchema () {
|
|
|
|
|
if (WIKI.config.db.schema && WIKI.config.db.schema !== 'public') {
|
|
|
|
|
await self.knex.raw(`CREATE SCHEMA IF NOT EXISTS ${WIKI.config.db.schema};`)
|
|
|
|
|
// Don't create the schema if it already exists. This avoids errors
|
|
|
|
|
// when the user lacks permission to create new schemas while the schema
|
|
|
|
|
// already exists.
|
|
|
|
|
let matched_schemas = await self.knex.select('schema_name')
|
|
|
|
|
.from('information_schema.schemata')
|
|
|
|
|
.where('schema_name', WIKI.config.db.schema);
|
|
|
|
|
if (matched_schemas.length == 0) {
|
|
|
|
|
await self.knex.raw(`CREATE SCHEMA IF NOT EXISTS ${WIKI.config.db.schema};`)
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
// -> Migrate DB Schemas
|
|
|
|
|