Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement an Embedded Pulsar Job Runner #2057

Merged
merged 5 commits into from
Apr 1, 2016

Conversation

jmchilton
Copy link
Member

This implements an initial embedded Pulsar job runner (the last item on #1378 and outlined in this Trello card). See documentation updates to job_conf.xml.sample_advanced for information on configuration.

In addition to the commit that implements this, PR #2052 is included (since this work builds on that) as well smaller doc and import cleanups for the pulsar job runner code in lib/galaxy/jobs/runners/pulsar.py.

Pulsar's setup.py has been parameterized to allow it build a special wheel that doesn't depend on galaxy-lib (galaxyproject/pulsar@ce9d4f9) and instead expects it to come from the environment.

This special dependency has been published to PyPI here (https://pypi.python.org/pypi/pulsar-galaxy-lib) and added to StarForge here (galaxyproject/starforge#79). These are now available on wheels.galaxyproject.org.

In addition to removing the source dirctories - I have removed doc and CI references to these directories.
@natefoo
Copy link
Member

natefoo commented Apr 1, 2016

For anyone unclear on why this is cool, this comment from the sample job conf explains it:

The embedded Pulsar runner starts a Pulsar app internal to Galaxy and communicates it directly. This maybe be useful for instance when Pulsar staging is important but a Pulsar server is unneeded (most obviously for instance if compute servers cannot mount Galaxy's files but Galaxy can mount a scratch directory available on compute).

In other words, you get all of Pulsar's rewriting and staging functionality directly in Galaxy (it can't stage to remote resources, but it can stage all of a job's necessary files to/from a scratch filesystem).

@natefoo natefoo merged commit 1c201a8 into galaxyproject:dev Apr 1, 2016
@bgruening
Copy link
Member

Awesome! 💯

compute). -->
<!-- Specify a complete description of the Pulsar app
to create. Currently this configuration (if set)
must create exactly on job manager. For more
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

s/on/one ?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yup, will open a PR with fix. Thanks.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants