UNPKG

@pushrocks/smartnginx

Version:

control nginx from node, TypeScript ready

49 lines 4.22 kB
"use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; Object.defineProperty(exports, "__esModule", { value: true }); const plugins = require("./smartnginx.plugins"); const paths = require("./smartnginx.paths"); const snippets = require("./smartnginx.snippets"); var hostTypes; (function (hostTypes) { hostTypes[hostTypes["reverseProxy"] = 0] = "reverseProxy"; })(hostTypes = exports.hostTypes || (exports.hostTypes = {})); /** * manages a single nginx host */ class NginxHost { constructor(smartnginxInstanceArg, optionsArg) { this.smartnginxInstance = smartnginxInstanceArg; this.hostName = optionsArg.hostName; this.destination = optionsArg.destination; this.destinationPort = optionsArg.destinationPort; this.privateKey = optionsArg.privateKey; this.publicKey = optionsArg.publicKey; } /** * * @param certInstanceArg */ deploy() { return __awaiter(this, void 0, void 0, function* () { const filePathConfig = plugins.path.join(paths.nginxHostDirPath, `${this.hostName}.conf`); const filePathPrivate = plugins.path.join(paths.nginxHostDirPath, `${this.hostName}.private.pem`); const filePathPublic = plugins.path.join(paths.nginxHostDirPath, `${this.hostName}.public.pem`); // writeConfig this.configString = snippets.getHostConfigString(this.hostName, this.destination, this.destinationPort); plugins.smartfile.memory.toFsSync(this.configString, filePathConfig); // write ssl plugins.smartfile.memory.toFsSync(this.privateKey, filePathPrivate); plugins.smartfile.memory.toFsSync(this.publicKey, filePathPublic); }); } } exports.NginxHost = NginxHost; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnRuZ2lueC5jbGFzc2VzLm5naW54aG9zdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3RzL3NtYXJ0bmdpbnguY2xhc3Nlcy5uZ2lueGhvc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztBQUFBLGdEQUFnRDtBQUNoRCw0Q0FBNEM7QUFDNUMsa0RBQWtEO0FBTWxELElBQVksU0FFWDtBQUZELFdBQVksU0FBUztJQUNuQix5REFBWSxDQUFBO0FBQ2QsQ0FBQyxFQUZXLFNBQVMsR0FBVCxpQkFBUyxLQUFULGlCQUFTLFFBRXBCO0FBRUQ7O0dBRUc7QUFDSCxNQUFhLFNBQVM7SUFhcEIsWUFBWSxxQkFBaUMsRUFBRSxVQUF1QjtRQUNwRSxJQUFJLENBQUMsa0JBQWtCLEdBQUcscUJBQXFCLENBQUM7UUFDaEQsSUFBSSxDQUFDLFFBQVEsR0FBRyxVQUFVLENBQUMsUUFBUSxDQUFDO1FBQ3BDLElBQUksQ0FBQyxXQUFXLEdBQUcsVUFBVSxDQUFDLFdBQVcsQ0FBQztRQUMxQyxJQUFJLENBQUMsZUFBZSxHQUFHLFVBQVUsQ0FBQyxlQUFlLENBQUM7UUFDbEQsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUMsVUFBVSxDQUFDO1FBQ3hDLElBQUksQ0FBQyxTQUFTLEdBQUcsVUFBVSxDQUFDLFNBQVMsQ0FBQztJQUN4QyxDQUFDO0lBRUQ7OztPQUdHO0lBQ1UsTUFBTTs7WUFDakIsTUFBTSxjQUFjLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGdCQUFnQixFQUFHLEdBQUcsSUFBSSxDQUFDLFFBQVEsT0FBTyxDQUFDLENBQUM7WUFDM0YsTUFBTSxlQUFlLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGdCQUFnQixFQUFHLEdBQUcsSUFBSSxDQUFDLFFBQVEsY0FBYyxDQUFDLENBQUM7WUFDbkcsTUFBTSxjQUFjLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGdCQUFnQixFQUFHLEdBQUcsSUFBSSxDQUFDLFFBQVEsYUFBYSxDQUFDLENBQUM7WUFHakcsY0FBYztZQUNkLElBQUksQ0FBQyxZQUFZLEdBQUcsUUFBUSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7WUFDeEcsT0FBTyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsY0FBYyxDQUFDLENBQUM7WUFFckUsWUFBWTtZQUNaLE9BQU8sQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLGVBQWUsQ0FBQyxDQUFDO1lBQ3BFLE9BQU8sQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLGNBQWMsQ0FBQyxDQUFDO1FBRXBFLENBQUM7S0FBQTtDQUNGO0FBekNELDhCQXlDQyJ9