aboutsummaryrefslogtreecommitdiffhomepage
path: root/server/initializers
diff options
context:
space:
mode:
authorChocobozzz <me@florianbigard.com>2023-06-19 09:55:56 +0200
committerChocobozzz <me@florianbigard.com>2023-06-29 10:19:33 +0200
commit109d4a7f017e5ba18045f308158a71399a1b08cd (patch)
tree26f00954a3e0c145c21f111ce1af0cc3230b75db /server/initializers
parent89becbcb37386147c35b03c7b47985ea85d73f44 (diff)
downloadPeerTube-109d4a7f017e5ba18045f308158a71399a1b08cd.tar.gz
PeerTube-109d4a7f017e5ba18045f308158a71399a1b08cd.tar.zst
PeerTube-109d4a7f017e5ba18045f308158a71399a1b08cd.zip
Add thumbnail disk database migration
Diffstat (limited to 'server/initializers')
-rw-r--r--server/initializers/migrations/0780-thumbnail-disk.ts47
1 files changed, 47 insertions, 0 deletions
diff --git a/server/initializers/migrations/0780-thumbnail-disk.ts b/server/initializers/migrations/0780-thumbnail-disk.ts
new file mode 100644
index 000000000..0824c042e
--- /dev/null
+++ b/server/initializers/migrations/0780-thumbnail-disk.ts
@@ -0,0 +1,47 @@
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 const { transaction } = utils
9
10 {
11 const data = {
12 type: Sequelize.BOOLEAN,
13 allowNull: true,
14 defaultValue: true
15 }
16
17 await utils.queryInterface.addColumn('thumbnail', 'onDisk', data, { transaction })
18 }
19
20 {
21 // Remote previews are not on the disk
22 await utils.sequelize.query(
23 'UPDATE "thumbnail" SET "onDisk" = FALSE ' +
24 'WHERE "type" = 2 AND "videoId" NOT IN (SELECT "id" FROM "video" WHERE "remote" IS FALSE)',
25 { transaction }
26 )
27 }
28
29 {
30 const data = {
31 type: Sequelize.BOOLEAN,
32 allowNull: false,
33 defaultValue: null
34 }
35
36 await utils.queryInterface.changeColumn('thumbnail', 'onDisk', data, { transaction })
37 }
38}
39
40function down (options) {
41 throw new Error('Not implemented.')
42}
43
44export {
45 up,
46 down
47}