| 1234567891011121314151617181920212223242526272829303132 |
- import mongoose from 'mongoose';
- import userModelFactory from '~/server/models/user';
- import UserGroupRelation from '~/server/models/user-group-relation';
- import { getMongoUri, mongoOptions } from '~/server/util/mongoose-utils';
- import loggerFactory from '~/utils/logger';
- const logger = loggerFactory('growi:migrate:remove-deleteduser-from-relationgroup');
- module.exports = {
- async up(db) {
- logger.info('Apply migration');
- mongoose.connect(getMongoUri(), mongoOptions);
- const User = userModelFactory();
- const deletedUsers = await User.find({ status: 4 }); // deleted user
- const requests = await UserGroupRelation.remove({ relatedUser: deletedUsers });
- if (requests.size === 0) {
- return logger.info('This migration terminates without any changes.');
- }
- logger.info('Migration has successfully applied');
- },
- down(db, next) {
- // do not rollback
- next();
- },
- };
|