【NestJS】TypeORMError: No connection options were found in any orm configuration files.の解決方法


概要

Entityを基にmigrationを作成すると以下のエラーが発生したので解決方法をまとめる

npx ts-node ./node_modules/.bin/typeorm migration:generate --name user          

Error during migration generation:
TypeORMError: No connection options were found in any orm configuration files.

解決方法

ormconfig.tsをルートディレクトリに生成する

ormconfig.ts
module.exports = {
  type: 'mysql',
  host: process.env.DB_HOST || 'localhost',
  port: process.env.DB_PORT || '3306',
  username: process.env.DB_USERNAME || 'root',
  password: process.env.DB_PASSWORD || 'password',
  database: process.env.DB_NAME || 'meetup',
  synchronize: false,
  logging: true,
  entities: ['src/entities/*.ts'],
  migrations: ['src/databases/migrations/*.ts'],
  seeds: ['src/databases/seeders/*.seed.{js,ts}'],
  factories: ['src/databases/factories/*.factory.{js,ts}'],
  cli: {
    migrationsDir: 'src/databases/migrations',
    entitiesDir: 'src/entities',
    seedersDir: 'src/databases/seeders',
    factoriesDir: 'src/databases/factories',
  },
};

設定ファイルを定義することで成功します

npx ts-node ./node_modules/.bin/typeorm migration:generate --name user                    
Migration meet-up-dev/src/databases/migrations/1648319214540-user.ts has been generated successfully.