]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blame - server/initializers/migrations/0510-video-file-metadata.ts
store uploaded video filename (#4885)
[github/Chocobozzz/PeerTube.git] / server / initializers / migrations / 0510-video-file-metadata.ts
CommitLineData
d2a5c4e1
C
1import * as Sequelize from 'sequelize'
2
3async function up (utils: {
4 transaction: Sequelize.Transaction
5 queryInterface: Sequelize.QueryInterface
6 sequelize: Sequelize.Sequelize
7}): Promise<void> {
8
9 // We made a mistake with the migration in 2.2.0-rc.1
10 // Docker containers did not include this migration file
11 // So we check the table definition and add the column if it does not exist
12 const tableDefinition = await utils.queryInterface.describeTable('videoFile')
13
14 if (!tableDefinition['metadata']) {
15 const metadata = {
16 type: Sequelize.JSONB,
17 allowNull: true
18 }
19 await utils.queryInterface.addColumn('videoFile', 'metadata', metadata)
20 }
21
22 if (!tableDefinition['metadataUrl']) {
23 const metadataUrl = {
24 type: Sequelize.STRING,
25 allowNull: true
26 }
27 await utils.queryInterface.addColumn('videoFile', 'metadataUrl', metadataUrl)
28 }
29}
30
31function down (options) {
32 throw new Error('Not implemented.')
33}
34
35export {
36 up,
37 down
38}