Skip to content
Snippets Groups Projects
Select Git revision
  • release/runtime-100
  • master default protected
  • vincentux-master-patch-54074
  • ud-time-64
  • elois-duniter-storage
  • elois-compose-metrics
  • hugo-cucumber
  • elois-smoldot
  • no-bootnodes
  • poc-oneshot-accounts
  • ts-types
  • runtime-104
  • runtime-103
  • runtime-102
  • runtime-101
  • v0.1.0
  • runtime-100
17 results

rust-toolchain

  • Forked from nodes / rust / Duniter v2S
    Source project has a limited visibility.
    index.js 1.92 KiB
    "use strict";
    
    const co = require('co');
    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('webstart');
    }
    
    module.exports = {
      duniter: {
    
        'cli': [{
          name: 'webstart',
          desc: 'Do a webstart',
          requires: ['service'],
          promiseCallback: (duniterServer) => co(function*(){
    
            try {
    
              /****************************************
               * SPECIALISATION
               ***************************************/
    
              const app = express();
              const HOTE = 'localhost';
              const PORT = 9220;
    
              /**
               * Sur appel de l'URL /abc
               */
              app.use(express.static(path.join(__dirname, '..', 'duniter-ui', 'public')));
    
              app.use(cors());
    
              // File upload for backup API
              app.use(fileUpload());
    
              app.use(bodyParser.urlencoded({
                extended: true
              }));
              app.use(bodyParser.json());
    
              const wbmin = webminController(duniterServer);
              const httpServer = http.createServer(app);
              httpServer.listen(PORT, HOTE);
              console.log("Serveur web disponible a l'adresse http://%s:%s", HOTE, PORT);
    
              require('./server/lib/routes').webmin(wbmin, app);
              require('./server/lib/routes').webminWS(wbmin)(httpServer);
    
              yield wbmin.startHTTP();
              yield wbmin.startAllServices();
    
              // Never ending promise
              return new Promise((resolve) => {});
    
              /****************************************/
    
            } catch (e) {
              console.error(e);
              process.exit(1);
            }
          })
        }]
      }
    };