migrate-mongo-config.js 868 B

123456789101112131415161718192021222324252627282930313233343536
  1. /**
  2. * Configuration file for migrate-mongo
  3. * @see https://github.com/seppevs/migrate-mongo
  4. *
  5. * @author Yuki Takei <yuki@weseek.co.jp>
  6. */
  7. const isProduction = process.env.NODE_ENV === 'production';
  8. const { URL } = require('node:url');
  9. const { getMongoUri, mongoOptions } = isProduction
  10. ? require('../dist/server/util/mongoose-utils')
  11. : require('../src/server/util/mongoose-utils');
  12. // get migrationsDir from env var
  13. const migrationsDir = process.env.MIGRATIONS_DIR;
  14. if (migrationsDir == null) {
  15. throw new Error('An env var MIGRATIONS_DIR must be set.');
  16. }
  17. const mongoUri = getMongoUri();
  18. // parse url
  19. const url = new URL(mongoUri);
  20. const mongodb = {
  21. url: mongoUri,
  22. databaseName: url.pathname.substring(1), // omit heading slash
  23. options: mongoOptions,
  24. };
  25. module.exports = {
  26. mongodb,
  27. migrationsDir,
  28. changelogCollectionName: 'migrations',
  29. };