Skip to content

jackboberg/knock-knock

Repository files navigation

knock-knock

basic information about the current project and environment

npm travis coverage standard

Table of Contents

Install

npm install knock-knock

Usage

KnockKnock([commands], callback)

  • commands Object (Optional)
    values are a command to execute, a trimmed stdout or stderr will be yielded
  • callback Function
    (err, result) => {}

default result

key value
name derived from package.json
version derived from package.json
env process.env.NODE_ENV
node node -v
npm npm -v

Examples

using defaults

const KnockKnock = require('knock-knock')

KnockKnock((err, results) => {
  if (err) throw err
  console.log(results)
  /** {
    name: 'some-name',
    version: '1.2.3',
    env: 'production',
    node: 'v6.10.1',
    npm: '4.5.0'
  } **/
})

passing custom command

const KnockKnock = require('knock-knock')

KnockKnock({ docker: 'docker -v' }, (err, results) => {
  if (err) throw err
  console.log(results)
  // { docker: 'Docker version 17.03.1-ce, build c6d412e', ... }
})

hapi endpoint

const Hapi = require('hapi')
const KnockKnock = require('knock-knock')

const server = new Hapi.Server()

const ping = (request, reply) => KnockKnock(reply)

server.route([
  { method: 'GET', path: '/ping', handler: ping }
])

Express endpoint

const Express = require('express')
const KnockKnock = require('knock-knock')

const app = Express()

const ping = (req, res) => KnockKnock((err, output) => res.send(err || output))

app.get('/ping', ping)

Contribute

PRs welcome! Please read the contributing guidelines and the code of conduct.

License

MIT © Jack Boberg.

About

Get basic information about the current project and environment

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •