Migrationsファイルを作成する
Package.json の script から一部抜粋
GROWI では Migration に関する Script が整備されている。
package.json"migrate": "npm run migrate:up", "migrate:create": "migrate-mongo create -f config/migrate.js -- ", "migrate:status": "migrate-mongo status -f config/migrate.js", "migrate:up": "migrate-mongo up -f config/migrate.js", "migrate:down": "migrate-mongo down -f config/migrate.js",
Migration file を作成する。
yarn migrate:create ${作成したいファイル名}
を実行することで、ファイルが作成される。
ファイルの形式は ${実行した時間}-${ファイル名}.js
20200420040308-create-sample-file.jsmodule.exports = { async up(db, client) { // TODO write your migration here. // See https://github.com/seppevs/migrate-mongo/#creating-a-new-migration-script // Example: // await db.collection('albums').updateOne({artist: 'The Beatles'}, {$set: {blacklisted: true}}); }, async down(db, client) { // TODO write the statements to rollback your migration (if possible) // Example: // await db.collection('albums').updateOne({artist: 'The Beatles'}, {$set: {blacklisted: false}}); } };
既に実行されたかどうかを判断する
(TBD)
Migrate Up と Down の違い
(TBD)