]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blob - server/initializers/migrations/0010-email-user.ts
Use global uuid instead of remoteId for videos
[github/Chocobozzz/PeerTube.git] / server / initializers / migrations / 0010-email-user.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.STRING(400),
13 allowNull: false,
14 defaultValue: ''
15 }
16 return q.addColumn('Users', 'email', data)
17 .then(() => {
18 const query = 'UPDATE "Users" SET "email" = CONCAT("username", \'@example.com\')'
19 return utils.sequelize.query(query, { transaction: utils.transaction })
20 })
21 .then(() => {
22 data.defaultValue = null
23
24 return q.changeColumn('Users', 'email', data)
25 })
26 }
27
28 function down (options) {
29 throw new Error('Not implemented.')
30 }
31
32 export {
33 up,
34 down
35 }