@joakimbugge/typeorm-seeder / RunSeedersOptions
Interface: RunSeedersOptions
Defined in: seeder/runner.ts:12
Options for runSeeders. Extends SeedContext with lifecycle hooks and logging control.
Extends
Properties
dataSource?
optional dataSource?: DataSource;Defined in: seed/registry.ts:20
The TypeORM DataSource. Automatically set by save/saveMany calls. Also available in factory callbacks — useful for looking up existing entities instead of creating new ones:
Example
@Seed(async ({ dataSource }) => dataSource.getRepository(Role).findOneByOrFail({ name: 'admin' }))
role!: RoleInherited from
logger?
optional logger?: SeederLogger;Defined in: seeder/runner.ts:29
Custom logger used when logging is true. Ignored for other logging values. Defaults to ConsoleLogger when omitted.
logging?
optional logging?: boolean | "typeorm";Defined in: seeder/runner.ts:24
Controls seeder progress output.
false(default) — no output.true— logs via ConsoleLogger (or a custom SeederLogger if logger is provided).'typeorm'— delegates to the TypeORM logger on the provideddataSource. Output follows TypeORM's ownloggingconfiguration: if TypeORM logging is disabled, seeder output is suppressed too. Silently no-ops when nodataSourceis available.
Default
falseonAfter?
optional onAfter?: (seeder, durationMs) => void | Promise<void>;Defined in: seeder/runner.ts:33
Called after each seeder completes successfully, with the time it took in milliseconds.
Parameters
seeder
durationMs
number
Returns
void | Promise<void>
onBefore?
optional onBefore?: (seeder) => void | Promise<void>;Defined in: seeder/runner.ts:31
Called before each seeder runs, in execution order.
Parameters
seeder
Returns
void | Promise<void>
onError?
optional onError?: (seeder, error) => void | Promise<void>;Defined in: seeder/runner.ts:35
Called when a seeder throws. The error is re-thrown after this callback returns.
Parameters
seeder
error
unknown
Returns
void | Promise<void>
relations?
optional relations?: boolean;Defined in: seed/registry.ts:29
Set to false to skip automatic relation seeding. Scalar and embedded properties are still seeded; only relation properties decorated with a bare @Seed() are skipped. Useful when you want to create flat entities and wire relations yourself.
Default
trueInherited from
skip?
optional skip?: (seeder) => boolean | Promise<boolean>;Defined in: seeder/runner.ts:37
Called for each seeder before it runs. Return true to skip it entirely.
Parameters
seeder
Returns
boolean | Promise<boolean>