BREAKING CHANGE(scope): change scope to @pushrocks
This commit is contained in:
@ -1,74 +1,82 @@
|
||||
import * as plugins from "./smartnginx.plugins";
|
||||
import * as paths from "./smartnginx.paths";
|
||||
import { NginxConfig } from "./smartnginx.classes.nginxconfig";
|
||||
import { NginxHost } from "./smartnginx.classes.nginxhost";
|
||||
import * as plugins from './smartnginx.plugins';
|
||||
import * as paths from './smartnginx.paths';
|
||||
import { SmartNginx } from './smartnginx.classes.smartnginx';
|
||||
import { NginxHost } from './smartnginx.classes.nginxhost';
|
||||
|
||||
import { Smartshell } from '@pushrocks/smartshell';
|
||||
|
||||
/**
|
||||
* manages a nginxprocess for an NginxConfig
|
||||
*/
|
||||
export class NginxProcess {
|
||||
started: boolean = false;
|
||||
nginxConfig:NginxConfig;
|
||||
nginxChildProcess: plugins.childProcess.ChildProcess;
|
||||
constructor(nginxConfigArg) {
|
||||
this.nginxConfig = nginxConfigArg;
|
||||
};
|
||||
started: boolean = false;
|
||||
nginxConfig: SmartNginx;
|
||||
nginxChildProcess: plugins.childProcess.ChildProcess;
|
||||
smartshellInstance = new Smartshell({
|
||||
executor: 'bash'
|
||||
});
|
||||
constructor(nginxConfigArg) {
|
||||
this.nginxConfig = nginxConfigArg;
|
||||
}
|
||||
|
||||
/**
|
||||
* start nginx
|
||||
*/
|
||||
start() {
|
||||
let done = plugins.q.defer();
|
||||
if (typeof this.nginxChildProcess == "undefined"){
|
||||
this.nginxChildProcess = plugins.childProcess.exec(`nginx -c ${paths.nginxConfFile}`, function (error, stdout, stderr) {
|
||||
console.log(`stdout: ${stdout}`);
|
||||
console.log(`stderr: ${stderr}`);
|
||||
if (error !== null) {
|
||||
console.log(`exec error: ${error}`);
|
||||
};
|
||||
});
|
||||
};
|
||||
this.started = true;
|
||||
plugins.beautylog.info("started Nginx!");
|
||||
done.resolve();
|
||||
return done.promise;
|
||||
};
|
||||
/**
|
||||
* start nginx
|
||||
*/
|
||||
start() {
|
||||
let done = plugins.smartpromise.defer();
|
||||
if (typeof this.nginxChildProcess == 'undefined') {
|
||||
this.nginxChildProcess = plugins.childProcess.exec(
|
||||
`nginx -c ${paths.nginxConfFile}`,
|
||||
function(error, stdout, stderr) {
|
||||
console.log(`stdout: ${stdout}`);
|
||||
console.log(`stderr: ${stderr}`);
|
||||
if (error !== null) {
|
||||
console.log(`exec error: ${error}`);
|
||||
}
|
||||
}
|
||||
);
|
||||
}
|
||||
this.started = true;
|
||||
plugins.smartlog.defaultLogger.info('started Nginx!');
|
||||
done.resolve();
|
||||
return done.promise;
|
||||
}
|
||||
|
||||
/**
|
||||
* reload config
|
||||
*/
|
||||
reloadConfig(){
|
||||
let done = plugins.q.defer();
|
||||
if(this.started == false){
|
||||
this.start();
|
||||
} else {
|
||||
plugins.shelljs.exec("nginx -s reload");
|
||||
};
|
||||
plugins.beautylog.ok("NginxProcess has loaded the new config!")
|
||||
done.resolve();
|
||||
return done.promise;
|
||||
};
|
||||
/**
|
||||
* reload config
|
||||
*/
|
||||
reloadConfig() {
|
||||
let done = plugins.smartpromise.defer();
|
||||
if (this.started == false) {
|
||||
this.start();
|
||||
} else {
|
||||
this.smartshellInstance.exec('nginx -s reload');
|
||||
}
|
||||
plugins.smartlog.defaultLogger.info('NginxProcess has loaded the new config!');
|
||||
done.resolve();
|
||||
return done.promise;
|
||||
}
|
||||
|
||||
/**
|
||||
* stop the nginx instance
|
||||
*/
|
||||
stop() {
|
||||
let done = plugins.q.defer();
|
||||
if (typeof this.nginxChildProcess != "undefined") {
|
||||
plugins.shelljs.exec("nginx -s quit");
|
||||
this.started = false;
|
||||
plugins.beautylog.info("stopped Nginx!");
|
||||
} else {
|
||||
plugins.beautylog.log("nginx already stopped!");
|
||||
};
|
||||
done.resolve();
|
||||
return done.promise;
|
||||
};
|
||||
/**
|
||||
* stop the nginx instance
|
||||
*/
|
||||
stop() {
|
||||
let done = plugins.smartpromise.defer();
|
||||
if (typeof this.nginxChildProcess != 'undefined') {
|
||||
this.smartshellInstance.exec('nginx -s quit');
|
||||
this.started = false;
|
||||
plugins.smartlog.defaultLogger.info('stopped Nginx!');
|
||||
} else {
|
||||
plugins.smartlog.defaultLogger.info('nginx already stopped!');
|
||||
}
|
||||
done.resolve();
|
||||
return done.promise;
|
||||
}
|
||||
|
||||
/**
|
||||
* checks if nginx is in path
|
||||
*/
|
||||
check(): boolean {
|
||||
return;
|
||||
};
|
||||
/**
|
||||
* checks if nginx is in path
|
||||
*/
|
||||
check(): boolean {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user