Add foreign key migration
[oweals/peertube.git] / server / initializers / migrations / 0035-video-licence.ts
1 import * as Sequelize from 'sequelize'
2 import * as Promise from 'bluebird'
3
4 function up (utils: {
5   transaction: Sequelize.Transaction,
6   queryInterface: Sequelize.QueryInterface,
7   sequelize: Sequelize.Sequelize
8 }): Promise<void> {
9   const q = utils.queryInterface
10
11   const data = {
12     type: Sequelize.INTEGER,
13     allowNull: false,
14     defaultValue: 0
15   }
16
17   return q.addColumn('Videos', 'licence', data)
18     .then(() => {
19       data.defaultValue = null
20       return q.changeColumn('Videos', 'licence', data)
21     })
22 }
23
24 function down (options) {
25   throw new Error('Not implemented.')
26 }
27
28 export {
29   up,
30   down
31 }