npm script工作流(七) 拆分

2020-08-05  本文已影响0人  ZoranLee
{  
"scripts": {
    "cover": "nyc --reporter=html npm test",
    "cover:cleanup": "rimraf coverage && rimraf .nyc_output",
    "cover:archive": "cross-var \"make-dir coverage_archive/$npm_package_version && cpr coverage/* coverage_archive/$npm_package_version -o\"",
    "cover:serve": "cross-var http-server coverage_archive/$npm_package_version -p $npm_package_config_port",
    "cover:open": "cross-var opn http://localhost:$npm_package_config_port",
    "precover": "npm run cover:cleanup",
    "postcover": "npm-run-all cover:archive --parallel cover:serve cover:open"
  }
}
npm i scripty -D
# npm install scripty --save-dev
# yarn add scripty -D
mkdir -p scripts/cover

命名为 scripts 是 scripty 默认的

touch scripts/cover.sh
touch scripts/cover/serve.sh
touch scripts/cover/open.sh
命令 文件 备注
cover scripts/cover.sh 内含 precover、postcover 的逻辑
cover:serve scripts/cover/serve.sh 启动服务
cover:open scripts/cover/open.sh 打开预览
chmod -R a+x scripts/**/*.sh
#!/usr/bin/env bash

# remove old coverage reports
rimraf coverage && rimraf .nyc_output

# run test and collect new coverage
nyc --reporter=html npm run test

# achive coverage report by version
mkdir -p coverage_archive/$npm_package_version
cp -r coverage/* coverage_archive/$npm_package_version

# open coverage report for preview
npm-run-all --parallel cover:serve cover:open
#!/usr/bin/env bash

http-server coverage_archive/$npm_package_version -p $npm_package_config_port
#!/usr/bin/env bash

sleep 1
opn http://localhost:$npm_package_config_port
{
"script":{
 "cover": "scripty",
  "cover:serve": "scripty",
 "cover:open": "scripty"
}
}
上一篇 下一篇

猜你喜欢

热点阅读