Metadata-Version: 2.0
Name: pulsar-app
Version: 0.3.0.dev4
Summary: Distributed job execution application built for Galaxy (http://galaxyproject.org/).
Home-page: https://github.com/galaxyproject/pulsar
Author: Galaxy Project
Author-email: jmchilton@gmail.com
License: Apache License 2.0
Keywords: pulsar
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: Environment :: Console
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: POSIX
Classifier: Operating System :: Microsoft :: Windows
Classifier: Natural Language :: English
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.6
Classifier: Programming Language :: Python :: 2.7
Requires-Dist: six
Requires-Dist: webob
Requires-Dist: psutil
Requires-Dist: pyyaml
Requires-Dist: PasteScript
Requires-Dist: paste

======
Pulsar
======

.. image:: https://readthedocs.org/projects/pip/badge/?version=latest
        :target: https://pulsar.readthedocs.org.
.. image:: https://travis-ci.org/galaxyproject/pulsar.png?branch=master
        :target: https://travis-ci.org/galaxyproject/pulsar
.. image:: https://coveralls.io/repos/galaxyproject/pulsar/badge.png?branch=master
        :target: https://coveralls.io/r/galaxyproject/pulsar?branch=master

This project is a Python server application that allows a `Galaxy
<http://galaxyproject.org>`_ server to run jobs on remote systems (including
Windows) without requiring a shared mounted file systems. Unlike traditional
Galaxy job runners - input files, scripts, and config files may be transferred
to the remote system, the job is executed, and the results are transfered back
to the Galaxy server - eliminating the need for a shared file system.

Full documentation for the project can be found on `Read The Docs
<https://pulsar.readthedocs.org/>`_.

------------------
Configuring Galaxy
------------------

Galaxy job runners are configured in Galaxy's ``job_conf.xml`` file. Some small
examples of how to configure this can be found `here
<https://pulsar.readthedocs.org/en/latest/galaxy_conf.html>`__, but be sure
to checkout ``job_conf.xml.sample_advanced`` in your Galaxy code base or on
`Github
<https://github.com/galaxyproject/galaxy/blob/master/config/job_conf.xml.sample_advanced>`_
for complete information.

------------------
Quickstart
------------------

Full details on different ways to install Pulsar can be found in the `install
section <https://pulsar.readthedocs.org/en/latest/install.html>`__ of the
documentaiton, but if your machine has the proper Python dependencies
available it can be quickly download and a test job run with.

::

    mkdir pulsar
    cd pulsar
    virtualenv venv
    . venv/bin/activate # .venv\Scripts\activate if Windows
    pip install pulsar-app
    pulsar-config 
    pulsar --daemon # just pulsar if Windows
    pulsar-check # runs a test job

The `configuration documentation
<https://pulsar.readthedocs.org/en/latest/configure.html>`__
has many details on securing your Pulsar server and enabling advanced features
such as cluster integration and message queue communication.

-----------------------
Development and Testing
-----------------------

The recommended approach to setting up a development environment for Pulsar on
Linux or Mac OS X is rougly as follows::

    git clone https://github.com/galaxyproject/pulsar
    cd pulsar
    virtualenv .venv
    . .venv/bin/activate # .venv\Scripts\activate if Windows
    pip install -r requirements.txt
    pip install -r dev-requirements.txt

This project is distributed with unit and integration tests (many of which
will not run under Windows), the following command will install the needed
python components to run these tests. The following command will then run
these tests::

    make tests

The following command will then produce a coverage report
corresponding to this test and place it in the ``coverage_html_report``
subdirectory of this project.::

    coverage html

Checkout the `Contributing
<https://pulsar.readthedocs.org/en/latest/contributing.html>`_ documentation
for many more details on developing and contributing to Pulsar.

Please note that this project is released with a `Contributor Code of Conduct 
<https://pulsar.readthedocs.org/en/latest/conduct.html>`__. By participating
in this project you agree to abide by its terms.




History
-------

------------------------
0.3.0.dev4
------------------------

* Changed the name of project to Pulsar, moved to Github.
* New RESTful web services interface.
* SCP and Rsync file staging options added by Eric Rasche. `Pull 
  Request <https://github.com/galaxyproject/pulsar/pull/34>`__
* Allow YAML based configuration.
* Support for more traditional ``pip``/``setup.py``-style
  installs.
* Dozens of smaller bugfixes and documentation updates.

---------------------
0.2.0
---------------------

* Last version named the LWR - found on `BitBucket <https://bitbucket.org/jmchilton/lwr>`__.
* Still supported in Galaxy as of 15.03 the release.
* Introduced support for submitting to various queueing systems,
  operation as a Mesos framework, Docker support, and
  various other advanced deployment options.
* Message queue support.
* Framework for configurable file actions introduced.

---------------------
0.1.0
---------------------

* Simple support for running jobs managed by the Python LWR
  web process.
* https://bitbucket.org/jmchilton/lwr/branch/0.1

---------------------
0.0.1
---------------------

* See the original `announcement <http://dev.list.galaxyproject.org/New-Remote-Job-Runner-td4138951.html>`__
  and `initial commit <https://github.com/galaxyproject/pulsar/commit/163ed48d5a1902ceb84c38f10db8cbe5a0c1039d>`__.


