Merge pull request #406 from hackmdio/feature/add_missing_migration
fix: Add missing migration
This commit is contained in:
commit
0b4dac74ed
8 changed files with 168 additions and 0 deletions
24
lib/migrations/20150504155329-create-users.js
Normal file
24
lib/migrations/20150504155329-create-users.js
Normal file
|
@ -0,0 +1,24 @@
|
|||
'use strict'
|
||||
module.exports = {
|
||||
up: function (queryInterface, Sequelize) {
|
||||
return queryInterface.createTable('Users', {
|
||||
id: {
|
||||
type: Sequelize.UUID,
|
||||
primaryKey: true,
|
||||
defaultValue: Sequelize.UUIDV4
|
||||
},
|
||||
profileid: {
|
||||
type: Sequelize.STRING,
|
||||
unique: true
|
||||
},
|
||||
profile: Sequelize.TEXT,
|
||||
history: Sequelize.TEXT,
|
||||
createdAt: Sequelize.DATE,
|
||||
updatedAt: Sequelize.DATE
|
||||
})
|
||||
},
|
||||
|
||||
down: function (queryInterface, Sequelize) {
|
||||
return queryInterface.dropTable('Users')
|
||||
}
|
||||
}
|
21
lib/migrations/20150508114741-create-notes.js
Normal file
21
lib/migrations/20150508114741-create-notes.js
Normal file
|
@ -0,0 +1,21 @@
|
|||
'use strict'
|
||||
module.exports = {
|
||||
up: function (queryInterface, Sequelize) {
|
||||
return queryInterface.createTable('Notes', {
|
||||
id: {
|
||||
type: Sequelize.UUID,
|
||||
primaryKey: true,
|
||||
defaultValue: Sequelize.UUIDV4
|
||||
},
|
||||
ownerId: Sequelize.UUID,
|
||||
content: Sequelize.TEXT,
|
||||
title: Sequelize.STRING,
|
||||
createdAt: Sequelize.DATE,
|
||||
updatedAt: Sequelize.DATE
|
||||
})
|
||||
},
|
||||
|
||||
down: function (queryInterface, Sequelize) {
|
||||
return queryInterface.dropTable('Notes')
|
||||
}
|
||||
}
|
18
lib/migrations/20150515125813-create-temp.js
Normal file
18
lib/migrations/20150515125813-create-temp.js
Normal file
|
@ -0,0 +1,18 @@
|
|||
'use strict'
|
||||
module.exports = {
|
||||
up: function (queryInterface, Sequelize) {
|
||||
return queryInterface.createTable('Temp', {
|
||||
id: {
|
||||
type: Sequelize.STRING,
|
||||
primaryKey: true
|
||||
},
|
||||
date: Sequelize.TEXT,
|
||||
createdAt: Sequelize.DATE,
|
||||
updatedAt: Sequelize.DATE
|
||||
})
|
||||
},
|
||||
|
||||
down: function (queryInterface, Sequelize) {
|
||||
return queryInterface.dropTable('Temp')
|
||||
}
|
||||
}
|
38
lib/migrations/20150702001020-update-to-0_3_1.js
Normal file
38
lib/migrations/20150702001020-update-to-0_3_1.js
Normal file
|
@ -0,0 +1,38 @@
|
|||
'use strict'
|
||||
module.exports = {
|
||||
up: function (queryInterface, Sequelize) {
|
||||
return queryInterface.addColumn('Notes', 'shortid', {
|
||||
type: Sequelize.STRING,
|
||||
defaultValue: '0000000000',
|
||||
allowNull: false
|
||||
}).then(function () {
|
||||
return queryInterface.addIndex('Notes', ['shortid'], {
|
||||
indicesType: 'UNIQUE'
|
||||
})
|
||||
}).then(function () {
|
||||
return queryInterface.addColumn('Notes', 'permission', {
|
||||
type: Sequelize.STRING,
|
||||
defaultValue: 'private',
|
||||
allowNull: false
|
||||
})
|
||||
}).then(function () {
|
||||
return queryInterface.addColumn('Notes', 'viewcount', {
|
||||
type: Sequelize.INTEGER,
|
||||
defaultValue: 0
|
||||
})
|
||||
})
|
||||
},
|
||||
|
||||
down: function (queryInterface, Sequelize) {
|
||||
return queryInterface.removeColumn('Notes', 'viewcount')
|
||||
.then(function () {
|
||||
return queryInterface.removeColumn('Notes', 'permission')
|
||||
})
|
||||
.then(function () {
|
||||
return queryInterface.removeIndex('Notes', ['shortid'])
|
||||
})
|
||||
.then(function () {
|
||||
return queryInterface.removeColumn('Notes', 'shortid')
|
||||
})
|
||||
}
|
||||
}
|
25
lib/migrations/20150915153700-change-notes-title-to-text.js
Normal file
25
lib/migrations/20150915153700-change-notes-title-to-text.js
Normal file
|
@ -0,0 +1,25 @@
|
|||
'use strict'
|
||||
const isSQLite = require('../utils').isSQLite
|
||||
module.exports = {
|
||||
up: function (queryInterface, Sequelize) {
|
||||
return queryInterface.changeColumn('Notes', 'title', {
|
||||
type: Sequelize.TEXT
|
||||
}).then(function () {
|
||||
if (isSQLite(queryInterface.sequelize)) {
|
||||
// manual added index will be removed in sqlite
|
||||
return queryInterface.addIndex('Notes', ['shortid'])
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
down: function (queryInterface, Sequelize) {
|
||||
return queryInterface.changeColumn('Notes', 'title', {
|
||||
type: Sequelize.STRING
|
||||
}).then(function () {
|
||||
if (isSQLite(queryInterface.sequelize)) {
|
||||
// manual added index will be removed in sqlite
|
||||
return queryInterface.addIndex('Notes', ['shortid'])
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
19
lib/migrations/20160112220142-note-add-lastchange.js
Normal file
19
lib/migrations/20160112220142-note-add-lastchange.js
Normal file
|
@ -0,0 +1,19 @@
|
|||
'use strict'
|
||||
module.exports = {
|
||||
up: function (queryInterface, Sequelize) {
|
||||
return queryInterface.addColumn('Notes', 'lastchangeuserId', {
|
||||
type: Sequelize.UUID
|
||||
}).then(function () {
|
||||
return queryInterface.addColumn('Notes', 'lastchangeAt', {
|
||||
type: Sequelize.DATE
|
||||
})
|
||||
})
|
||||
},
|
||||
|
||||
down: function (queryInterface, Sequelize) {
|
||||
return queryInterface.removeColumn('Notes', 'lastchangeAt')
|
||||
.then(function () {
|
||||
return queryInterface.removeColumn('Notes', 'lastchangeuserId')
|
||||
})
|
||||
}
|
||||
}
|
18
lib/migrations/20160420180355-note-add-alias.js
Normal file
18
lib/migrations/20160420180355-note-add-alias.js
Normal file
|
@ -0,0 +1,18 @@
|
|||
'use strict'
|
||||
module.exports = {
|
||||
up: function (queryInterface, Sequelize) {
|
||||
return queryInterface.addColumn('Notes', 'alias', {
|
||||
type: Sequelize.STRING
|
||||
}).then(function () {
|
||||
return queryInterface.addIndex('Notes', ['alias'], {
|
||||
indicesType: 'UNIQUE'
|
||||
})
|
||||
})
|
||||
},
|
||||
|
||||
down: function (queryInterface, Sequelize) {
|
||||
return queryInterface.removeColumn('Notes', 'alias').then(function () {
|
||||
return queryInterface.removeIndex('Notes', ['alias'])
|
||||
})
|
||||
}
|
||||
}
|
5
lib/utils.js
Normal file
5
lib/utils.js
Normal file
|
@ -0,0 +1,5 @@
|
|||
'use strict'
|
||||
|
||||
exports.isSQLite = function isSQLite (sequelize) {
|
||||
return sequelize.options.dialect === 'sqlite'
|
||||
}
|
Loading…
Reference in a new issue