{ "info": { "author": "UNKNOWN", "author_email": "UNKNOWN", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Environment :: Console", "Intended Audience :: Science/Research", "License :: OSI Approved :: GNU Affero General Public License v3 or later (AGPLv3+)", "Operating System :: POSIX :: Linux", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Topic :: Scientific/Engineering :: Bio-Informatics" ], "description": "## Reproducible Analyses for Bioinformatics\n\nRabix is an open source implementation of the specification being developed on the\n[Common Workflow Language mailing list](https://groups.google.com/forum/#!forum/common-workflow-language).\n\nCWL is an informal task force consisting of people from various organizations\nthat have an interest in portability of bioinformatics workflows.\nThe goal is to specify a way to describe bioinformatics tools and workflows that is powerful,\neasy to use and allows for portability of tools/workflows and reproducibility of runs.\n\nVersion 0.7 is approaching full compatibility to\n[draft2](http://common-workflow-language.github.io/draft-2)\nspecification.\nTo play with describing tools and making workflows visit [rabix.org](http://rabix.org).\n\nThis repo includes a local python executor and some utilities for building docker images.\n\n\n### Install\n\n#### Using VirtualBox and Vagrant\n\nWe've pre-installed rabix and dependencies on a VirtualBox machine image.\nIf you install VirtualBox and Vagrant, you can run the machine using the vagrantfile:\n\n```\nwget https://s3.amazonaws.com/rabix/Vagrantfile\nvagrant up && vagrant ssh\n# Example BWA run with local files\nsudo pip install -U rabix\ncd rabix/examples\nrabix https://s3.amazonaws.com/rabix/rabix-test/bwa-mem.json -- --reads test-data/example_human_Illumina.pe_1.fastq --reads test-data/example_human_Illumina.pe_2.fastq --reference test-data/chr20.fa\n```\n\n#### On an EC2 instance\n\nIf you launch an instance on AWS in the us-east region, you can use the public AMI `ami-60644508` which has rabix and dependencies installed. SSH to the instance using \"rabix\" as username and password.\n\nTo run the BWA example:\n\n```\nsudo pip install -U rabix\ncd examples\nrabix https://s3.amazonaws.com/rabix/rabix-test/bwa-mem.json -- --reads test-data/example_human_Illumina.pe_1.fastq --reads test-data/example_human_Illumina.pe_2.fastq --reference test-data/chr20.fa\n```\n\n#### Linux\n\nRabix requires Python 2.7 or 3.x to run.\n\nThere are several external dependencies for rabix.\nThe first one is [Docker](https://docs.docker.com/installation/#installation) (v1.5 or later)\nfor running command line bioinformatics tools.\nSecond one is a JavaScript interpreter:\nyou can look for available options on\n[PyExecJS](https://github.com/doloopwhile/PyExecJS),\nbut the easiest way is probably to install something like PhantomJS or NodeJS\nfrom your distro's repo.\nFinally you should install `libyaml` development package.\n\nIf you are running recent Ubuntu (14.04 or newer),\nthe following should setup your system:\n\n```\n$ sudo apt-get install python-dev python-pip docker.io phantomjs libyaml-dev\n```\n\nalthough you'll probably want to install newer version of Docker from the above link.\n\nNow we can install rabix via `pip`:\n\n```\n$ pip install rabix\n```\n\nIf you are using Anaconda there might be an issue with a version of `requests`,\nso you should create separate environment with requests 2.2.1,\nprior to running `pip`:\n\n```\n$ conda create -n rabix pip requests=2.2.1\n$ source activate rabix\n```\n\nTry running `rabix` command to see if everything went well.\n\n\n### Basic usage\n\nThere are two executables installed with rabix package: `rabix` - the executor of apps and workflows, and `rabix-tools` which is command line suit with various utilities.\n\nMain argument for `rabix` command is a URI (local file path or HTTP URL) to a JSON document that describes an app.\nRabix supports\n[JSON pointer](http://tools.ietf.org/html/rfc6901)\nspec, so you can reference a description within larger JSON document: `rabix \"apps.json#my_app_3\"`\n\n\nWhen you run `rabix` with tool description document, you'll be presented with arguments you need to fill in in order to run it so for example:\n\n```\nrabix https://s3.amazonaws.com/rabix/rabix-test/bwa-mem.json\n```\n\nwill produce the following output:\n\n Usage:\n rabix [-v...] [-hcI] [-d ] [-i ] [--resources.mem= --resources.cpu=]\n [-- --reads=... --reference= [--minimum_seed_length=] [--min_std_max_min=...]...]\n\n\nWe see a lot of options here, but ideally, we'll be dealing with workflows that have lot of options pre-populated, so that we only need to supply few additional arguments such as yours input files or similar.\n\nLet's try running this tool with some example files:\n\n```\n$ rabix -v https://s3.amazonaws.com/rabix/rabix-test/bwa-mem.json -- \\\n --reference https://s3.amazonaws.com/rabix/rabix-test/chr20.fa \\\n --reads https://s3.amazonaws.com/rabix/rabix-test/example_human_Illumina.pe_1.fastq \\\n --reads https://s3.amazonaws.com/rabix/rabix-test/example_human_Illumina.pe_2.fastq\n```\n\nOnce again, we can supply either paths to local files or HTTP URLs.\n\nOf course of we wanted to type down command line arguments for command line programs, we wouldn't need a middleman. Here is a more meaningful example:\n\n```\nrabix -v -i https://s3.amazonaws.com/rabix/rabix-test/inputs-workflow-remote.json \\\n https://s3.amazonaws.com/rabix/rabix-test/bwa-mem-workflow.json\n```\n\nNow we have entire workflow defined in one file and all the options we want to apply to that workflow in another, specified after `-i` option.\nThese are simple JSON files that you can write yourself, or more conveniently, use UI on [rabix.org](http://rabix.org).\n\nWhen running an app, rabix will look for a docker images specified in the document, pull them and run according to description.\nIf for some reason you want to pre-fetch required images, you can use \"--install\" switch:\n\n\n```\n$ rabix --install https://s3.amazonaws.com/rabix/rabix-test/bwa-mem.json\n```\n\n\n### How to contribute\n\nAs mentioned earlier, rabix is an implementation of Common Workflow Language, plus a playground for future ideas.\nFirst question is whether your intended contribution related to CWL in general or rabix in particular.\nThe way you should decide this is whether it's related to overall functionality of tools, workflows and document formats (CWL)\nor some aspect of implementation, auxiliary utilities, etc. (rabix).\nIf former, you should probably present your idea on the mailing list or submit an issue to the\n[Common Workflow Language](https://github.com/common-workflow-language/common-workflow-language)\nproject.\n\nIf you are interested in contributing to rabix, feel free to submit issues and pull requests.\nIf you are contributing code, pay attention to \"devel\" branch as it's the place where feature branches get merged.\nWe will merge thing to master branch periodically in sync with releases on PyPI.", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "UNKNOWN", "keywords": null, "license": "AGPLv3", "maintainer": null, "maintainer_email": null, "name": "rabix", "package_url": "https://pypi.org/project/rabix/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/rabix/", "project_urls": { "Download": "UNKNOWN", "Homepage": "UNKNOWN" }, "release_url": "https://pypi.org/project/rabix/0.8.0/", "requires_dist": null, "requires_python": null, "summary": "Reproducible Analyses for Bioinformatics", "version": "0.8.0" }, "last_serial": 1798907, "releases": { "0.2": [], "0.5.0": [ { "comment_text": "", "digests": { "md5": "b09feaff163591e8fc064da55e4f8c80", "sha256": "9ddcb3f46cdc26f4cc0bd44086a54287e4ddeec4c33582c0f3f2fdfd14dc0ac4" }, "downloads": -1, "filename": "rabix-0.5.0.tar.gz", "has_sig": false, "md5_digest": "b09feaff163591e8fc064da55e4f8c80", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 46304, "upload_time": "2014-12-23T18:00:02", "url": "https://files.pythonhosted.org/packages/68/52/dd83cba87e35de712b4a3ade8ed67231e6be2bd8318f982bb5aa917f40b8/rabix-0.5.0.tar.gz" } ], "0.5.0-pre": [], "0.5.1": [ { "comment_text": "", "digests": { "md5": "c257d83cc0eda5aa39ffaeeb414de62d", "sha256": "188b665a99449ece6edb3174fd132588516c59f448a7755064a8a78053adff78" }, "downloads": -1, "filename": "rabix-0.5.1.tar.gz", "has_sig": false, "md5_digest": "c257d83cc0eda5aa39ffaeeb414de62d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 47507, "upload_time": "2014-12-30T14:36:28", "url": "https://files.pythonhosted.org/packages/33/fc/df1b8184f6044a88b418cec2e0152965db895c2ca565b978bb28affd22ce/rabix-0.5.1.tar.gz" } ], "0.5.2": [ { "comment_text": "", "digests": { "md5": "07880e8504843fe98a263ef54ce52c8a", "sha256": "a484e9884b8741aa8b487e3e6e3c9c5ef855f2952ea7b2d997b51174b9d5125d" }, "downloads": -1, "filename": "rabix-0.5.2.tar.gz", "has_sig": false, "md5_digest": "07880e8504843fe98a263ef54ce52c8a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 47564, "upload_time": "2015-01-13T14:54:28", "url": "https://files.pythonhosted.org/packages/a0/a9/d93ff23aeea80ea94ca858b99e30c1d8d021fb1ccac754461533cfe2ccc4/rabix-0.5.2.tar.gz" } ], "0.6.0": [ { "comment_text": "", "digests": { "md5": "f1d59d5e33ad77ebb1417f88519dcd15", "sha256": "903003b74834c0a2227e6aa3d0e392e8a4ab0f8662e8102ae629b8f4b6a6c591" }, "downloads": -1, "filename": "rabix-0.6.0.tar.gz", "has_sig": false, "md5_digest": "f1d59d5e33ad77ebb1417f88519dcd15", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 47855, "upload_time": "2015-01-16T18:45:26", "url": "https://files.pythonhosted.org/packages/e0/50/9151922aa9a88dc43f60e939089c882f788a739dec16dbd7e4ce95c079c7/rabix-0.6.0.tar.gz" } ], "0.6.1": [ { "comment_text": "", "digests": { "md5": "9103b59bc54536a998f0cc2b163974e2", "sha256": "91feae8065805bd4b8fa9687193bbb3d8e63a9463122f8dfede02690200e7d0d" }, "downloads": -1, "filename": "rabix-0.6.1.tar.gz", "has_sig": false, "md5_digest": "9103b59bc54536a998f0cc2b163974e2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 48059, "upload_time": "2015-01-21T18:24:16", "url": "https://files.pythonhosted.org/packages/f2/fd/0b9f6d1abaca475b048888e01c70b900f49c296c3549971a6851362386be/rabix-0.6.1.tar.gz" } ], "0.6.2": [ { "comment_text": "", "digests": { "md5": "60c6f33c298ef1e70b4675998b62db59", "sha256": "cce4ef2e86a4c4c337c1a155427240c5272a2d3305babd8437a4bed7bc0d257d" }, "downloads": -1, "filename": "rabix-0.6.2.tar.gz", "has_sig": false, "md5_digest": "60c6f33c298ef1e70b4675998b62db59", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 49950, "upload_time": "2015-02-04T18:10:36", "url": "https://files.pythonhosted.org/packages/a9/db/60f324d5807a7cbf29352efc79052883357033a3e58d2274d701cd1f7c74/rabix-0.6.2.tar.gz" } ], "0.6.4": [ { "comment_text": "", "digests": { "md5": "a551c3a7a65540d2b44afd2fe26a760b", "sha256": "dbed689cda8a96379ab91366a89ac395e535c88ef193f3e8028b65d77d3e5180" }, "downloads": -1, "filename": "rabix-0.6.4.tar.gz", "has_sig": false, "md5_digest": "a551c3a7a65540d2b44afd2fe26a760b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 50173, "upload_time": "2015-02-20T12:53:42", "url": "https://files.pythonhosted.org/packages/ea/73/f70d13c989e1ddc8445e55ed5852f7279a00aa7c0053f16ae51d58ee49d2/rabix-0.6.4.tar.gz" } ], "0.6.5": [ { "comment_text": "", "digests": { "md5": "e867b2bd162f3daeb0ab6c5f6f58476f", "sha256": "5521628f7345ddfe2c79c4c98feea6e646ce9eca992669ba343bacd7ee597b01" }, "downloads": -1, "filename": "rabix-0.6.5.tar.gz", "has_sig": false, "md5_digest": "e867b2bd162f3daeb0ab6c5f6f58476f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 51133, "upload_time": "2015-03-17T18:36:19", "url": "https://files.pythonhosted.org/packages/79/3f/94320e3285e995230285754be36177e1bacc4b68763a43b6cd3a241a2a73/rabix-0.6.5.tar.gz" } ], "0.7.0": [ { "comment_text": "", "digests": { "md5": "7b6fd845fa5436db238f0d58538f9ea5", "sha256": "37b4eb5f768b18c97edde8714c02cd4b02c8fea097adcfe3eb6363edac2bc651" }, "downloads": -1, "filename": "rabix-0.7.0.tar.gz", "has_sig": false, "md5_digest": "7b6fd845fa5436db238f0d58538f9ea5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 49236, "upload_time": "2015-07-17T14:03:45", "url": "https://files.pythonhosted.org/packages/46/00/9098c61ebcc14102d265dc648029c67b58ec2ed5bbada95cb50dc0c20722/rabix-0.7.0.tar.gz" } ], "0.7.1": [ { "comment_text": "", "digests": { "md5": "174b42dc2ac4182e725e4a2f1af06c23", "sha256": "6e1c6c7be1cb78e50254ddf3175ed78dec4eed29737ed7d3ec4eb84060365204" }, "downloads": -1, "filename": "rabix-0.7.1.tar.gz", "has_sig": false, "md5_digest": "174b42dc2ac4182e725e4a2f1af06c23", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 49323, "upload_time": "2015-07-17T17:22:19", "url": "https://files.pythonhosted.org/packages/47/c8/70f5c0b4d5a6d4f90620ed4fa148c47d87baca21a102aafe455c8cab78fc/rabix-0.7.1.tar.gz" } ], "0.7.2": [ { "comment_text": "", "digests": { "md5": "80b285560d2c7e49ba1ed5c9fc1ed994", "sha256": "fed08d3dba992aa64790282174ab66a51568e12230c983f7017710d0189ac59b" }, "downloads": -1, "filename": "rabix-0.7.2.tar.gz", "has_sig": false, "md5_digest": "80b285560d2c7e49ba1ed5c9fc1ed994", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 49358, "upload_time": "2015-07-20T16:21:06", "url": "https://files.pythonhosted.org/packages/a5/09/5fc885592defbaf07f764a5e0f7a2fd8d57f87881d4e9291a7b5b02a8c72/rabix-0.7.2.tar.gz" } ], "0.7.3": [ { "comment_text": "", "digests": { "md5": "8985481fce73c5ffecdd20cb51e483e6", "sha256": "a865253edee1acedcea5c120b851d42c33643d2da6e2dfe9c426f1b6fc6f1d33" }, "downloads": -1, "filename": "rabix-0.7.3.tar.gz", "has_sig": false, "md5_digest": "8985481fce73c5ffecdd20cb51e483e6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 49173, "upload_time": "2015-07-27T12:43:11", "url": "https://files.pythonhosted.org/packages/ee/92/5065d2153c640f587450877a2763baed8abd10f1ac46c5d158ca7d05e321/rabix-0.7.3.tar.gz" } ], "0.7.4": [ { "comment_text": "", "digests": { "md5": "47ac9a591d88b73d99bc718ae6618c2a", "sha256": "a481f15f3383c294bb8f69ccb8d83bdbe57fb3dcc0551e0b0c498ef401673814" }, "downloads": -1, "filename": "rabix-0.7.4.tar.gz", "has_sig": false, "md5_digest": "47ac9a591d88b73d99bc718ae6618c2a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 49708, "upload_time": "2015-08-03T15:20:42", "url": "https://files.pythonhosted.org/packages/28/71/0efbf109e03bc43400c0a40fba3d5e745dfec3bebac3cd124eaadbe72cb2/rabix-0.7.4.tar.gz" } ], "0.7.5": [ { "comment_text": "", "digests": { "md5": "dd1c5f5f403e945395c4bef12ce292bf", "sha256": "6dfae5fb74f42cc793365d6c6b257fc0e817bb7a2f20d371b3afb8aa10031f19" }, "downloads": -1, "filename": "rabix-0.7.5.tar.gz", "has_sig": false, "md5_digest": "dd1c5f5f403e945395c4bef12ce292bf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 50577, "upload_time": "2015-09-15T14:25:48", "url": "https://files.pythonhosted.org/packages/5e/f5/08315674ce999a641580d7298a0b1fbe743a87edb7dcda904232da119553/rabix-0.7.5.tar.gz" } ], "0.7.5pre": [ { "comment_text": "", "digests": { "md5": "f937fc2e9e26dcda1cae3f3eb4894a2b", "sha256": "93b43b71f7bae8ee0f50af231093925766ce5ada7e80498b963b1989fd16e174" }, "downloads": -1, "filename": "rabix-0.7.5pre.tar.gz", "has_sig": false, "md5_digest": "f937fc2e9e26dcda1cae3f3eb4894a2b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 50598, "upload_time": "2015-09-15T14:25:20", "url": "https://files.pythonhosted.org/packages/50/cc/960127d45b0b2dd1416f80f9268ae59db12ad1caf7e2bfe62cd9e7bf1ac0/rabix-0.7.5pre.tar.gz" } ], "0.8.0": [ { "comment_text": "", "digests": { "md5": "30f854f191254fa220e8eb134d608f37", "sha256": "0ca77d23b90cd4a02782acb654a51773e2920247d76d9b6d2efefb3fb5f3a117" }, "downloads": -1, "filename": "rabix-0.8.0.tar.gz", "has_sig": false, "md5_digest": "30f854f191254fa220e8eb134d608f37", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 50981, "upload_time": "2015-11-03T11:28:52", "url": "https://files.pythonhosted.org/packages/33/f2/04cba8b0386e7aa85646da051327fce65be9014d8b8c2a282b83522d3d22/rabix-0.8.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "30f854f191254fa220e8eb134d608f37", "sha256": "0ca77d23b90cd4a02782acb654a51773e2920247d76d9b6d2efefb3fb5f3a117" }, "downloads": -1, "filename": "rabix-0.8.0.tar.gz", "has_sig": false, "md5_digest": "30f854f191254fa220e8eb134d608f37", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 50981, "upload_time": "2015-11-03T11:28:52", "url": "https://files.pythonhosted.org/packages/33/f2/04cba8b0386e7aa85646da051327fce65be9014d8b8c2a282b83522d3d22/rabix-0.8.0.tar.gz" } ] }