@sologence/nestjs-redshift-migration
Version:
NestJS migration module for Redshift data migration
47 lines (46 loc) • 1.66 kB
TypeScript
import { OnModuleInit } from '@nestjs/common';
import { DataSource } from 'typeorm';
import { MigrationModuleOptions } from './interfaces/migration-options.interface';
import { StatusOptions } from './constants/status';
import { MigrationDto } from './dto/migration.dto';
export declare class MigrationService implements OnModuleInit {
private readonly options;
private readonly dataSource;
private logger;
private readonly migration_dir_key_prefix;
private readonly uploadPath;
private readonly migrationFolderName;
private s3;
private readonly migrationDirKey;
constructor(options: MigrationModuleOptions, dataSource: DataSource);
private createMigrationTableIfNotExists;
private getQueryRunner;
private getLastSuccessfullMigrationRecord;
private readMigrationFile;
private updateMigrationHistory;
private uploadMigraionFileOnS3;
private assureMigrationTrackingExist;
private checkSrcFolderExistsInDist;
private getMigrationFolderPath;
private runMigration;
private checkDirectoryExist;
triggerMigration(): Promise<{
msg: StatusOptions;
}>;
private checkFileExists;
private runRevertMigraion;
private deleteFromMigrationHistory;
revertMigrationFile(filename: string): Promise<{
msg: StatusOptions;
description: string;
}>;
runSpecificMigration(migrationDto: MigrationDto): Promise<{
msg: StatusOptions;
description: string;
}>;
revertSpecificMigration(migrationDto: MigrationDto): Promise<{
msg: StatusOptions;
description: string;
}>;
onModuleInit(): Promise<void>;
}