https://github.com/artdecocode/npm-s
Run NPM commands in series.
https://github.com/artdecocode/npm-s
npm scripts
Last synced: 11 months ago
JSON representation
Run NPM commands in series.
- Host: GitHub
- URL: https://github.com/artdecocode/npm-s
- Owner: artdecocode
- License: agpl-3.0
- Created: 2020-01-29T23:03:35.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2020-02-03T02:29:01.000Z (almost 6 years ago)
- Last Synced: 2025-02-10T05:33:29.852Z (11 months ago)
- Topics: npm, scripts
- Language: JavaScript
- Homepage: https://www.artd.eco
- Size: 85 KB
- Stars: 1
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# @artdeco/npm-s
[](https://www.npmjs.com/package/@artdeco/npm-s)
`@artdeco/npm-s` Runs NPM commands in series.
```sh
yarn add @artdeco/npm-s
```
## Table Of Contents
- [Table Of Contents](#table-of-contents)
- [API](#api)
- [`async npmS(config: !Config): !Array`](#async-npmsconfig-config-arrayscriptresult)
* [`Config`](#type-config)
* [`ScriptResult`](#type-scriptresult)
- [CLI](#cli)
- [Copyright & License](#copyright--license)
## API
The package is available by importing its default function:
```js
import npmS from '@artdeco/npm-s'
```
## async npmS(
`config: !Config,`
): !Array
Run Multiple NPM Commands In Series.
- config* !Config: The config.
__`Config`__: Options for the program.
| Name | Type | Description |
| ------------ | ----------------------------- | ---------------------------------------------------------------- |
| __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.
| Name | Type | Description |
| ----------- | --------------- | -------------------------- |
| __code*__ | number | The exit code. |
| __stdout*__ | string | The stdout of the program. |
| __stderr*__ | string | The stderr of the program. |
```js
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.
Argument
Short
Description
scripts
The scripts to execute in series.
--help
-h
Print the help information and exit.
--version
-v
Show the version's number and exit.
```
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.
passfail
```js
process.stdout.write('this file is fine\n')
```
```js
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
© Art Deco™ 2020