diff options
Diffstat (limited to 'server/initializers/migrations')
-rw-r--r-- | server/initializers/migrations/0065-video-file-size.ts | 3 | ||||
-rw-r--r-- | server/initializers/migrations/0450-streaming-playlist-files.ts | 40 |
2 files changed, 42 insertions, 1 deletions
diff --git a/server/initializers/migrations/0065-video-file-size.ts b/server/initializers/migrations/0065-video-file-size.ts index 66f25016a..e9ce77e50 100644 --- a/server/initializers/migrations/0065-video-file-size.ts +++ b/server/initializers/migrations/0065-video-file-size.ts | |||
@@ -2,6 +2,7 @@ import * as Sequelize from 'sequelize' | |||
2 | import * as Promise from 'bluebird' | 2 | import * as Promise from 'bluebird' |
3 | import { stat } from 'fs-extra' | 3 | import { stat } from 'fs-extra' |
4 | import { VideoModel } from '../../models/video/video' | 4 | import { VideoModel } from '../../models/video/video' |
5 | import { getVideoFilePath } from '@server/lib/video-paths' | ||
5 | 6 | ||
6 | function up (utils: { | 7 | function up (utils: { |
7 | transaction: Sequelize.Transaction, | 8 | transaction: Sequelize.Transaction, |
@@ -16,7 +17,7 @@ function up (utils: { | |||
16 | videos.forEach(video => { | 17 | videos.forEach(video => { |
17 | video.VideoFiles.forEach(videoFile => { | 18 | video.VideoFiles.forEach(videoFile => { |
18 | const p = new Promise((res, rej) => { | 19 | const p = new Promise((res, rej) => { |
19 | stat(video.getVideoFilePath(videoFile), (err, stats) => { | 20 | stat(getVideoFilePath(video, videoFile), (err, stats) => { |
20 | if (err) return rej(err) | 21 | if (err) return rej(err) |
21 | 22 | ||
22 | videoFile.size = stats.size | 23 | videoFile.size = stats.size |
diff --git a/server/initializers/migrations/0450-streaming-playlist-files.ts b/server/initializers/migrations/0450-streaming-playlist-files.ts new file mode 100644 index 000000000..536ef00f9 --- /dev/null +++ b/server/initializers/migrations/0450-streaming-playlist-files.ts | |||
@@ -0,0 +1,40 @@ | |||
1 | import * as Sequelize from 'sequelize' | ||
2 | |||
3 | async function up (utils: { | ||
4 | transaction: Sequelize.Transaction, | ||
5 | queryInterface: Sequelize.QueryInterface, | ||
6 | sequelize: Sequelize.Sequelize, | ||
7 | db: any | ||
8 | }): Promise<void> { | ||
9 | { | ||
10 | const data = { | ||
11 | type: Sequelize.INTEGER, | ||
12 | allowNull: true, | ||
13 | references: { | ||
14 | model: 'videoStreamingPlaylist', | ||
15 | key: 'id' | ||
16 | }, | ||
17 | onDelete: 'CASCADE' | ||
18 | } | ||
19 | |||
20 | await utils.queryInterface.addColumn('videoFile', 'videoStreamingPlaylistId', data) | ||
21 | } | ||
22 | |||
23 | { | ||
24 | const data = { | ||
25 | type: Sequelize.INTEGER, | ||
26 | allowNull: true | ||
27 | } | ||
28 | |||
29 | await utils.queryInterface.changeColumn('videoFile', 'videoId', data) | ||
30 | } | ||
31 | } | ||
32 | |||
33 | function down (options) { | ||
34 | throw new Error('Not implemented.') | ||
35 | } | ||
36 | |||
37 | export { | ||
38 | up, | ||
39 | down | ||
40 | } | ||