We have been hitting a goveralls build failure where the coveralls.io api returns a failure for a different build on the same PR on a CI build in travis with a below error response:
bad response status from coveralls: 422
{"message":"service_job_id (571646577) must be unique for Travis Jobs not supplying a Coveralls Repo Token","error":true}
This check seems to have been introduced recently.
The first build passes but any subsequent one fails (for example adding a commit to the PR after review fixes).
AFAIK this is because goveralls uses the TRAVIS_JOB_ID which remains same for subsequent CI builds on the same PR.
The TRAVIS_BUILD_ID however is unique for each subsequent build on the same PR.

A full build log of the above is available here
I did try forcing my goveralls invocation in my CI script to use the TRAVIS_BUILD_ID instead of TRAVIS_JOB_ID, something like COVERALLS_SERVICE_JOB_ID=$TRAVIS_BUILD_ID, but it did not work, error pasted below:
bad response status from coveralls: 422
{"message":"Travis API Error: #\u003cCoveralls::Mash message=\"The job(251255975) couldn't be found\"\u003e. ","error":true}
A full build log of the above is available here
It seems coveralls.io keeps the build details based on the travis job id.
I also contemplated using the coveralls repo token, but coveralls.io does not give me a token for public github repos.
Any recommended solution or a workaround will be of huge help; our CI is sort of broken because of this
The list of available TRAVIS default env vars are available here.
We have been hitting a goveralls build failure where the coveralls.io api returns a failure for a different build on the same PR on a CI build in travis with a below error response:
This check seems to have been introduced recently.
The first build passes but any subsequent one fails (for example adding a commit to the PR after review fixes).
AFAIK this is because goveralls uses the
TRAVIS_JOB_IDwhich remains same for subsequent CI builds on the same PR.The
TRAVIS_BUILD_IDhowever is unique for each subsequent build on the same PR.A full build log of the above is available here
I did try forcing my goveralls invocation in my CI script to use the TRAVIS_BUILD_ID instead of TRAVIS_JOB_ID, something like
COVERALLS_SERVICE_JOB_ID=$TRAVIS_BUILD_ID, but it did not work, error pasted below:A full build log of the above is available here
It seems coveralls.io keeps the build details based on the travis job id.
I also contemplated using the coveralls repo token, but coveralls.io does not give me a token for public github repos.
Any recommended solution or a workaround will be of huge help; our CI is sort of broken because of this
The list of available TRAVIS default env vars are available here.