UNPKG

@nestjs-mod/flyway

Version:

Flyway - utility for working with database migrations (official site: https://flywaydb.org, preview version only for Postgres)

56 lines 1.97 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.FlywayConfigFileService = void 0; const tslib_1 = require("tslib"); const common_1 = require("@nestjs/common"); const fs_1 = require("fs"); const path_1 = require("path"); const flyway_errors_1 = require("../flyway-errors"); const flyway_configuration_1 = require("../flyway.configuration"); let FlywayConfigFileService = class FlywayConfigFileService { constructor(flywayConfiguration) { this.flywayConfiguration = flywayConfiguration; } getFlywayConfigFilePath() { if (!this.flywayConfiguration.configFile) { throw new flyway_errors_1.FlywayError('flywayConfigFile not set'); } return this.flywayConfiguration.configFile; } read() { const flywayConfigFile = this.getFlywayConfigFilePath(); if (!flywayConfigFile) { return undefined; } try { return (0, fs_1.readFileSync)(flywayConfigFile).toString(); } catch (err) { return undefined; } } write(data) { const flywayConfigFile = this.getFlywayConfigFilePath(); if (!flywayConfigFile) { return; } try { const fileDir = (0, path_1.dirname)(flywayConfigFile); if (fileDir) { if (!(0, fs_1.existsSync)(fileDir)) { (0, fs_1.mkdirSync)(fileDir, { recursive: true }); } (0, fs_1.writeFileSync)(flywayConfigFile, data); } } catch (err) { // } } }; exports.FlywayConfigFileService = FlywayConfigFileService; exports.FlywayConfigFileService = FlywayConfigFileService = tslib_1.__decorate([ (0, common_1.Injectable)(), tslib_1.__metadata("design:paramtypes", [flyway_configuration_1.FlywayConfiguration]) ], FlywayConfigFileService); //# sourceMappingURL=flyway-config-file.service.js.map