projects
/
oweals
/
peertube.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Improve torrent/video download
[oweals/peertube.git]
/
server
/
initializers
/
migrator.ts
diff --git
a/server/initializers/migrator.ts
b/server/initializers/migrator.ts
index f3a05cc8ce7cc0ef5e421070dc4d4460c92ddc70..4663697299ff830f2825e7e5096f53f42d051deb 100644
(file)
--- a/
server/initializers/migrator.ts
+++ b/
server/initializers/migrator.ts
@@
-1,6
+1,6
@@
import * as path from 'path'
import * as path from 'path'
-import {
logger, readdirPromise } from '../helper
s'
-import {
ApplicationModel } from '../models/application/application
'
+import {
readdirPromise } from '../helpers/core-util
s'
+import {
logger } from '../helpers/logger
'
import { LAST_MIGRATION_VERSION } from './constants'
import { sequelizeTypescript } from './database'
import { LAST_MIGRATION_VERSION } from './constants'
import { sequelizeTypescript } from './database'
@@
-11,9
+11,15
@@
async function migrate () {
// The installer will do that
if (tables.length === 0) return
// The installer will do that
if (tables.length === 0) return
- let actualVersion = await ApplicationModel.loadMigrationVersion()
+ let actualVersion: number = null
+
+ const [ rows ] = await sequelizeTypescript.query('SELECT "migrationVersion" FROM "application"')
+ if (rows && rows[0] && rows[0].migrationVersion) {
+ actualVersion = rows[0].migrationVersion
+ }
+
if (actualVersion === null) {
if (actualVersion === null) {
- await
ApplicationModel.create({ migrationVersion: 0 }
)
+ await
sequelizeTypescript.query('INSERT INTO "application" ("migrationVersion") VALUES (0)'
)
actualVersion = 0
}
actualVersion = 0
}
@@
-29,8
+35,8
@@
async function migrate () {
try {
await executeMigration(actualVersion, migrationScript)
} catch (err) {
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
)
}
}
}
}
@@
-78,7
+84,7
@@
async function executeMigration (actualVersion: number, entity: { version: strin
const migrationScript = require(path.join(__dirname, 'migrations', migrationScriptName))
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(),
const options = {
transaction: t,
queryInterface: sequelizeTypescript.getQueryInterface(),
@@
-88,6
+94,6
@@
async function executeMigration (actualVersion: number, entity: { version: strin
await migrationScript.up(options)
// Update the new migration version
await migrationScript.up(options)
// Update the new migration version
- await
ApplicationModel.updateMigrationVersion(versionScript, t
)
+ await
sequelizeTypescript.query('UPDATE "application" SET "migrationVersion" = ' + versionScript, { transaction: t }
)
})
}
})
}