travis: sh: 0: не могу открыть /etc/init.d/xvfb - PullRequest
4 голосов
/ 14 апреля 2019

Мой travis CI использует Ubuntu 14.04 и Node.js 8. Мой .travis.yml выглядит следующим образом:

language: node_js
node_js:
  - 8
sudo: required
addons:
    chrome: stable
before_script:
  - export DISPLAY=:99.0
  - sh -e /etc/init.d/xvfb start
install:
  - npm set progress=false
  - npm install
script:
  - ng lint
  - npm run test
  - npm run e2e
  - npm run build

Я пытался обновить его, чтобы использовать Ubuntu 16.04 и Node.js 10, изменив егоto:

language: node_js
node_js:
  - '10'
dist: xenial
sudo: required
addons:
    chrome: stable
before_script:
  - export DISPLAY=:99.0
  - sh -e /etc/init.d/xvfb start
install:
  - npm set progress=false
  - npm install
script:
  - ng lint
  - npm run test
  - npm run e2e
  - npm run build

Однако теперь я получаю сообщение об ошибке при попытке запуска xvfb:

0.00s $ sh -e /etc/init.d/xvfb start

sh: 0: не удается открыть /etc/init.d/xvfb

Команда "sh -e /etc/init.d/xvfb start" завершилась неудачно и завершилась с 127 во время.

1 Ответ

6 голосов
/ 14 апреля 2019

Решением было удалить sh -e /etc/init.d/xvfb start из массива before_script и просто ввести xvfb в массив services.

Итак, мой .travis.yml теперь выглядит так:

language: node_js
node_js:
  - '10'
dist: xenial
sudo: required
services:
  - xvfb
addons:
    chrome: stable
before_script:
  - export DISPLAY=:99.0
install:
  - npm set progress=false
  - npm install
script:
  - ng lint
  - npm run test
  - npm run e2e
  - npm run build
...