import * as path from 'path'
-import { logger, readdirPromise } from '../helpers'
+import { readdirPromise } from '../helpers/core-utils'
+import { logger } from '../helpers/logger'
import { LAST_MIGRATION_VERSION } from './constants'
import { sequelizeTypescript } from './database'
let actualVersion: number = null
- // Search in "Applications" or "application" tables
- try {
- const [ rows ] = await sequelizeTypescript.query('SELECT "migrationVersion" FROM "Applications"')
- if (rows && rows[ 0 ] && rows[ 0 ].migrationVersion) {
- actualVersion = rows[ 0 ].migrationVersion
- }
- } catch {
- const [ rows ] = await sequelizeTypescript.query('SELECT "migrationVersion" FROM "application"')
- if (rows && rows[0] && rows[0].migrationVersion) {
- actualVersion = rows[0].migrationVersion
- }
+ const [ rows ] = await sequelizeTypescript.query('SELECT "migrationVersion" FROM "application"')
+ if (rows && rows[0] && rows[0].migrationVersion) {
+ actualVersion = rows[0].migrationVersion
}
if (actualVersion === null) {
try {
await executeMigration(actualVersion, migrationScript)
} catch (err) {
- logger.error('Cannot execute migration %s.', migrationScript.version, err)
- process.exit(0)
+ logger.error('Cannot execute migration %s.', migrationScript.version, { err })
+ process.exit(-1)
}
}
const migrationScript = require(path.join(__dirname, 'migrations', migrationScriptName))
- await sequelizeTypescript.transaction(async t => {
+ return sequelizeTypescript.transaction(async t => {
const options = {
transaction: t,
queryInterface: sequelizeTypescript.getQueryInterface(),