Ejemplo n.º 1
0
exports.create = (graph, options) => new Promise((resolve) => {
  const handleRequest = (req, res) => {
    res.writeHead(302, {
      Location: exports.liveUrl(options),
    });
    res.end();
  };

  let server = null;
  if (options.tlsKey && options.tlsCert) {
    server = https.createServer({
      key: fs.readFileSync(options.tlsKey),
      cert: fs.readFileSync(options.tlsCert),
    }, handleRequest);
  } else {
    server = http.createServer(handleRequest);
  }
  const rt = runtime(server, {
    defaultGraph: graph,
    baseDir: options.baseDir,
    captureOutput: options.captureOutput,
    catchExceptions: options.catchExceptions,
    defaultPermissions: [],
    permissions: options.permissions,
    cache: options.cache,
    id: options.id,
    label: options.label,
    namespace: options.namespace,
    repository: options.repository,
  });
  rt.webServer = server;
  resolve(rt);
});
Ejemplo n.º 2
0
module.exports = function (baseDir, callback) {
  var app = connect();
  // Static serving of the UI
  app.use(connect.static(path.resolve(__dirname, '../assets')));

  // Set Connect as the server middleware
  var server = http.createServer(app);

  // Provide WebSocket interface to NoFlo
  runtime(server, {
    baseDir: baseDir,
    catchExceptions: true
  });

  // Return prepared server to caller
  callback(null, server);
};
Ejemplo n.º 3
0
// Server
var http = require('http');
var runtime = require('noflo-runtime-websocket');

var baseDir = process.env.PROJECT_HOME || 'asset-server'; //process.cwd();
var port = 5555;

var server = http.createServer(function () {});
var rt = runtime(server, {
    baseDir: baseDir,
    captureOutput: false,
    catchExceptions: true
});

server.listen(port, function () {
    console.log('Asset server runtime listening for NoFlo UI at ws://0.0.0.0:' + port);
    console.log('Using ' + baseDir + ' for component loading');
});