Closed jaredmoody closed 1 year ago
Hey! I've merged your PR and released it under v0.3.5. Could you please test if it works?
This is looking good to me, build numbers detected, info all flowing into Coveralls! 🍻
After some more usage today, I'm still seeing a problem executing coveralls --done
- it doesn't seem to be working - I'm not seeing the coverage status reported back to Github. If I use curl, everything is fine.
Seems this issue needs to be re-opened.
Sample failure with binary:
curl -L https://coveralls.io/coveralls-linux.tar.gz | tar -xz && ./coveralls --done
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
100 3147k 100 3147k 0 0 5298k 0 --:--:-- --:--:-- --:--:-- 5298k
⠀⠀⠀⠀⠀⠀[38;5;196m⣿[0m
⠀⠀⠀⠀⠀[38;5;196m⣼⣿⣧[0m⠀⠀⠀⠀⠀⠀⠀ ⣠⣶⣾⣿⡇⢀⣴⣾⣿⣷⣆ ⣿⣿⠀⣰⣿⡟⢸⣿⣿⣿⡇ ⣿⣿⣿⣷⣦⠀⠀⢠⣿⣿⣿⠀⠀⣿⣿⠁⠀⣼⣿⡇⠀⢀⣴⣾⣿⡷
[38;5;196m⠶⣶⣶⣶⣾⣿⣿⣿⣷⣶⣶⣶⠶[0m ⣸⣿⡟ ⠀⢠⣿⣿⠃⠈⣿⣿⠀⣿⣿⢠⣿⡿⠀⣿⣿⣧⣤⠀⢸⣿⡇⣠⣿⡿⠀⢠⣿⡟⣿⣿⠀⢸⣿⡿⠀⠀⣿⣿⠃⠀⢸⣿⣧⣄
⠀⠀[38;5;196m⠙⢻⣿⣿⣿⣿⣿⡟⠋⠁[0m⠀⠀ ⣿⣿⡇⠀ ⢸⣿⣿⠀⣸⣿⡟⠀⣿⣿⣾⡿⠁ ⣿⣿⠛⠛⠀⣿⣿⢿⣿⣏⠀⢀⣿⣿⣁⣿⣿⠀⣾⣿⡇⠀⢸⣿⡿⠀⠀⡀⠙⣿⣿⡆
⠀⠀[38;5;196m⢠⣿⣿⣿⠿⣿⣿⣿⡄[0m⠀⠀⠀ ⠙⢿⣿⣿⠇⠈⠿⣿⣿⡿⠋⠀⠀⢿⣿⡿⠁⠀⢸⣿⣿⣿⡇⢸⣿⣿⠀⣿⣿⣄⣾⣿⠛⠛⣿⣿⢠⣿⣿⣿ ⣼⣿⣿⣿ ⣿⣿⡿⠋⠀
⠀[38;5;196m⢀⣾⠟⠋⠀⠀⠀⠙⠻⣷⡀[0m⠀⠀
v0.3.6
⭐️ Calling parallel done webhook: https://coveralls.io/webhook
---
✅ API Response: {"done":true,"url":"https://coveralls.io/builds/58834287","jobs":5}
- 💛, Coveralls
Sample success with curl:
curl -k https://coveralls.io/webhook?repo_token=$COVERALLS_REPO_TOKEN -d "payload[build_num]=$SEMAPHORE_WORKFLOW_ID&payload[status]=done"
{"done":true,"url":"https://coveralls.io/builds/58834287","jobs":5}
Since the API response is the same in both cases, I'm not sure how to debug this.
Hey! Could you add a --debug
option to coveralls
call?
curl -L https://coveralls.io/coveralls-linux.tar.gz | tar -xz && ./coveralls --debug --done
It will print the payload it sends to coveralls.io
Looks like there are some parameters that affect coveralls backend. It can be our bug for Semaphore CI. Your debug output would help to investigate the issue.
Sure, here's the output:
$ ./coveralls --debug --done
⠀⠀⠀⠀⠀⠀⣿
⠀⠀⠀⠀⠀⣼⣿⣧⠀⠀⠀⠀⠀⠀⠀ ⣠⣶⣾⣿⡇⢀⣴⣾⣿⣷⣆ ⣿⣿⠀⣰⣿⡟⢸⣿⣿⣿⡇ ⣿⣿⣿⣷⣦⠀⠀⢠⣿⣿⣿⠀⠀⣿⣿⠁⠀⣼⣿⡇⠀⢀⣴⣾⣿⡷
⠶⣶⣶⣶⣾⣿⣿⣿⣷⣶⣶⣶⠶ ⣸⣿⡟ ⠀⢠⣿⣿⠃⠈⣿⣿⠀⣿⣿⢠⣿⡿⠀⣿⣿⣧⣤⠀⢸⣿⡇⣠⣿⡿⠀⢠⣿⡟⣿⣿⠀⢸⣿⡿⠀⠀⣿⣿⠃⠀⢸⣿⣧⣄
⠀⠀⠙⢻⣿⣿⣿⣿⣿⡟⠋⠁⠀⠀ ⣿⣿⡇⠀ ⢸⣿⣿⠀⣸⣿⡟⠀⣿⣿⣾⡿⠁ ⣿⣿⠛⠛⠀⣿⣿⢿⣿⣏⠀⢀⣿⣿⣁⣿⣿⠀⣾⣿⡇⠀⢸⣿⡿⠀⠀⡀⠙⣿⣿⡆
⠀⠀⢠⣿⣿⣿⠿⣿⣿⣿⡄⠀⠀⠀ ⠙⢿⣿⣿⠇⠈⠿⣿⣿⡿⠋⠀⠀⢿⣿⡿⠁⠀⢸⣿⣿⣿⡇⢸⣿⣿⠀⣿⣿⣄⣾⣿⠛⠛⣿⣿⢠⣿⣿⣿ ⣼⣿⣿⣿ ⣿⣿⡿⠋⠀
⠀⢀⣾⠟⠋⠀⠀⠀⠙⠻⣷⡀⠀⠀
v0.3.6
⭐️ Calling parallel done webhook: https://coveralls.io/webhook
---
⛑ Debug Output:
{
"service_branch": "dev/coveralls-client",
"service_build_url": "https://jetbuilt.semaphoreci.com/workflows/c0f285e8-79cd-4105-ab25-62b07b86a666",
"service_job_id": "8fbc3c57-b316-4439-9911-5f5b4e1db34b",
"service_job_url": "https://jetbuilt.semaphoreci.com/jobs/8fbc3c57-b316-4439-9911-5f5b4e1db34b",
"service_name": "semaphore",
"service_number": "c0f285e8-79cd-4105-ab25-62b07b86a666",
"service_pull_request": "11320",
"commit_sha": "89ecb1457410757ef278673f0064339864b80257",
"repo_token": "YIS4FUu5lyBNdhDqv4tSeSLSB7Aigk3ry",
"payload": {
"build_num": "c0f285e8-79cd-4105-ab25-62b07b86a666",
"status": "done"
}
}
---
✅ API Response: {"done":true,"url":"https://coveralls.io/builds/58834287","jobs":5}
- 💛, Coveralls
The build_num looks the same as in my curl example that worked:
$ echo $SEMAPHORE_WORKFLOW_ID
c0f285e8-79cd-4105-ab25-62b07b86a666
Hey! I've tried to reporoduce this bug but for my repo everything seems to work fine.
Which of these you don't have for your builds?
You can check the PR here: https://github.com/mrexox/sentry-sanitizer/pull/8
Hey @jaredmoody, do you still have this issue? Can you please check my recent comment about it?
I tried again and I am seeing Coveralls report back to Github - maybe I just didn't wait long enough the first time 🤷
Here's my scenario that's not working:
--parallel
I attempted to call the webhook directly with curl and received a similar message:
Next I changed my first parallel call to directly pass the job id, which did use the $SEMAPHORE_WORKFLOW_ID when reporting with
--parallel
, but then still did not on the--done
step:Finally, what does work is calling
coveralls --parallel --service-job-id=$SEMAPHORE_WORKFLOW_ID
followed by manually calling the done webhook with curl.