Select Git revision
-
Cédric Moreau authoredCédric Moreau authored
index.js 5.97 KiB
"use strict";
const _ = require('underscore')
const co = require('co');
const fs = require('fs');
const bodyParser = require('body-parser');
const http = require('http');
const express = require('express');
const path = require('path');
const cors = require('cors');
const fileUpload = require('express-fileupload');
const webminController = require('./server/controller/webmin.js');
// Inject 'webstart' command if no argument was given
if (process.argv.length === 2) {
process.argv.push('direct_webstart');
}
module.exports = {
duniter: {
cliOptions: [
// Webmin options
{ value: '--webmhost <host>', desc: 'Local network interface to connect to (IP)' },
{ value: '--webmport <port>', desc: 'Local network port to connect', parser: parseInt }
],
cli: [{
name: 'webstart',
desc: 'Starts Duniter as a daemon (background task).',
logs: false,
onConfiguredExecute: (server, conf, program, params) => co(function*() {
yield server.checkConfig()
const daemon = server.getDaemon('direct_webstart', 'webstart')
yield startDaemon(program, daemon)
})
}, {
name: 'webrestart',
desc: 'Stops Duniter daemon and restart it with its web interface.',
logs: false,
onConfiguredExecute: (server, conf, program, params) => co(function*() {
yield server.checkConfig()
const daemon = server.getDaemon('direct_webstart', 'webrestart')
yield stopDaemon(daemon)
yield startDaemon(program, daemon)
})
}, {
name: 'direct_webstart',
desc: 'Do a webstart',
onDatabaseExecute: (server, conf, program, params, startServices, stopServices, stack) => co(function*(){
try {
/****************************************
* SPECIALISATION
***************************************/
const app = express();
const HOTE = program.webmhost || 'localhost';
const PORT = program.webmport || 9220;
/**
* Sur appel de l'URL /abc
*/
app.use(express.static(path.join(__dirname, '..', 'duniter-ui', 'public')));
app.use(cors());