我有这个.travis.yml文件:
language: node_js
node_js:
- '9'
- '8'
- '7'
- '6'
env:
- CXX=g++-4.8
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-4.8
before_install: 'if [[ `npm -v` != 4* ]]; then npm i -g npm@4; fi'
install:
- npm install --silent --no-optional > /dev/null 2>&1
script: 'rm -rf node_modules && npm cache clean && npm install istanbul --silent > /dev/null 2>&1 && \
npm link -f --silent > /dev/null 2>&1 && npm link suman -f --silent > /dev/null 2>&1 && \
suman test/src/dev/node/injection.test.js'
我猜测脚本行格式不正确。我在Travis上得到了这个错误:
The command "rm -rf node_modules && npm cache clean && npm install istanbul --silent > /dev/null 2>&1 && \ npm link -f --silent > /dev/null 2>&1 && npm link suman -f --silent > /dev/null 2>&1 && \ suman test/src/dev/node/injection.test.js" exited with 127.
有谁知道脚本命令格式正确吗?我无法理解。
答案 0 :(得分:1)
看起来YAML转换正在咬你,并且新行和\
的处理方式与您假设的不同。您可以通过|
启动它来放入未解释的多行块。如果您有兴趣,请查看详细信息:http://yaml.org/spec/1.2/spec.html#Block
language: node_js
node_js:
- '9'
- '8'
- '7'
- '6'
env:
- CXX=g++-4.8
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-4.8
before_install: 'if [[ `npm -v` != 4* ]]; then npm i -g npm@4; fi'
install:
- npm install --silent --no-optional > /dev/null 2>&1
script: |
rm -rf node_modules && npm cache clean && npm install istanbul --silent > /dev/null 2>&1 && \
npm link -f --silent > /dev/null 2>&1 && npm link suman -f --silent > /dev/null 2>&1 && \
suman test/src/dev/node/injection.test.js
答案 1 :(得分:0)
看起来OP中的.travis.yml文件是错误的(我不确切知道为什么),因为当我将其更改为:
language: node_js
node_js:
- '9'
- '8'
- '7'
- '6'
env:
- CXX=g++-4.8
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-4.8
before_install: 'if [[ `npm -v` != 4* ]]; then npm i -g npm@4; fi'
install:
- 'npm install --silent --no-optional > /dev/null 2>&1'
script: 'rm -rf node_modules && npm cache clean && npm install istanbul --silent > /dev/null 2>&1 && npm link -f --silent > /dev/null 2>&1 && npm link suman -f --silent > /dev/null 2>&1 && suman test/src/dev/node/injection.test.js'
after_script: 'npm install -g coveralls && cat coverage/lcov.info | coveralls'
notifications:
email: false
现在又恢复了工作。