Ejemplo n.º 1
0
 app.get(app.pathPrefix + 'export', app.checkId, function (req, res, next) {
   var spaceFile = app.paths.nudgepad + app.domain + '.space'
   var optionsFile = app.paths.nudgepad + '.options.space'
   var options = new Space()
   options.set('ignore app.log.txt', '')
   options.set('ignore projectPid.txt', '')
   options.set('ignore requests.log.txt', '')
   options.set('ignore monPid.txt', '')
   fs.writeFileSync(optionsFile, options.toString())
   exec('space ' + app.paths.project + ' ' + spaceFile + ' ' + optionsFile, function () {
     res.set('Content-Type', 'text/plain')
     res.sendfile(spaceFile, function () {
       fs.unlink(spaceFile)
       fs.unlink(optionsFile)
     })
   })
 }) 
Ejemplo n.º 2
0
 socket.on('watch', function (filename, fn) {
   console.log('%s watching %s', socket.id, filename)
   if (!watchers.get(filename)) {
     watchers.set(filename, new Space())
     watchFile(filename)
   }
   watchers.get(filename).push(socket.id)
   fn('you are now watching ' + filename)
 })
Ejemplo n.º 3
0
    async.mapSeries(paths, fileStats, function(err, stats){

      if (err)
        return callback(err)
      
      // stats is now an array of stats for each file
      for (var i in files) {
        space.set(files[i], stats[i])
      }
      
      callback(false, space)
    })    
Ejemplo n.º 4
0
  fs.stat(path, function (err, stat) {

    // Quit on error
    if (err)
      return callback(err)

    if (stat.isDirectory())
      return folderStats(path + '/', callback)

    var space = new Space()
    space.set('mtime', stat.mtime.getTime())
    space.set('size', (stat.size/1000000).toFixed(1) + 'MB')
    space.set('bytes', stat.size)
    space.set('age', ((new Date().getTime() - stat.ctime.getTime())/86400000).toFixed(1) + 'D')
    space.set('freshness', ((new Date().getTime() - stat.mtime.getTime())/1000).toFixed(0) + 'S')
    space.set('timeSinceLastChange', ((new Date().getTime() - stat.mtime.getTime())/86400000).toFixed(1) + 'D')
    space.set('oneliner', space.get('bytes') + ' ' + space.get('mtime'))

    callback(false, space)
  })
Ejemplo n.º 5
0
  app.get(app.pathPrefix + 'status', app.checkId, function(req, res, next) {

    var mem = process.memoryUsage()
    var load = os.loadavg()
    space = new Space()
    space.set('domain', app.domain)
    space.set('ip', app.ip)
    space.set('uptime', (process.uptime()) + 's')
    space.set('os_release', os.release())
    space.set('platform', os.platform())
    space.set('hostname', os.hostname())
    space.set('speedcoach', speedcoach.times())
    space.set('title', process.title)
    space.set('pid', process.pid)
    space.set('node_version', process.version)
    space.set('arch', process.arch)
    space.set('freemem', (os.freemem()/1000000).toFixed(1) + 'MB')
    space.set('totalmem', (os.totalmem()/1000000).toFixed(1) + 'MB')
    space.set('machine_uptime', (os.uptime()/86400).toFixed(2) + ' days')
    space.set('process_memory.rss', (mem.rss/1000000).toFixed(1) + 'MB')
    space.set('process_memory.heapTotal', (mem.heapTotal/1000000).toFixed(1) + 'MB')
    space.set('process_memory.heapUsed', (mem.heapUsed/1000000).toFixed(1) + 'MB')
    space.set('load-1-min', load[0].toFixed(2))
    space.set('load-5-min', load[1].toFixed(2))
    space.set('load-15-min', load[2].toFixed(2))
    res.set('Content-Type', 'text/plain')
    return res.send(space.toString())
  })
Ejemplo n.º 6
0
_.each(tools, function (toolName) {
  var toolDir = toolsPath + toolName + '/'
  
  
  // Ignore if no package.space file
  if (!fs.existsSync(toolDir + 'package.space', 'utf8'))
    return true
    
  var settings = new Space(fs.readFileSync(toolDir + 'package.space', 'utf8'))
  toolInfo.set(toolName, settings)

  var files = settings.get('js').split(/ /g)
  _.each(files, function (filename) {
    
    if (filename.match('.js')) {
      code.js += fs.readFileSync(toolDir + filename, 'utf8')
      includes.js += '    <script type="text/javascript" src="/nudgepad/tools/' + toolName + '/' + filename + '?t=' + new Date().getTime() + '"></script>\n'
    }
    // directory
    else {
      var subfiles = _.without(fs.readdirSync(toolDir + filename), '.DS_Store')
      _.each(subfiles, function (subfile) {
        code.js += fs.readFileSync(toolDir + filename + '/' + subfile, 'utf8')
        includes.js += '    <script type="text/javascript" src="/nudgepad/tools/' + toolName + '/' + filename + '/' + subfile + '"></script>\n'
      })
    }
    
  })
  
  // CSS is optional
  files = []
  if (settings.get('css'))
    files = settings.get('css').split(/ /g)
  _.each(files, function (filename) {
    
    if (filename.match('.css')) {
      code.css += fs.readFileSync(toolDir + filename, 'utf8')
      includes.css += '    <link rel="stylesheet" href="/nudgepad/tools/' + toolName + '/' + filename + '?t=' + new Date().getTime() + '" type="text/css"/>\n'
    }
    // directory
    else {
      var subfiles = _.without(fs.readdirSync(toolDir + filename), '.DS_Store')
      _.each(subfiles, function (subfile) {
        code.css += fs.readFileSync(toolDir + filename + '/' + subfile, 'utf8')
        includes.css += '    <link rel="stylesheet" href="/nudgepad/tools/' + toolName + '/' + filename + '/' + subfile + '" type="text/css"/>\n'
      })
    }
    
  })
  
  // HTML is optional
  files = []
  if (settings.get('html'))
    files = settings.get('html').split(/ /g)
  _.each(files, function (filename) {
    
    if (filename.match('.html')) {
      code.html += fs.readFileSync(toolDir + filename, 'utf8')
    }
    // directory
    else {
      var subfiles = _.without(fs.readdirSync(toolDir + filename), '.DS_Store')
      _.each(subfiles, function (subfile) {
        code.html += fs.readFileSync(toolDir + filename + '/' + subfile, 'utf8')
      })
    }
  })
  

})
Ejemplo n.º 7
0
var fs = require('fs'),
    Space = require('space'),
    beautify = require('js-beautify').js_beautify
  
var pack = new Space(fs.readFileSync('package.space', 'utf8'))
var v = pack.get('version').split(/\./g)
if (process.argv[2])
  var version = process.argv[2]
else
  var version = [v[0],v[1],parseFloat(v[2]) + 1].join('.')
pack.set('version', version)
fs.writeFileSync('package.space', pack.toString(), 'utf8')
fs.writeFileSync('package.json', beautify(pack.toJSON(), { indent_size: 2 }), 'utf8')