diff --git a/tools/migration/change-gridfs-metadata-name-to-filename.js b/tools/migration/change-gridfs-metadata-name-to-filename.js new file mode 100644 index 000000000..0d9e977c6 --- /dev/null +++ b/tools/migration/change-gridfs-metadata-name-to-filename.js @@ -0,0 +1,30 @@ +// for Node.js interpret +/** + * change usage of GridFS filename + * see commit fb422b4d603c53a70712caba55b35a48a8c2e619 + */ + +const { default: DriveFile } = require('../../built/api/models/drive-file') + +async function applyNewChange (doc) { + const result = await DriveFile.update(doc._id, { + $set: { + filename: doc.metadata.name + }, + $unset: { + 'metadata.name': '' + } + }) + return result.ok === 1 +} + +async function main () { + const oldTypeDocs = await DriveFile.find({ + 'metadata.name': { + $exists: true + } + }) + return await Promise.all(oldTypeDocs.map(applyNewChange)) +} + +main().then(console.dir).catch(console.error)