mirror of
https://github.com/arthur-pbty/portfolio2023.git
synced 2026-06-04 07:46:21 +02:00
40 lines
1.2 KiB
TypeScript
40 lines
1.2 KiB
TypeScript
import { BaseCommand } from '@adonisjs/core/build/standalone';
|
|
import { MigratedFileNode, MigratorContract } from '@ioc:Adonis/Lucid/Migrator';
|
|
/**
|
|
* Base class to execute migrations and print logs
|
|
*/
|
|
export default abstract class MigrationsBase extends BaseCommand {
|
|
/**
|
|
* Should print one-liner compact output
|
|
*/
|
|
protected compactOutput: boolean;
|
|
/**
|
|
* Not a valid connection
|
|
*/
|
|
protected printNotAValidConnection(connection: string): void;
|
|
/**
|
|
* Prompts to take consent for running migrations in production
|
|
*/
|
|
protected takeProductionConstent(): Promise<boolean>;
|
|
/**
|
|
* Returns beautified log message string
|
|
*/
|
|
protected printLogMessage(file: MigratedFileNode, direction: 'down' | 'up'): void;
|
|
/**
|
|
* Pretty print sql queries of a file
|
|
*/
|
|
private prettyPrintSql;
|
|
/**
|
|
* Log final status with verbose output
|
|
*/
|
|
private logVerboseFinalStatus;
|
|
/**
|
|
* Log final status with compact output
|
|
*/
|
|
private logCompactFinalStatus;
|
|
/**
|
|
* Runs the migrations using the migrator
|
|
*/
|
|
protected runMigrations(migrator: MigratorContract, connectionName: string): Promise<void>;
|
|
}
|