Continuous Integration

Continuous integration is the name for automatically executing your tests when you push changes to your software. The generator generates configuration files for the Travis CI and AppVeyor continuous integration platforms, and includes their status badges for the project in the README.

Travis CI

Travis CI will test your software on Linux and OSX across Python versions 3.6, 3.7, and 3.8, excluding those less than your minimum supported.

Note

As of 2019 May 6, Travis CI does not have an image for OSX that includes Python 3.8. While Homebrew is available, trying to update the package list seems to fail (or return a spurious non-zero status), which I have not yet investigated. For the same reason, it is impossible to install nproc (used by the lint script) on the OSX image that has Python 3.6.

To set up Travis CI for your project, you’ll need to:

  • Grant access to the Travis CI application for your account or organization. This will let Travis CI add hooks and mark commits with the status of your builds.
  • Log in to Travis CI with your GitHub credentials.
  • Enable your repository on Travis CI. This will create a hook on GitHub to notify Travis CI whenever you push to your repository.

AppVeyor

AppVeyor will test your software on Windows for Python versions 3.6 and 3.7, excluding those less than your minimum supported.

To set up AppVeyor for your project, you’ll need to:

  • Log in to AppVeyor with your GitHub credentials.
  • Grant access to AppVeyor for the project you want to test. This will let AppVeyor add hooks and mark commits with the status of your builds.
  • Add the project on AppVeyor. This will create a hook on GitHub to notify AppVeyor whenever you push to your repository.