Skip to content

Instantly share code, notes, and snippets.

@kamilogorek
Last active February 20, 2017 15:15
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kamilogorek/059616ac6af8e4ebea2383ad162fb918 to your computer and use it in GitHub Desktop.
Save kamilogorek/059616ac6af8e4ebea2383ad162fb918 to your computer and use it in GitHub Desktop.
const env = process.env.NODE_ENV
const task = process.env.npm_lifecycle_event
const packageJSON = require('../package.json')
const availableEnvironments = Object.keys(packageJSON.scripts)
.filter(key => key.startsWith(task))
.map(key => key.split(':')[1])
.filter(key => key)
function displayMessage (message) {
console.error(`${'='.repeat(message.length)}\n${message}\n${'='.repeat(message.length)}`)
}
if (!env) {
const errorMessage = `[ Error ] NODE_ENV is required. Use ${task}:${availableEnvironments.join('/')} scripts instead.`
displayMessage(errorMessage)
process.exit(1)
}
if (!availableEnvironments.includes(env)) {
const errorMessage = `[ Error ] ${env} is not valid NODE_ENV. Use ${task}:${availableEnvironments.join('/')} scripts instead.`
displayMessage(errorMessage)
process.exit(1)
}
process.exit(0)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment