Home / Function/ preparePgPush() — drizzle-orm Function Reference

preparePgPush() — drizzle-orm Function Reference

Architecture documentation for the preparePgPush() function in migrate.ts from the drizzle-orm codebase.

Entity Profile

Dependency Diagram

graph TD
  64dd46c3_600a_69ef_c92f_904881477e81["preparePgPush()"]
  b14d3855_8cce_38c9_8952_a9d014c2fb1b["migrate.ts"]
  64dd46c3_600a_69ef_c92f_904881477e81 -->|defined in| b14d3855_8cce_38c9_8952_a9d014c2fb1b
  60cccf3e_0a08_14d7_0d22_dfaeb6777eb0["squashPgScheme()"]
  64dd46c3_600a_69ef_c92f_904881477e81 -->|calls| 60cccf3e_0a08_14d7_0d22_dfaeb6777eb0
  c7a398db_43c9_7771_09b7_73bc09e703e8["applyPgSnapshotsDiff()"]
  64dd46c3_600a_69ef_c92f_904881477e81 -->|calls| c7a398db_43c9_7771_09b7_73bc09e703e8
  style 64dd46c3_600a_69ef_c92f_904881477e81 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

drizzle-kit/src/cli/commands/migrate.ts lines 409–437

export const preparePgPush = async (
	cur: PgSchema,
	prev: PgSchema,
) => {
	const validatedPrev = pgSchema.parse(prev);
	const validatedCur = pgSchema.parse(cur);

	const squashedPrev = squashPgScheme(validatedPrev, 'push');
	const squashedCur = squashPgScheme(validatedCur, 'push');

	const { sqlStatements, statements, _meta } = await applyPgSnapshotsDiff(
		squashedPrev,
		squashedCur,
		schemasResolver,
		enumsResolver,
		sequencesResolver,
		policyResolver,
		indPolicyResolver,
		roleResolver,
		tablesResolver,
		columnsResolver,
		viewsResolver,
		validatedPrev,
		validatedCur,
		'push',
	);

	return { sqlStatements, statements, squashedPrev, squashedCur };
};

Domain

Subdomains

Frequently Asked Questions

What does preparePgPush() do?
preparePgPush() is a function in the drizzle-orm codebase, defined in drizzle-kit/src/cli/commands/migrate.ts.
Where is preparePgPush() defined?
preparePgPush() is defined in drizzle-kit/src/cli/commands/migrate.ts at line 409.
What does preparePgPush() call?
preparePgPush() calls 2 function(s): applyPgSnapshotsDiff, squashPgScheme.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free