This repository has been archived on 2022-08-14. You can view files and clone it, but cannot push or open issues or pull requests.
outline/server/migrations/20210730210120-add-fileOperations.js
Saumya Pandey 00ba65f3ef
fix: Refactor collection exports to not send email attachment (#2460)
Co-authored-by: Tom Moor <tom.moor@gmail.com>
2021-08-29 02:57:07 +05:30

66 lines
1.5 KiB
JavaScript

'use strict';
module.exports = {
up: async (queryInterface, Sequelize) => {
await queryInterface.createTable("file_operations",{
id: {
type: Sequelize.UUID,
allowNull: false,
primaryKey: true,
},
state: {
type: Sequelize.ENUM("creating", "uploading", "complete", "error","expired"),
allowNull: false,
},
type: {
type: Sequelize.ENUM("import", "export"),
allowNull: false,
},
key: {
type: Sequelize.STRING,
},
url: {
type: Sequelize.STRING,
},
size: {
type: Sequelize.BIGINT,
allowNull: false,
},
userId: {
type: Sequelize.UUID,
allowNull: false,
references: {
model: "users"
}
},
collectionId: {
type: Sequelize.UUID,
references: {
model: "collections"
}
},
teamId: {
type: Sequelize.UUID,
allowNull: false,
references: {
model: "teams"
}
},
createdAt: {
type: Sequelize.DATE,
allowNull: false,
},
updatedAt: {
type: Sequelize.DATE,
allowNull: false,
},
})
await queryInterface.addIndex('file_operations', ["type", "state"])
},
down: async (queryInterface, Sequelize) => {
await queryInterface.removeIndex('file_operations', ["type", "state"]);
await queryInterface.dropTable('file_operations');
}
};