Skip to content
This repository was archived by the owner on May 21, 2025. It is now read-only.

codecov/codecov-python

Repository files navigation

🚨🚨 Deprecation Notice 🚨🚨

This uploader is being deprecated by the Codecov team. We recommend migrating to our new uploader as soon as possible to prevent any lapses in coverage. The new uploader is open source, and we highly encourage submitting Issues and Pull Requests.

You can visit our migration guide for help moving to our new uploader, and our blog post to learn more about our deprecation plan

On February 1, 2022 this uploader will be completely deprecated and will no longer be able to upload coverage to Codecov.

Codecov Global Python Uploader

codecov.ioPyPICode style: blackFOSSA Status

SupportDocumentationCommunity BoardsTwitter

Find coverage reports for all the languages below, gather them and submit them to Codecov.

Codecov Features

  • Reports are automatically combined with no extra setup. Each build is stored separately and combined.
  • Multiple languages are supported in a single upload and repository.
  • Optionally stores environment variables per build.

Usage

pip install --user codecov && codecov -t <the-repository-upload-token>

or

conda install -c conda-forge codecov && codecov -t <the-repository-upload-token>

--user argument not needed for Python projects. See example here.

Languages

Python, C#/.net, Java, Node/Javascript/Coffee, C/C++, D, Go, Groovy, Kotlin, PHP, R, Scala, Xtern, Xcode, Lua and more...

Using tox?

Codecov can be set up in your tox.ini.

Just please make sure to pass all the necessary environment variables through:

[testenv] passenv = TOXENV CI TRAVIS TRAVIS_* CODECOV_* deps = codecov>=1.4.0 commands = codecov -e TOXENV 

See all the environment variables for other CI providers here

Configuration

Below are the most commonly used settings.

ArgumentEnvironmentDescription
-tCODECOV_TOKENPrivate repo token for uploading
-eCODECOV_ENVList of config vars to store for the build
-FFlag this upload to group coverage reports. Ex. unittests or integration
# public repository on Travis CIinstall: - pip install --user codecov# or - conda install -c conda-forge codecovafter_success: - codecov
# private repository on Travis CIinstall: - pip install codecov# or - conda install -c conda-forge codecovafter_success: - codecov -t the-repository-upload-token

CI Providers

CompanySupportedToken Required
AppVeyorYes Build statusPrivate only
Bamboocoming soon
Buildbotcoming soonbuildbot/buildbot#1671
CircleCIYesPrivate only
CodeshipYesPublic & Private
Drone.ioYesPublic & Private
GitHub ActionsYes Build statusPublic & Private
Gitlab CIYesPublic & Private
JenkinsYesPublic & Private
Magnum CIYesPublic & Private
SemaphoreYesPublic & Private
ShippableYesPublic & Private
Solano Labscoming soon
Travis CIYes Build StatusPrivate only
WerckerYesPublic & Private
Cirrus CIYesPrivate only
Git / MercurialYes (as a fallback)Public & Private

Troubleshooting

If you're seeing an HTTP 400 error when uploading reports to S3, make sure you've updated to at least version 2.1.3.

Copyright

Copyright 2014-2022 codecov

License

FOSSA Status