50 lines
1.0 KiB
JavaScript
50 lines
1.0 KiB
JavaScript
const migrate_name = 'stream_domain';
|
|
const logger = require('../logger').migrate;
|
|
const internalNginx = require('../internal/nginx');
|
|
|
|
async function regenerateDefaultHost(knex) {
|
|
const row = await knex('setting').select('*').where('id', 'default-site').first();
|
|
|
|
if (!row) {
|
|
return Promise.resolve();
|
|
}
|
|
|
|
return internalNginx.deleteConfig('default')
|
|
.then(() => {
|
|
return internalNginx.generateConfig('default', row);
|
|
})
|
|
.then(() => {
|
|
return internalNginx.test();
|
|
})
|
|
.then(() => {
|
|
return internalNginx.reload();
|
|
});
|
|
}
|
|
|
|
/**
|
|
* Migrate
|
|
*
|
|
* @see http://knexjs.org/#Schema
|
|
*
|
|
* @param {Object} knex
|
|
* @param {Promise} Promise
|
|
* @returns {Promise}
|
|
*/
|
|
exports.up = function (knex) {
|
|
logger.info('[' + migrate_name + '] Migrating Up...');
|
|
|
|
return regenerateDefaultHost(knex);
|
|
};
|
|
|
|
/**
|
|
* Undo Migrate
|
|
*
|
|
* @param {Object} knex
|
|
* @param {Promise} Promise
|
|
* @returns {Promise}
|
|
*/
|
|
exports.down = function (knex) {
|
|
logger.info('[' + migrate_name + '] Migrating Down...');
|
|
|
|
return regenerateDefaultHost(knex);
|
|
}; |