1.0.1 • Published 4 years ago

@artdeco/npm-s v1.0.1

Weekly downloads
-
License
AGPL-3.0
Repository
github
Last release
4 years ago

@artdeco/npm-s

npm version

@artdeco/npm-s Runs NPM commands in series.

yarn add @artdeco/npm-s

Table Of Contents

API

The package is available by importing its default function:

import npmS from '@artdeco/npm-s'

async npmS(  config: !Config,): !Array<!ScriptResult>

Run Multiple NPM Commands In Series.

  • config* !Config: The config.

Config: Options for the program.

NameTypeDescription
scripts*!Array<string>The scripts to execute.
args!Array<string>Any additional arguments, e.g., [--scripts-prepend-node-path].

ScriptResult: The result of a script.

NameTypeDescription
code*numberThe exit code.
stdout*stringThe stdout of the program.
stderr*stringThe stderr of the program.
import npmS from '@artdeco/npm-s'

(async () => {
  const res = await npmS({
    scripts: ['pass'],
    args: ['--scripts-prepend-node-path'],
  })
  console.log(res)
})()
> @artdeco/npm-s@1.0.0 pass /Users/anton/adc/npm-s
> node test/fixture/pass

this file is fine
[ { code: 0,
    stdout:
     '\n> @artdeco/npm-s@1.0.0 pass /Users/anton/adc/npm-s\n> node test/fixture/pass\n\nthis file is fine\n',
    stderr: '' } ]

CLI

The package can also be used from the CLI.

Run Multiple Yarn Commands In Series.

  yarn-s script[,script,...]

	scripts      	The scripts to execute in series.
	--help, -h   	Print the help information and exit.
	--version, -v	Show the version's number and exit.

  Example:

    yarn-s script-1 script-2

The program will exit with status code 1 if one of the scripts exited with non-zero code.

process.stdout.write('this file is fine\n')
process.stdout.write('hello wor')
process.exit(1)

yarn-s pass fail

> @artdeco/npm-s@1.0.0 pass /Users/anton/adc/npm-s
> node test/fixture/pass

this file is fine

> @artdeco/npm-s@1.0.0 fail /Users/anton/adc/npm-s
> node test/fixture/fail

hello worCommand "fail" existed with code 1

Copyright & License

GNU Affero General Public License v3.0