Skip to main content

Plug and play continuous integration with django and jenkins

Project description

Plug and play continuous integration with Django and Jenkins

https://img.shields.io/pypi/v/django-jenkins.svg https://requires.io/github/kmmbvnr/django-jenkins/requirements.png?branch=master https://badges.gitter.im/Join%20Chat.svg

Installation

From PyPI:

$ pip install django-jenkins

Or by downloading the source and running:

$ python setup.py install

Latest git version:

$ pip install -e git+git://github.com/kmmbvnr/django-jenkins.git#egg=django-jenkins
$ pip install coverage

Installation for Python 3:

Works out of the box

Usage

Add 'django_jenkins' to your INSTALLED_APPS list. Configure Jenkins to run the following command:

$ ./manage.py jenkins --enable-coverage

This will create reports/ directory with junit xml, Coverage and Pylint reports.

For more details see the generic tutorial: https://sites.google.com/site/kmmbvnr/home/django-jenkins-tutorial

Settings

  • PROJECT_APPS

    If present, it is supposed to be a list/tuple of django apps for Jenkins to run. Tests, reports, and coverage are generated only for the apps from this list.

  • JENKINS_TASKS

    List of Jenkins reporters executed by ./manage.py jenkins command.

    Default value:

    JENKINS_TASKS = ()
  • JENKINS_TEST_RUNNER

    The name of the class to use for starting the test suite for jenkins command. Class should be inherited from django_jenkins.runner.CITestSuiteRunner

Reporters

Here is the reporters prebuild with django-jenkins

  • django_jenkins.tasks.run_pylint

    Runs Pylint over selected Django apps.

    Task-specific settings: PYLINT_RCFILE

  • django_jenkins.tasks.run_pep8

    Runs pep8 tool over selected Django apps. Creates Pylint compatible report for Jenkins

    You should have pep8 python package (>=1.3) installed to run this task.

    Task-specific settings: PEP8_RCFILE

  • django_jenkins.tasks.run_pyflakes

    Runs Pyflakes tool over selected Django apps. Creates Pylint compatible report for Jenkins.

    You should have Pyflakes python package installed to run this task.

  • django_jenkins.tasks.run_flake8

    Runs flake8 tool over selected Django apps. Creates pep8 compatible report for Jenkins.

    You should have flake8 python package installed to run this task.

Changelog

GIT Version

  • csslint/jshint/sccsLint/sloccount task removed (could be used as standalone tools)

Contribution guide

  • Set up local jenkins

  • Set up django-jenkins:

    npm install jshint
    npm install csslint
    PATH=$PATH:$WORKSPACE/node_modules/.bin
    tox
  • Ensure that everything works

  • Modify the the only one thing

  • Ensure that everything works again

  • Fix pep8/pyflakes errors and minimize pylint’s warnings

  • Pull request!

Authors

Created and maintained by Mikhail Podgurskiy <kmmbvnr@gmail.com>

Contributors: https://github.com/kmmbvnr/django-jenkins/graphs/contributors

Special thanks, for all github forks authors for project extensions ideas and problem identifications.

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-jenkins2-1.12.0.tar.gz (21.4 kB view details)

Uploaded Source

Built Distribution

django_jenkins2-1.12.0-py2.py3-none-any.whl (17.5 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file django-jenkins2-1.12.0.tar.gz.

File metadata

  • Download URL: django-jenkins2-1.12.0.tar.gz
  • Upload date:
  • Size: 21.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.10.12

File hashes

Hashes for django-jenkins2-1.12.0.tar.gz
Algorithm Hash digest
SHA256 2fd1667519d73a8f498f6b6cf1034e3e4420bafbff2ce739223858562ef0e1d8
MD5 5115e7dbbecd994c1f3899efd58c451a
BLAKE2b-256 e39afbce3b7a4e9bf7745547a05e7c5a9aecbff847ed965dddf44d811fcc49e0

See more details on using hashes here.

File details

Details for the file django_jenkins2-1.12.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for django_jenkins2-1.12.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 20dcc4bc0034c6cbfae0eb3e353a737569bec699b90e19ab1c2964a40c4c210f
MD5 e8be13528d0239453ca0fff4d8b92773
BLAKE2b-256 a53e4143627e7c92f801de436762363d2263927750f015f9eee5a8e1e96ab16d

See more details on using hashes here.

Supported by

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