If statuses or GitHub Checks are not displaying on your pull request or merge request, the first step is to ensure the uploader did not encounter an error sending the report to Codecov. In order to not block your pipeline, the Codecov step will return success by default - even if errors occurred.
To troubleshoot, expand the output of the upload step on your CI system and look for a line with a `resultURL` at the end of the output, as shown in the image below:
If you do not see the success message as shown above, look for any error messages.
Enabling verbose mode (by adding `-v` to the end of the uploader command) will provide additional logging output to help you troubleshoot. If you are using a uploader wrapper such as an action or an orb please refer to its documentation for instructions on how to enable verbose mode.
Here are a few things you can try:
Verify that Codecov has access to the repo
If the repo is private, or our API limit is exceeded, Codecov may have issues posting the status check. In this case, you may want to set up a team bot or enable the Github app.
Validate your YAML
Validate your codecov.yml to confirm that Codecov is able to process your configuration. An invalid configuration will cause Codecov to use the default settings and may result in statuses not being sent.
Checking the YAML applied is expected
On a given commit (example), you can see what YAML was actually applied to the commit in question by clicking on "view yml file".
If the YAML used was not expected, you may an invalid YAML (see above) OR there may be an issue with the hierarchy of YAML files. If both the Global YAML AND the Repository YAML are set, the Repository-level YAML has priority.
You can read more about YAML files here.
Special Note Regarding Pull Requests from Forks
By default, most CI systems do not share secrets such as `CODECOV_TOKEN` with forks of the repo without the need for an additional setting. This may prevent Codecov from being able to properly upload the reports for these requests. To check this, refer to the troubleshooting steps above and look for an error message about failure to find the repo.
GitHub - Required Checks
If the checks have been marked Required, they will display as "Expected — Waiting for status to be reported", even in cases when Codecov may not have received the reports. Should you follow the troubleshooting steps above and find that uploads were successful, please contact Support and provide the verbose output of the upload step.