Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[CI] coverage test is failing #32259

Closed
kasia-kujawa opened this issue Apr 9, 2024 · 5 comments
Closed

[CI] coverage test is failing #32259

kasia-kujawa opened this issue Apr 9, 2024 · 5 comments
Labels
chore ci-cd CI, CD, testing, build issues

Comments

@kasia-kujawa
Copy link
Contributor

Component(s)

No response

Describe the issue you're reporting

coverage test is failing even for pull request with only documentation changes, e.g. https://github.com/open-telemetry/opentelemetry-collector-contrib/actions/runs/8613373633/job/23605721246?pr=32248
There is a problem with upload of coverage report and this seems to be related to codecov/codecov-action#1359

@kasia-kujawa kasia-kujawa added the needs triage New item requiring triage label Apr 9, 2024
@crobert-1
Copy link
Member

Thanks for filing @kkujawa-sumo!

It looks like codecov-action supports tokenless uploads for public repos in v3 of their action, but going without a token also results in rate limiting. The rate limiting is GitHub limiting codecov itself across all public repos, so the options are to use a token, or wait (without re-trying as that will make the problem worse) for codecov's own rate limiting to resolve. I think the issue you've posted shows this is a wide reaching issue going on right now for codecov, not just us.

Project maintainers could create a codecov token to resolve this, but there may be some token privacy implications with running against contrib forks. From comment:

Public repositories that rely on PRs via forks will find that they cannot effectively use Codecov if the token is stored as a GitHub secret. The scope of the Codecov token is only to confirm that the coverage uploaded comes from a specific repository, not to pull down source code or make any code changes.

For this reason, we recommend that teams with public repositories that rely on PRs via forks consider the security ramifications of making the Codecov token available as opposed to being in a secret.

@crobert-1 crobert-1 added ci-cd CI, CD, testing, build issues flaky test a test is flaky chore and removed flaky test a test is flaky labels Apr 9, 2024
@codeboten
Copy link
Contributor

a while ago there was an org wide token added for codecov (open-telemetry/community#1926) i'm curious if that token's not being used as expected

@crobert-1
Copy link
Member

Thanks for pointing that out @codeboten, looks like we just haven't updated the collector repos to use the existing variable. 👍

@crobert-1 crobert-1 removed the needs triage New item requiring triage label Apr 9, 2024
codeboten pushed a commit to open-telemetry/opentelemetry-collector that referenced this issue Apr 9, 2024
The `build-and-test` workflow has been failing consistently the last few
days on the upload coverage step. The reason is outlined in
open-telemetry/opentelemetry-collector-contrib#32259.

Contrib issue, but same underlying cause:
open-telemetry/opentelemetry-collector-contrib#32259

None yet, the CI/CD tests on this PR should be successful if this works.
@crobert-1
Copy link
Member

crobert-1 commented Apr 9, 2024

I implemented this in core, but we're still hitting failures. At least it doesn't make anything worse, and can keep main runs green, AFAICT.

I'm at a bit of a loss to know what else to try. I checked around a bit and see that opentelemetry-go is using the same general workflow, the only difference being they're not relying on the Wandalen/wretry.action functionality like the collector repos are. All of opentelemetry-go's coverage uploads are succeeding.

andrzej-stencel pushed a commit that referenced this issue Apr 10, 2024
**Description:** update codecov action to v4

**Link to tracking Issue:**
#32259
@crobert-1
Copy link
Member

I'm going to close as fixed by #32260. The understanding is that this still may fail on PRs from forked repos, but this should be good enough for now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
chore ci-cd CI, CD, testing, build issues
Projects
None yet
Development

No branches or pull requests

3 participants