Ir al contenido

CLI

Manejo de ciclo de vida del schema y tareas relacionadas

Sección titulada «Manejo de ciclo de vida del schema y tareas relacionadas»

La CLI de jsorm maneja inicialización, introspección de schema, migraciones, health checks y queries ad-hoc.

Ventana de terminal
# Ejecutar init (no requiere instalación global previa)
pnpm dlx jsorm@latest init
# O con npm
npx jsorm@latest init

Cuando jsorm.config.ts está configurado, la mayoría de comandos no requieren argumentos adicionales:

Ventana de terminal
jsorm migrate:status # muestra pendientes vs aplicadas
jsorm migrate # aplica todas las pendientes
jsorm db:check # verifica conectividad

Inicializa jsorm en un proyecto nuevo o existente. Guiado de forma interactiva:

Ventana de terminal
pnpm dlx jsorm@latest init

Genera jsorm.config.ts, descarga el engine binario de Rust, instala adaptador y peer dependency, e imprime próximos pasos.


Imprime el DDL SQL para crear una tabla desde un modelo compilado:

Ventana de terminal
jsorm table:create ./dist/models.js User

Genera la declaración SQL de migración de un migration source:

Ventana de terminal
jsorm migrate:statement ./dist/schema.js ormSource

Genera un archivo de migración haciendo diff de los modelos actuales contra un snapshot almacenado:

Ventana de terminal
jsorm migrate:generate

Requiere generateSource definido en jsorm.config.ts. Emite un archivo de migración con timestamp.


Aplica todas las migraciones pendientes:

Ventana de terminal
jsorm migrate
jsorm migrate ./dist/schema.js ormSource # modo módulo

Aplica la siguiente migración:

Ventana de terminal
jsorm migrate:up

Revierte el último batch de migraciones:

Ventana de terminal
jsorm migrate:down

Lista el estado actual de todas las migraciones:

Ventana de terminal
jsorm migrate:status

Elimina el schema y re-ejecuta todas las migraciones desde cero:

Ventana de terminal
JSORM_ALLOW_UNSAFE_OPERATIONS=true jsorm db:fresh

Revierte todas las migraciones aplicadas:

Ventana de terminal
JSORM_ALLOW_UNSAFE_OPERATIONS=true jsorm db:rollback

Verifica conectividad de base de datos contra todos los connection sources configurados:

Ventana de terminal
jsorm db:check

Equivale a jsorm.healthCheck() por programación.


Ejecuta una función seed contra la base de datos configurada:

Ventana de terminal
jsorm db:seed ./dist/seed.js runSeed

ComandoSeguro en prodRequiere override
migrate
migrate:up
migrate:status
migrate:generate
db:check
migrate:down⚠️JSORM_ALLOW_UNSAFE_OPERATIONS=true
db:rollbackJSORM_ALLOW_UNSAFE_OPERATIONS=true
db:freshJSORM_ALLOW_UNSAFE_OPERATIONS=true
VariableDescripción
DATABASE_URLSobreescribe la connection string del connection source por defecto
JSORM_DEBUGActiva logging de resolución de config y ejecución del engine
JSORM_ALLOW_UNSAFE_OPERATIONSPermite comandos destructivos (e.g. db:fresh, db:rollback)
JSORM_LIMIT_DEFAULTSobreescribe el límite por defecto de 150 filas cuando no se especifica paginación

Pasa el archivo JS compilado y el nombre exportado cuando no uses config-first:

Ventana de terminal
jsorm migrate ./dist/schema.js ormSource
jsorm migrate:up ./dist/schema.js ormSource
jsorm migrate:down ./dist/schema.js ormSource
jsorm migrate:status ./dist/schema.js ormSource