Skip to main content
Sign in
Snippets Groups Projects
Select Git revision
  • e996666223f023afb2775ff26ccdbae9680119a0
  • master default
  • release_0.1.53
  • 0.1.15
  • 0.1.14
  • 0.1.13
  • 0.1.11
  • 0.1.10
  • 0.1.9
9 results

node.py

Blame
  • index.ts 18.00 KiB
    import {ExecuteCommand} from "./app/cli"
    import * as stream from "stream"
    import {Server} from "./server"
    import {ConfDTO} from "./app/lib/dto/ConfDTO"
    import {ProverDependency} from "./app/modules/prover/index"
    import {KeypairDependency} from "./app/modules/keypair/index"
    import {CrawlerDependency} from "./app/modules/crawler/index"
    import {BmaDependency} from "./app/modules/bma/index"
    import {WS2PDependency} from "./app/modules/ws2p/index"
    import {ProverConstants} from "./app/modules/prover/lib/constants"
    import { ProxiesConf } from './app/lib/proxy';
    import {RouterDependency} from "./app/modules/router"
    
    const path = require('path');
    const _ = require('underscore');
    const directory = require('./app/lib/system/directory');
    const constants = require('./app/lib/constants');
    const logger = require('./app/lib/logger').NewLogger('duniter');
    
    const configDependency    = require('./app/modules/config');
    const wizardDependency    = require('./app/modules/wizard');
    const resetDependency     = require('./app/modules/reset');
    const checkConfDependency = require('./app/modules/check-config');
    const exportBcDependency  = require('./app/modules/export-bc');
    const reapplyDependency   = require('./app/modules/reapply');
    const revertDependency    = require('./app/modules/revert');
    const daemonDependency    = require('./app/modules/daemon');
    const pSignalDependency   = require('./app/modules/peersignal');
    const pluginDependency    = require('./app/modules/plugin');
    
    class Stacks {
    
      static todoOnRunDone:() => any = () => process.exit()
    
      static async quickRun(...args:any[]) {
        const deps = Array.from(args).map((f, index) => {
          const canonicalPath = path.resolve(f)
          return {
            name: 'duniter-quick-module-' + index,
            required: require(canonicalPath)
          }
        })
        const stack = Stacks.autoStack(deps)
        let res
        try {
          res = await stack.executeStack(Stacks.quickRunGetArgs())
        } catch(e) {
          console.error(e)
        }
        Stacks.onRunDone()
        return res
      }
    
      static quickRunGetArgs() {
        return process.argv.slice()
      }
    
      static onRunDone() {
        return Stacks.todoOnRunDone()
      }
    
      static autoStack(priorityModules:any) {
    
        const duniterModules = [];
        let duniterDeps:any = []
    
        try {
          const pjson = require(path.resolve('./package.json'))
          // Look for compliant packages
          const prodDeps = Object.keys(pjson.dependencies || {});