README.rst 2.96 KB
Newer Older
1
.. image:: https://travis-ci.org/edx/edx-ora2.png?branch=master
2 3
    :alt: Travis build status

4

5 6
.. image:: https://coveralls.io/repos/edx/edx-ora2/badge.png?branch=master
    :target: https://coveralls.io/r/edx/edx-ora2?branch=master
7 8
    :alt: Coverage badge

9

10 11 12 13 14
`User documentation available on ReadTheDocs`__.

__ http://peer-assessment.readthedocs.org/


15 16 17 18
This is an initial prototype for redesigning Peer Grading and general Open Ended
Submission Evaluation. This project is in the early stages of development and is
not ready for general use.

19

20 21 22 23
Installation
============

The intent of this project is to be installed as Django apps that will be
24 25
included in `edx-platform <https://github.com/edx/edx-platform>`_.

26 27
For JavaScript minification and unit tests, you must `install NodeJS <http://nodejs.org/>`_.

28
To install dependencies and start the development ("workbench") server:
29

30
.. code:: bash
31

32
    ./scripts/workbench.sh
33

34 35 36 37 38 39 40 41 42 43 44
By default, the XBlock JavaScript will be combined and minified.  To
preserve indentation and line breaks in JavaScript source files:

.. code:: bash

    DEBUG_JS=1 ./scripts/workbench.sh

Additional arguments are passed to ``runserver``.  For example,
to start the server on port 8001:

.. code:: bash
45

46
    ./scripts/workbench.sh 8001
47 48


49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
Celery Workers
==============

Some of the OpenAssessment APIs execute tasks asynchronously using `celery <http://docs.celeryproject.org>`_.
The tasks are executed by worker processes.

First, you will need to `install RabbitMQ <http://http://www.rabbitmq.com/download.html>`_.

Once RabbitMQ is installed, you can start a worker process locally:

.. code:: bash

    ./scripts/celery-worker.sh



65 66 67
Running Tests
=============

68
To run the Python and Javascript unit test suites:
69 70 71

.. code:: bash

72
    ./scripts/test.sh
73

74 75 76 77 78 79
To limit Python tests to a particular Django app:

.. code:: bash

    ./scripts/test.sh openassessment.xblock

80 81 82 83 84 85 86 87 88 89 90 91
To run just the JavaScript tests:

.. code:: bash

    npm test

To run the JavaScript tests in Chrome so you can use the debugger:

.. code:: bash

    ./scripts/js-debugger.sh

92

Will Daly committed
93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114
Quality Check
=============

Install pylint:

.. code:: bash

    pip install pylint==0.28.0

Check for quality violations:

.. code:: bash

    pylint apps

Disable quality violations on a line or file:

.. code:: python

    # pylint: disable=W0123,E4567


115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140
License
=======

The code in this repository is licensed under version 3 of the AGPL unless
otherwise noted.

Please see ``LICENSE.txt`` for details.

How to Contribute
=================

Due to the very early stage of development we're at, we are not accepting
contributions at this time. Large portions of the API can change with little
notice.

Reporting Security Issues
=========================

Please do not report security issues in public. Please email security@edx.org

Mailing List and IRC Channel
============================

You can discuss this code on the
`edx-code Google Group <https://groups.google.com/forum/#!forum/edx-code>`_ or
in the `edx-code` IRC channel on Freenode.