Skip to main content

A minimal fork of django-jenkins designed to work with the discover runner, made with simplicity in mind

Project description

[![Build Status](https://drone.io/github.com/lincolnloop/django-discover-jenkins/status.png)](https://drone.io/github.com/lincolnloop/django-discover-jenkins/latest)

A streamlined fork of django-jenkins designed to work with the default test command and the discover runner.

[Read the Docs](https://django-discover-jenkins.readthedocs.org/)

Why?

The overall goal is to run tests on Jenkins the same way you do on your local machine. This project is designed to take advantage of [django-discover-runner](https://github.com/jezdez/django-discover-runner/), which is the default test runner in Django 1.6. Instead of using a setting to list which apps should be tested, or accepting Django-specific test labels, it uses the official test discovery feature of the new unittest2.

Also, the original [django-jenkins](https://github.com/kmmbvnr/django-jenkins) project doesn’t take advantage of improvements to testing introduced in Django 1.4. Special management commands are no longer needed, as test runners themselves can add options that are handled by the built-in test command.

What’s Changed?

  • It doesn’t override the suite construction. Use the included test runner based on the django-discover-runner, or use the included mixin to add Jenkins functionality to your own runner. Your test suite will be built the same way on Jenkins as it is on your local machine.

  • No management commands are provided. Since Django 1.4, the built in ‘test’ command has allowed the test runner to define additional options that the management command will accept.

  • It doesn’t use signals. Instead of using the event/callback style of signals and using inspect.getmembers to connect everything, the test runner simply checks for key methods on each task the same way Django’s request handler checks for methods on middleware.

  • Not everything works yet. Only a subset of the django-jenkins tasks have been ported at this point. I’d love to accept your pull requests to add more of them.

Who?

First and foremost, the authors of [django-jenkins](https://github.com/kmmbvnr/django-jenkins) are responsible for the basis of most of this code. I ([Brandon Konkle](https://github.com/bkonkle)) just took it apart and put it back together again in a different way, then fixed or reworked some things. Thank you to the contributors of that project!

For the full list of original authors and for the contributors to this project, see the AUTHORS.md file.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django-discover-jenkins-0.1.0.tar.gz (10.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

django_discover_jenkins-0.1.0-py2.py3-none-any.whl (14.7 kB view details)

Uploaded Python 2Python 3

File details

Details for the file django-discover-jenkins-0.1.0.tar.gz.

File metadata

File hashes

Hashes for django-discover-jenkins-0.1.0.tar.gz
Algorithm Hash digest
SHA256 821f5e5b31926d805f28e8fddd84aaf07bc14b442bc2114b54ebf34300e1601e
MD5 3ac456fded4deb8337a28f3592b1a168
BLAKE2b-256 482d37e4df3c7bc5438aa9bd9d5cb91844d50679b301e41e38f128283258bceb

See more details on using hashes here.

File details

Details for the file django_discover_jenkins-0.1.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for django_discover_jenkins-0.1.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 98844eae2253e9d4467bb98e5d0bf4c860ec6c6c45f1dba08edf1a3d86e607f2
MD5 3c20dc12391c33465e0931af1e80688b
BLAKE2b-256 b9b51ea76239aafcebf57dfbc0e98905ac930d00b8720f5aa579c5c7306395a9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page