UNPKG

@delucis/if-env

Version:

Run an npm script if an environment variable matches a pattern

20 lines (16 loc) 550 B
const parse = require('querystring').parse const match = require('matcher').isMatch module.exports = function ifEnv ({ caseSensitive = false } = {}) { const conditions = process.argv.slice(2) const query = conditions.join('&') const expected = parse(query) for (const name in expected) { const patterns = Array.isArray(expected[name]) ? expected[name] : [expected[name]] patterns.forEach(pattern => { if (!match(process.env[name], pattern, { caseSensitive })) { process.exit(1) } }) } process.exit(0) }