Flask-CI's documentation! ========================= .. image:: https://img.shields.io/pypi/v/flask-ci.svg :target: https://pypi.python.org/pypi/flask-ci .. image:: https://img.shields.io/pypi/dm/flask-ci.svg :target: https://pypi.python.org/pypi/flask-ci .. image:: https://travis-ci.org/vicenteneto/flask-ci.svg?branch=master :target: https://travis-ci.org/vicenteneto/flask-ci :alt: Build Status .. image:: https://requires.io/github/vicenteneto/flask-ci/requirements.svg?branch=master :target: https://requires.io/github/vicenteneto/flask-ci/requirements/?branch=master :alt: Requirements Status .. image:: http://img.shields.io/:status-beta-yellowgreen.svg :target: https://pypi.python.org/pypi/flask-ci :alt: Status .. image:: http://img.shields.io/:license-mit-blue.svg :target: https://github.com/vicenteneto/flask-ci/blob/master/LICENSE :alt: License Continuous Integration with Flask. Installation ------------ From PyPI:: $ pip install Flask-CI Or by downloading the source and running:: $ python setup.py install Latest git version:: $ pip install git+https://github.com/vicenteneto/flask-ci.git#egg=Flask-CI Usage ----- Consider you have this code:: # manage.py from flask_script import Manager from myapp import app, settings manager = Manager(app.create_app(settings)) if __name__ == "__main__": manager.run() Import the CICommand sub-manager:: from flask_ci import CICommand Register the CICommand sub-manager to your primary Manager (within manage.py):: manager.add_command('ci', CICommand(settings)) Configure your continuous integration tool to run the following command:: $ python manage.py ci Settings -------- - ``CI_TASKS`` List of Continuous Integration reporters executed by ``python manage.py ci`` command. - ``PROJECT_APPS`` A list of the custom apps you’ve written for your project. Reports are generated only for the apps from this list. Sample:: # settings.py CI_TASKS = [ 'flask_ci.tasks.run_nose', 'flask_ci.tasks.run_pep8', 'flask_ci.tasks.run_pylint' ] PROJECT_APPS = [ 'flask_ci_test', 'flask_ci_test_users' ] Reporters --------- Here is the reporters prebuild with Flask-CI. - ``flask_ci.tasks.run_nose`` Runs `Nose <https://nose.readthedocs.org/en/latest>`_ over selected apps. - ``flask_ci.tasks.run_pep8`` Runs `Pep8 <http://pep8.readthedocs.org/en/latest/index.html>`_ tool over selected apps. Task-specific settings: ``PEP8_RCFILE``. - ``flask_ci.tasks.run_pylint`` Runs `Pylint <http://www.logilab.org/project/pylint>`_ over selected apps. Task-specific settings: ``PYLINT_RCFILE``. Contributing ------------ Have a bug or a feature request? `Please, open a GitHub issue <https://github.com/vicenteneto/flask-ci/issues/new>`_. **Vicente Neto (creator)** - <https://github.com/vicenteneto> **Clement** - <https://github.com/clement10601> Copyright and license --------------------- Copyright 2016-, Vicente Neto. This project is licensed under the `MIT License <https://github.com/vicenteneto/flask-ci/blob/master/LICENSE>`_. Changes ------- **1.2.9.1 - 2017-01-21** - Unit tests - Integration tests **1.1.20 - 2017-01-01** - Code refactoring - Updating requirements dependencies **0.12.21 - 2016-12-21** - Python3 compatible **0.9.4 - 2016-09-04** - Updating requirements dependencies **0.3.25 - 2016-03-25** - Fixing usage section typo on README - Added an example application **0.3.26 - 2016-03-26** - Refactoring project architecture - Updating outdated requirements **0.4.15 - 2016-04-15** - Added Flask-Pylint plugin on pylint reports **0.4.22 - 216-04-22** - Fixing nose tests task execution 3rd Party Stuff --------------- Flask-CI is built with the help of `Flask-Script <https://flask-script.readthedocs.org/en/latest/>`_.