Skip to content

Commit 66fc817

Browse files
committed
fix: Fixed sequelize-cli db:migration cannot stop when occur error
Up and Down method must return a Promise. breaking changes: docker-hackmd cannot initialize, because db:migration will fail
1 parent cdd8a72 commit 66fc817

5 files changed

Lines changed: 51 additions & 41 deletions
Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,14 @@
11
'use strict'
22
module.exports = {
33
up: function (queryInterface, Sequelize) {
4-
queryInterface.addColumn('Users', 'accessToken', Sequelize.STRING)
5-
queryInterface.addColumn('Users', 'refreshToken', Sequelize.STRING)
4+
return queryInterface.addColumn('Users', 'accessToken', Sequelize.STRING).then(function () {
5+
return queryInterface.addColumn('Users', 'refreshToken', Sequelize.STRING)
6+
})
67
},
78

89
down: function (queryInterface, Sequelize) {
9-
queryInterface.removeColumn('Users', 'accessToken')
10-
queryInterface.removeColumn('Users', 'refreshToken')
10+
return queryInterface.removeColumn('Users', 'accessToken').then(function () {
11+
return queryInterface.removeColumn('Users', 'refreshToken')
12+
})
1113
}
1214
}
Lines changed: 17 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,26 @@
11
'use strict'
22
module.exports = {
33
up: function (queryInterface, Sequelize) {
4-
queryInterface.addColumn('Notes', 'savedAt', Sequelize.DATE)
5-
queryInterface.createTable('Revisions', {
6-
id: {
7-
type: Sequelize.UUID,
8-
primaryKey: true
9-
},
10-
noteId: Sequelize.UUID,
11-
patch: Sequelize.TEXT,
12-
lastContent: Sequelize.TEXT,
13-
content: Sequelize.TEXT,
14-
length: Sequelize.INTEGER,
15-
createdAt: Sequelize.DATE,
16-
updatedAt: Sequelize.DATE
4+
return queryInterface.addColumn('Notes', 'savedAt', Sequelize.DATE).then(function () {
5+
return queryInterface.createTable('Revisions', {
6+
id: {
7+
type: Sequelize.UUID,
8+
primaryKey: true
9+
},
10+
noteId: Sequelize.UUID,
11+
patch: Sequelize.TEXT,
12+
lastContent: Sequelize.TEXT,
13+
content: Sequelize.TEXT,
14+
length: Sequelize.INTEGER,
15+
createdAt: Sequelize.DATE,
16+
updatedAt: Sequelize.DATE
17+
})
1718
})
1819
},
1920

2021
down: function (queryInterface, Sequelize) {
21-
queryInterface.dropTable('Revisions')
22-
queryInterface.removeColumn('Notes', 'savedAt')
22+
return queryInterface.dropTable('Revisions').then(function () {
23+
return queryInterface.removeColumn('Notes', 'savedAt')
24+
})
2325
}
2426
}
Lines changed: 20 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,29 @@
11
'use strict'
22
module.exports = {
33
up: function (queryInterface, Sequelize) {
4-
queryInterface.addColumn('Notes', 'authorship', Sequelize.TEXT)
5-
queryInterface.addColumn('Revisions', 'authorship', Sequelize.TEXT)
6-
queryInterface.createTable('Authors', {
7-
id: {
8-
type: Sequelize.INTEGER,
9-
primaryKey: true,
10-
autoIncrement: true
11-
},
12-
color: Sequelize.STRING,
13-
noteId: Sequelize.UUID,
14-
userId: Sequelize.UUID,
15-
createdAt: Sequelize.DATE,
16-
updatedAt: Sequelize.DATE
4+
return queryInterface.addColumn('Notes', 'authorship', Sequelize.TEXT).then(function () {
5+
return queryInterface.addColumn('Revisions', 'authorship', Sequelize.TEXT)
6+
}).then(function () {
7+
return queryInterface.createTable('Authors', {
8+
id: {
9+
type: Sequelize.INTEGER,
10+
primaryKey: true,
11+
autoIncrement: true
12+
},
13+
color: Sequelize.STRING,
14+
noteId: Sequelize.UUID,
15+
userId: Sequelize.UUID,
16+
createdAt: Sequelize.DATE,
17+
updatedAt: Sequelize.DATE
18+
})
1719
})
1820
},
1921

2022
down: function (queryInterface, Sequelize) {
21-
queryInterface.dropTable('Authors')
22-
queryInterface.removeColumn('Revisions', 'authorship')
23-
queryInterface.removeColumn('Notes', 'authorship')
23+
return queryInterface.dropTable('Authors').then(function () {
24+
return queryInterface.removeColumn('Revisions', 'authorship')
25+
}).then(function () {
26+
return queryInterface.removeColumn('Notes', 'authorship')
27+
})
2428
}
2529
}
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
'use strict'
22
module.exports = {
33
up: function (queryInterface, Sequelize) {
4-
queryInterface.addColumn('Notes', 'deletedAt', Sequelize.DATE)
4+
return queryInterface.addColumn('Notes', 'deletedAt', Sequelize.DATE)
55
},
66

77
down: function (queryInterface, Sequelize) {
8-
queryInterface.removeColumn('Notes', 'deletedAt')
8+
return queryInterface.removeColumn('Notes', 'deletedAt')
99
}
1010
}
Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,14 @@
11
'use strict'
22
module.exports = {
33
up: function (queryInterface, Sequelize) {
4-
queryInterface.addColumn('Users', 'email', Sequelize.TEXT)
5-
queryInterface.addColumn('Users', 'password', Sequelize.TEXT)
4+
return queryInterface.addColumn('Users', 'email', Sequelize.TEXT).then(function () {
5+
return queryInterface.addColumn('Users', 'password', Sequelize.TEXT)
6+
})
67
},
78

89
down: function (queryInterface, Sequelize) {
9-
queryInterface.removeColumn('Users', 'email')
10-
queryInterface.removeColumn('Users', 'password')
10+
return queryInterface.removeColumn('Users', 'email').then(function () {
11+
return queryInterface.removeColumn('Users', 'password')
12+
})
1113
}
1214
}

0 commit comments

Comments
 (0)