Set Up Travis CI For Django project

Travis CI is a continuous integration service used to build and test applications hosted on GitHub. Travis CI supports integration with other tools such as coverage analyzers.

Why use Travis?

Travis CI runs your program's tests every time you commit to GitHub. you can easily discover your code breaks. setting up Travis-ci is very easy.

To run tests in Travis you have to create ".travis.yml" file in root directory.

.travis.yml file for Django application.

    language: python # => 1

    python: # => 2

      - "2.6"

      - "2.7"

    services: # => 3

      - mysql

    env: # => 4

      -DJANGO=1.8 DB=mysql
    install: # => 5

      - pip install -r requirements.txt

    before_script: # => 6

      - mysql -e 'create database test;' -u root
    script: # => 7

      - python manage.py test

Explanation for above comments:
1. By defining "language: python" application is developed in python language. 
2. Test your application in multiple versions of python by defining versions in python hook settings
3. Define services required for your application ex: elastic search, radis, etc in services.
4. Specify your Django version and database to use.
5. install application requirements.
6. before_script: as name defines this commands will run before running your actual test cases.
7. command to run tests.

Add above file to your Django project and commit it to GitHub. Now check the build status in Travis-CI.

Posted On 25 March 2015 By MicroPyramid


Need any Help in your Project?Let's Talk

Latest Comments
Related Articles
Understanding middleware functionality in django2.0

Understanding new style of middleware in Django2.0, the difference between old-style & new-style. How to write custom middlewares in new-style and upgrading from old-style middleware.

Continue Reading...
Sending emails using sendgrid on heroku for a Django App

Integrate Sendgrid API to your Heroku app to deliver simplified emails like any notification emails, user signups etc.

Continue Reading...
How to use nested formsets in django

Django Formsets manage the complexity of multiple copies of a form in a view. By using formsets, you can know how many forms were their ...

Continue Reading...
open source packages

Subscribe To our news letter

Subscribe and Stay Updated about our Webinars, news and articles on Django, Python, Machine Learning, Amazon Web Services, DevOps, Salesforce, ReactJS, AngularJS, React Native.
* We don't provide your email contact details to any third parties