<commit_before>=============================
Django Remote Submission
=============================

.. image:: https://badge.fury.io/py/django-remote-submission.png
    :target: https://badge.fury.io/py/django-remote-submission

.. image:: https://travis-ci.org/ornl-ndav/django-remote-submission.png?branch=master
    :target: https://travis-ci.org/ornl-ndav/django-remote-submission

.. image:: https://codecov.io/gh/ornl-ndav/django-remote-submission/branch/master/graph/badge.svg
    :target: https://codecov.io/gh/ornl-ndav/django-remote-submission

.. image:: https://zenodo.org/badge/DOI/10.5281/zenodo.848749.svg
   :target: https://doi.org/10.5281/zenodo.848749

A Django application to manage long running job submission, including starting the job, saving logs, and storing results.

Features
--------

* Able to connect to any server via SSH user/password or key-based authentication.

* Able to transfer and launch any script in the remote server (e.g. python or bash scripts).

* Able to capture and receive logs and write them to a database in realtime.

* Able to return any modified files from the remote server.

* Uses WebSockets to notify the Web Client of the Job status: ``initial``, ``submitted``, ``success`` or ``failure``.

* Uses WebSockets to provide Job Log (standard output and standard error) in real time to the Web Client.

Documentation
-------------

The full documentation is at https://django-remote-submission.readthedocs.org.

==========
Quickstart
==========

Install Django Remote Submission::

    pip install django-remote-submission
<commit_msg>Added JOSS Logo<commit_after>=============================
Django Remote Submission
=============================

.. image:: https://badge.fury.io/py/django-remote-submission.png
    :target: https://badge.fury.io/py/django-remote-submission

.. image:: https://travis-ci.org/ornl-ndav/django-remote-submission.png?branch=master
    :target: https://travis-ci.org/ornl-ndav/django-remote-submission

.. image:: https://codecov.io/gh/ornl-ndav/django-remote-submission/branch/master/graph/badge.svg
    :target: https://codecov.io/gh/ornl-ndav/django-remote-submission

.. image:: https://zenodo.org/badge/DOI/10.5281/zenodo.848749.svg
   :target: https://doi.org/10.5281/zenodo.848749

.. image:: http://joss.theoj.org/papers/10.21105/joss.00366/status.svg
   :target: http://joss.theoj.org/papers/10.21105/joss.00366

A Django application to manage long running job submission, including starting the job, saving logs, and storing results.

Features
--------

* Able to connect to any server via SSH user/password or key-based authentication.

* Able to transfer and launch any script in the remote server (e.g. python or bash scripts).

* Able to capture and receive logs and write them to a database in realtime.

* Able to return any modified files from the remote server.

* Uses WebSockets to notify the Web Client of the Job status: ``initial``, ``submitted``, ``success`` or ``failure``.

* Uses WebSockets to provide Job Log (standard output and standard error) in real time to the Web Client.

Documentation
-------------

The full documentation is at https://django-remote-submission.readthedocs.org.

==========
Quickstart
==========

Install Django Remote Submission::

    pip install django-remote-submission

{'fraction_non_alphanumeric': 0.16953242835595778, 'fraction_numerical': 0.02171945701357466, 'mean_word_length': 3.978978978978979, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 18, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2669777', 'n_tokens_mistral': 1065, 'n_tokens_neox': 1004, 'n_words': 286}