1

Usually I used the similar .gitlab-ci.yml code to send reports to coveralls for some of my repos:

install_dependencies:
  stage: build
  script:
    - npm install -g gulp nyc
    - npm install coveralls
    - npm install
  artifacts:
    paths:
      - node_modules/

testing:
  stage: test
  script:
    - npx nyc gulp test
    - npx nyc report --reporter=html
    - npx nyc report --reporter=text-lcov | npx ./node_modules/coveralls/bin/coveralls.js
  artifacts:
    paths:
      - public
      - coverage
      - .nyc_output

And on Appveyor:

install:
  - ps: Install-Product node $env:nodejs_version
  - npm install -g gulp nyc coveralls
  - npm install

test_script:
  - node --version
  - npm --version
  - gulp --version
  - cmd: npx nyc gulp test

after_test:
  cmd: npx nyc report --reporter=text-lcov | npx coverall

It worked well few months ago, but today I found that it doesn't work anymore for all my repos, I got the error:

npm ERR! code ENOTDIR
npm ERR! syscall open
npm ERR! path /builds/username/proj/node_modules/coveralls/bin/coveralls.js/package.json
npm ERR! errno -20
npm ERR! ENOTDIR: not a directory, open '/builds/username/proj/node_modules/coveralls/bin/coveralls.js/package.json'
npm ERR! A complete log of this run can be found in:
npm ERR!     /root/.npm/_logs/2020-11-06T03_01_59_736Z-debug.log
node:events:304
      throw er; // Unhandled 'error' event
      ^
Error: write EPIPE
    at afterWriteDispatched (node:internal/stream_base_commons:162:15)
    at writeGeneric (node:internal/stream_base_commons:153:3)
    at Socket._writeGeneric (node:net:763:11)
    at Socket._write (node:net:775:8)
    at writeOrBuffer (node:internal/streams/writable:388:12)
    at Socket.Writable.write (node:internal/streams/writable:333:10)
    at ConsoleWriter.write (/root/.npm/_npx/6e14a84d153b8cb9/node_modules/istanbul-lib-report/lib/file-writer.js:80:28)
    at ConsoleWriter.println (/root/.npm/_npx/6e14a84d153b8cb9/node_modules/istanbul-lib-report/lib/file-writer.js:35:14)
    at TextLcov.onDetail (/root/.npm/_npx/6e14a84d153b8cb9/node_modules/istanbul-reports/lib/lcovonly/index.js:31:16)
    at Visitor.value (/root/.npm/_npx/6e14a84d153b8cb9/node_modules/istanbul-lib-report/lib/tree.js:38:38)
Emitted 'error' event on Socket instance at:
    at emitErrorNT (node:internal/streams/destroy:188:8)
    at emitErrorCloseNT (node:internal/streams/destroy:153:3)
    at processTicksAndRejections (node:internal/process/task_queues:80:21) {
  errno: -32,
  code: 'EPIPE',
  syscall: 'write'
}
npm ERR! code 1
npm ERR! path /builds/username/proj
npm ERR! command failed
npm ERR! command sh -c nyc report '--reporter=text-lcov'

When I've installed coveralls module globally and changed the command to … | npx coveralls:

npm WARN exec The following package was not found and will be installed: coveralls
npm WARN deprecated har-validator@5.1.5: this library is no longer supported
npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
/root/.npm/_npx/4d97078606416726/node_modules/coveralls/bin/coveralls.js:19
      throw err;
      ^
Bad response: 500 {"message":"Build processing error.","error":true,"url":""}
(Use `node --trace-uncaught ...` to show where the exception was thrown)
npm ERR! code 1
npm ERR! path /builds/username/proj
npm ERR! command failed
npm ERR! command sh -c coveralls

The same, but shorter, on Appveyor for now:

C:\Users\appveyor\AppData\Roaming\npm\node_modules\coveralls\bin\coveralls.js:19
      throw err;
      ^
Bad response: 500 {"message":"Build processing error.","error":true,"url":""}
Command exited with code 1

I can't understand, is it temporary problem of Coveralls, or Istanbul/NYC, or some changes took the place permanently, and the code should be changed accordingly in some way.

M.O.Z.G
  • 11
  • 1
  • 1
  • At a glance, I haven't notice `coveralls` module or some of its direct dependencies changed recently, however `Bad response: 500 {"message":"Build processing error.","error":true,"url":""}` looks like a response from coverall server/API. Have you tried re-building one of the previously successful commits? – Feodor Fitsner Nov 06 '20 at 18:21
  • Thanks for the reply. Yes, I tried to rerun one of past successful pipelines of the unmodified demo repo on GitLab, and the new result is the same error as described above. Every repository is affected, no matter modified or not, Windows or Linux. – M.O.Z.G Nov 08 '20 at 01:41
  • Then it "feels" like some of the dependencies (direct or indirect) of `coveralls` NPM module changed. Though not sure if I know the way to find out that by checking dependency tree or pin on of the previous module versions. – Feodor Fitsner Nov 09 '20 at 02:16

0 Answers0