From c3888ea2dd6923ba0952855a96456a4ba7e4d8c8 Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Thu, 27 Apr 2017 17:29:37 +0000 Subject: [PATCH 01/80] asdf --- docs/readme.rst | 10 +- histories | 119 + .../commands/cmd_histories_update_history.py | 26 +- tmp | 5319 +++++++++++++++++ 4 files changed, 5470 insertions(+), 4 deletions(-) create mode 100644 histories create mode 100644 tmp diff --git a/docs/readme.rst b/docs/readme.rst index 6b2b3ec..f094bc9 100644 --- a/docs/readme.rst +++ b/docs/readme.rst @@ -1 +1,9 @@ -.. include:: ../README.rst \ No newline at end of file +.. include:: ../README.rst + + +Get histories matching a phrase +------------------------------- + +parsec histories_get_histories | \ + jq '.[] | select(.name | contains("2017.04.27")) | .id' -r | \ + xargs parsec histories_update_history --importable true diff --git a/histories b/histories new file mode 100644 index 0000000..7e9e267 --- /dev/null +++ b/histories @@ -0,0 +1,119 @@ +{ + "importable": false, + "create_time": "2014-01-24T21:47:12.241548", + "contents_url": "/galaxy/api/histories/6b188bb407694a42/contents", + "id": "6b188bb407694a42", + "size": 89132491410, + "user_id": "f570ade6e7840ba0", + "username_and_slug": "u/eric-rasche/h/rna-seq-project-with-jberry-1", + "annotation": null, + "state_details": { + "discarded": 0, + "ok": 56, + "failed_metadata": 0, + "upload": 0, + "paused": 0, + "running": 0, + "setting_metadata": 0, + "error": 1, + "new": 0, + "queued": 0, + "empty": 0 + }, + "state": "error", + "empty": false, + "update_time": "2014-02-21T16:49:39.468641", + "tags": [], + "deleted": false, + "genome_build": "?", + "slug": "rna-seq-project-with-jberry-1", + "name": "RNA Seq Project with JBerry", + "url": "/galaxy/api/histories/6b188bb407694a42", + "state_ids": { + "discarded": [ + "38deb6e287a4132b", + "897ae45496b08e80", + "3ff826d4cbffb600", + "bcc880c3e1f61eb3", + "8c44679860e713aa", + "9d7de7642bbfa9c8", + "2ae04582a96f1201", + "1ade6cb87c5e2b2d", + "358d66d6868f5613" + ], + "ok": [ + "a9a5ff1ee36b33af", + "19cc3c7867dc8bc7", + "5af643171964d8a3", + "dd1bd0e5486395f9", + "3ebd9de69ab977f5", + "a3b5b8412dec9d7b", + "715ade64dcd14d9d", + "a19aac5815cfcbb6", + "0e07476da6304b0f", + "1537b26a636f9ecd", + "b1b3588a17fd7ae6", + "cca73b5ec2c28e46", + "3bffd800ebe4b7ee", + "b069c2740a800913", + "5cf0b140bcf80529", + "6df2ceb97bc8fa56", + "a850a8087522a461", + "d91cc1147195f5fb", + "5b446ee938854d9d", + "91ce7c82a2c6fcfb", + "0affbc36d2ae5bcc", + "7ab07da33d2a5538", + "07ce6b6bc07f4a38", + "95e85f0f1f290936", + "9e653b7f5f5702a6", + "25792331bca74fb4", + "7ea43ce6ecbabfa1", + "9ba61bd940377451", + "22c90e50782e734f", + "94d1ced4656872bf", + "dea1f5b756a61293", + "3530871e2ac7f391", + "8a68132b8acb7fe3", + "e9a9a0c8f0357423", + "7713dbabccc390ed", + "6ac752f664170fc6", + "79c50b1f33e89854", + "1b3e885a1ffb3ce0", + "2c72aab1bf34202f", + "4a7e4c934a9111f6", + "b6612f2d81fbdd93", + "1be8cfe0e90435b2", + "2fbed837881ec790", + "36eca512efbcaa34", + "e9f244b9b806ca10", + "32f91baa200ea81c", + "84ad56e83dd6da14", + "454b5bf20d3a2249", + "264370ce19c11b98", + "24d3b32324845672", + "35f569c7d25616d4", + "fec72c2e90e5f702", + "8d423b2bfde914c9", + "e7955fd2ea4d2c9e", + "833ae49569369e20", + "1d6783925042dc6b", + "cf3e933262433c0e", + "adc947cd4be019f3" + ], + "failed_metadata": [], + "upload": [], + "paused": [], + "running": [], + "setting_metadata": [], + "error": [ + "e1a42552f1d5a2a8" + ], + "new": [], + "queued": [], + "empty": [] + }, + "published": false, + "model_class": "History", + "purged": false +} diff --git a/parsec/commands/cmd_histories_update_history.py b/parsec/commands/cmd_histories_update_history.py index b871c69..3741782 100644 --- a/parsec/commands/cmd_histories_update_history.py +++ b/parsec/commands/cmd_histories_update_history.py @@ -16,13 +16,33 @@ help="Replace history annotation with given string", type=str ) +@click.option( + "--published", + help="Change history published status", + type=bool +) +@click.option( + "--importable", + help="Change history importable status", + type=bool +) @pass_context @bioblend_exception @dict_output -def cli(ctx, history_id, name="", annotation=""): +def cli(ctx, history_id, name="", annotation="", published=False, importable=False): """Update history metadata information. Some of the attributes that can be modified are documented below. """ + kwargs = {} + if name and len(name) > 0: + kwargs['name'] = name + if annotation and len(annotation) > 0: + kwargs['annotation'] = annotation + if published is not None: + kwargs['published'] = published + if importable is not None: + kwargs['importable'] = importable + return ctx.gi.histories.update_history( history_id, - name=name, - annotation=annotation) + **kwargs + ) diff --git a/tmp b/tmp new file mode 100644 index 0000000..ae0d172 --- /dev/null +++ b/tmp @@ -0,0 +1,5319 @@ +[ + { + "model_class": "History", + "id": "b3b7d20c3adbc012", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=CCS Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/b3b7d20c3adbc012" + }, + { + "model_class": "History", + "id": "cce0956482ae6e0f", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=Sw2-Np2 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/cce0956482ae6e0f" + }, + { + "model_class": "History", + "id": "f84885650bae9f16", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=5ww_LT2 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/f84885650bae9f16" + }, + { + "model_class": "History", + "id": "511df7e76acda084", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=UDP Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/511df7e76acda084" + }, + { + "model_class": "History", + "id": "4be10b354fd01057", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=Sw2-Ken Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/4be10b354fd01057" + }, + { + "model_class": "History", + "id": "36203dc55a69ea01", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=Sw1_3003 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/36203dc55a69ea01" + }, + { + "model_class": "History", + "id": "e3c9ba388da9cde5", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=ScaApp Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/e3c9ba388da9cde5" + }, + { + "model_class": "History", + "id": "7756ea2048f9c0a2", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=ScaAbd Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/7756ea2048f9c0a2" + }, + { + "model_class": "History", + "id": "f31360cc60c87cd4", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=SL-Ken Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/f31360cc60c87cd4" + }, + { + "model_class": "History", + "id": "f17afd3d5b64d6b8", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=SCS Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/f17afd3d5b64d6b8" + }, + { + "model_class": "History", + "id": "ece1d64f13fe6ff1", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=SCI Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/ece1d64f13fe6ff1" + }, + { + "model_class": "History", + "id": "81d104e192dee067", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=Pin Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/81d104e192dee067" + }, + { + "model_class": "History", + "id": "1444e97fe281ed7b", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=MP16 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/1444e97fe281ed7b" + }, + { + "model_class": "History", + "id": "945598bba42adb24", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=MIS3-3117 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/945598bba42adb24" + }, + { + "model_class": "History", + "id": "c3172566bbe0e370", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=MIS1-LT2 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/c3172566bbe0e370" + }, + { + "model_class": "History", + "id": "7706864c4de51ecf", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=K8 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/7706864c4de51ecf" + }, + { + "model_class": "History", + "id": "5b66980b346b1fa9", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=K7 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/5b66980b346b1fa9" + }, + { + "model_class": "History", + "id": "a4cd354511ab4c1d", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=K6 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/a4cd354511ab4c1d" + }, + { + "model_class": "History", + "id": "4af131ad66b01d78", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=J76 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/4af131ad66b01d78" + }, + { + "model_class": "History", + "id": "0e805c344c216c1c", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=Inf_Still_Creek Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/0e805c344c216c1c" + }, + { + "model_class": "History", + "id": "a65a9dbbf7b27d58", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=ISA Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/a65a9dbbf7b27d58" + }, + { + "model_class": "History", + "id": "0fea3a3663381425", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=2ww-3119 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/0fea3a3663381425" + }, + { + "model_class": "History", + "id": "433ccaac91a07156", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=Soft Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/433ccaac91a07156" + }, + { + "model_class": "History", + "id": "6ab222e931fbebf3", + "deleted": false, + "annotation": null, + "purged": false, + "name": "intron phageqc fuckery", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/6ab222e931fbebf3" + }, + { + "model_class": "History", + "id": "b5f518c6ecb280a3", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.25T19:43 WF=PAP_2017_Functional_(8.14) Org=Sw2-Ken Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/b5f518c6ecb280a3" + }, + { + "model_class": "History", + "id": "eac9c785514fda24", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.25T19:43 WF=PAP_2017_Functional_(v8.13) Org=Sw2-Ken Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/eac9c785514fda24" + }, + { + "model_class": "History", + "id": "158de8e409e60977", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.25T19:42 WF=PAP_2017_Functional_(v8.13) Org=Sw2-Ken Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/158de8e409e60977" + }, + { + "model_class": "History", + "id": "d29a1585b1f9c2d6", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.25T19:33 WF=PAP_2017_Functional_(v8.13) Org=Sw2-Ken Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/d29a1585b1f9c2d6" + }, + { + "model_class": "History", + "id": "7a6fd925e445f610", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.25T19:30 WF=PAP_2017_Functional_(v8.13) Org=Sw2-Ken Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/7a6fd925e445f610" + }, + { + "model_class": "History", + "id": "93783a76b7f4146e", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.25T19:28 WF=PAP_2017_Functional_(v8.13) Org=Sw2-Ken Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/93783a76b7f4146e" + }, + { + "model_class": "History", + "id": "fb4175739d2d5bd1", + "deleted": false, + "annotation": null, + "purged": false, + "name": "gff3 to gb test", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/fb4175739d2d5bd1" + }, + { + "model_class": "History", + "id": "105f745862595b6e", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Genbank renamer test", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/105f745862595b6e" + }, + { + "model_class": "History", + "id": "e140823b6efc313f", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Genome Re-Opening", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/e140823b6efc313f" + }, + { + "model_class": "History", + "id": "8b79adda6c2a1a72", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Unnamed history", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/8b79adda6c2a1a72" + }, + { + "model_class": "History", + "id": "5ffa0e37ec0a8438", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=CCS Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/5ffa0e37ec0a8438" + }, + { + "model_class": "History", + "id": "269809f9fe78d1a4", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=5ww_LT2 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/269809f9fe78d1a4" + }, + { + "model_class": "History", + "id": "67b25cc840dec800", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=UDP Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/67b25cc840dec800" + }, + { + "model_class": "History", + "id": "53846dbfd02b8360", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=Sw2-Ken Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/53846dbfd02b8360" + }, + { + "model_class": "History", + "id": "2eca2b4a116fe8e3", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=Sw1_3003 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/2eca2b4a116fe8e3" + }, + { + "model_class": "History", + "id": "54088c9b3b54cfa0", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=ScaApp Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/54088c9b3b54cfa0" + }, + { + "model_class": "History", + "id": "86877d26b5bf3f90", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=ScaAbd Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/86877d26b5bf3f90" + }, + { + "model_class": "History", + "id": "b71e1c16dfc6cad0", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=SL-Ken Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/b71e1c16dfc6cad0" + }, + { + "model_class": "History", + "id": "21f72ff1143300d4", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=SCS Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/21f72ff1143300d4" + }, + { + "model_class": "History", + "id": "5b68eb5f7c1e58bb", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=SCI Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/5b68eb5f7c1e58bb" + }, + { + "model_class": "History", + "id": "0b40aba9e1e5c11b", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=Pin Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/0b40aba9e1e5c11b" + }, + { + "model_class": "History", + "id": "d027b73f9d247a0e", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=MP16 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/d027b73f9d247a0e" + }, + { + "model_class": "History", + "id": "83ee006b1614bce1", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=MIS3-3117 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/83ee006b1614bce1" + }, + { + "model_class": "History", + "id": "c6727a4e1f6d3238", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=MIS1-LT2 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/c6727a4e1f6d3238" + }, + { + "model_class": "History", + "id": "973b6b873494b5f0", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=K8 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/973b6b873494b5f0" + }, + { + "model_class": "History", + "id": "34f4bfa539c4447f", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=K7 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/34f4bfa539c4447f" + }, + { + "model_class": "History", + "id": "7b01ba94e19a8322", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=K6 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/7b01ba94e19a8322" + }, + { + "model_class": "History", + "id": "61322bdc556d6736", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=J76 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/61322bdc556d6736" + }, + { + "model_class": "History", + "id": "10ff1209005fb280", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=Inf_Still_Creek Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/10ff1209005fb280" + }, + { + "model_class": "History", + "id": "25652dce3fa24824", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=ISA Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/25652dce3fa24824" + }, + { + "model_class": "History", + "id": "9f4a53fc065036eb", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=2ww-3119 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/9f4a53fc065036eb" + }, + { + "model_class": "History", + "id": "1e722c716da063de", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=Soft Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/1e722c716da063de" + }, + { + "model_class": "History", + "id": "6c624e5c54e06d3a", + "deleted": false, + "annotation": null, + "purged": false, + "name": "MIRO TESTING TWO", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/6c624e5c54e06d3a" + }, + { + "model_class": "History", + "id": "a6970312681a17ae", + "deleted": false, + "annotation": null, + "purged": false, + "name": "MIRO FINDSPANIN TEST", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/a6970312681a17ae" + }, + { + "model_class": "History", + "id": "3ee737331bd515e7", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=SCI Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/3ee737331bd515e7" + }, + { + "model_class": "History", + "id": "ac0a48aec7e6234f", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=CCS Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/ac0a48aec7e6234f" + }, + { + "model_class": "History", + "id": "2ac31ee16772b83a", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=Sw2-Np2 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/2ac31ee16772b83a" + }, + { + "model_class": "History", + "id": "28b4607651cdf7d2", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=5ww_LT2 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/28b4607651cdf7d2" + }, + { + "model_class": "History", + "id": "7ef26780fcd73ef3", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=UDP Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/7ef26780fcd73ef3" + }, + { + "model_class": "History", + "id": "afe54b830eca8bcb", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=Sw2-Ken Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/afe54b830eca8bcb" + }, + { + "model_class": "History", + "id": "f3c9e7ff397df23c", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=Sw1_3003 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/f3c9e7ff397df23c" + }, + { + "model_class": "History", + "id": "e4888fc0f4e8ff47", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=ScaApp Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/e4888fc0f4e8ff47" + }, + { + "model_class": "History", + "id": "79978dfc33ee7828", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=ScaAbd Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/79978dfc33ee7828" + }, + { + "model_class": "History", + "id": "a503844179619190", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=SL-Ken Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/a503844179619190" + }, + { + "model_class": "History", + "id": "604f2662bb4ff5e1", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=SCS Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/604f2662bb4ff5e1" + }, + { + "model_class": "History", + "id": "9e39d4587cc8228a", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=Pin Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/9e39d4587cc8228a" + }, + { + "model_class": "History", + "id": "4b16351a8e457fbb", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=MP16 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/4b16351a8e457fbb" + }, + { + "model_class": "History", + "id": "343a80c788c9c572", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=MIS3-3117 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/343a80c788c9c572" + }, + { + "model_class": "History", + "id": "83543784187442d0", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=MIS1-LT2 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/83543784187442d0" + }, + { + "model_class": "History", + "id": "cd6ad75ca24827cb", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=K8 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/cd6ad75ca24827cb" + }, + { + "model_class": "History", + "id": "85b627f496bf54b3", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=K7 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/85b627f496bf54b3" + }, + { + "model_class": "History", + "id": "1fa45c25f43edd09", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=K6 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/1fa45c25f43edd09" + }, + { + "model_class": "History", + "id": "ac8f5b8fc1cf9b81", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=J76 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/ac8f5b8fc1cf9b81" + }, + { + "model_class": "History", + "id": "9cd25ede2f295429", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=Inf_Still_Creek Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/9cd25ede2f295429" + }, + { + "model_class": "History", + "id": "b6271b8a782fb98d", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=ISA Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/b6271b8a782fb98d" + }, + { + "model_class": "History", + "id": "99e80f85405eeebc", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=2ww-3119 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/99e80f85405eeebc" + }, + { + "model_class": "History", + "id": "bc7aa5edf27ac250", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=Soft Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/bc7aa5edf27ac250" + }, + { + "model_class": "History", + "id": "47b74a040d4ebb6e", + "deleted": false, + "annotation": null, + "purged": false, + "name": "top hits table", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/47b74a040d4ebb6e" + }, + { + "model_class": "History", + "id": "0af265d887df41b3", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Unnamed history", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/0af265d887df41b3" + }, + { + "model_class": "History", + "id": "9cb79e5fb93c4ca9", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-15:26 WF=Comparative Org=SCI Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/9cb79e5fb93c4ca9" + }, + { + "model_class": "History", + "id": "56ac823e140da6fc", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-04:59 WF=Comparative Org=CCS Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/56ac823e140da6fc" + }, + { + "model_class": "History", + "id": "b9f198ee9ba82174", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-04:59 WF=Comparative Org=5ww_LT2 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/b9f198ee9ba82174" + }, + { + "model_class": "History", + "id": "21cd8668665d811d", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-04:30 WF=Comparative Org=UDP Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/21cd8668665d811d" + }, + { + "model_class": "History", + "id": "c708480cc69e4299", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-04:30 WF=Comparative Org=Sw2-Ken Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/c708480cc69e4299" + }, + { + "model_class": "History", + "id": "3752b49b0f623651", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-04:30 WF=Comparative Org=Sw1_3003 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/3752b49b0f623651" + }, + { + "model_class": "History", + "id": "123ef0ebf30528f0", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-04:30 WF=Comparative Org=ScaApp Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/123ef0ebf30528f0" + }, + { + "model_class": "History", + "id": "3b8eccb69dee0d25", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-04:30 WF=Comparative Org=ScaAbd Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/3b8eccb69dee0d25" + }, + { + "model_class": "History", + "id": "0873edb180312abc", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-04:30 WF=Comparative Org=SL-Ken Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/0873edb180312abc" + }, + { + "model_class": "History", + "id": "b2eccc31a0c375cb", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-04:30 WF=Comparative Org=SCS Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/b2eccc31a0c375cb" + }, + { + "model_class": "History", + "id": "32f94437e18727a3", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-04:30 WF=Comparative Org=Pin Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/32f94437e18727a3" + }, + { + "model_class": "History", + "id": "d446832844d32c34", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-04:30 WF=Comparative Org=MP16 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/d446832844d32c34" + }, + { + "model_class": "History", + "id": "6e5cad771f1596ba", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-04:30 WF=Comparative Org=MIS3-3117 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/6e5cad771f1596ba" + }, + { + "model_class": "History", + "id": "c83622f61b5366c5", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-04:30 WF=Comparative Org=MIS1-LT2 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/c83622f61b5366c5" + }, + { + "model_class": "History", + "id": "3a32df1a187068a2", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-04:30 WF=Comparative Org=K8 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/3a32df1a187068a2" + }, + { + "model_class": "History", + "id": "57dfb68743c8d8fc", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-04:30 WF=Comparative Org=K7 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/57dfb68743c8d8fc" + }, + { + "model_class": "History", + "id": "f0363e6a7b9a3f3e", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-04:30 WF=Comparative Org=K6 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/f0363e6a7b9a3f3e" + }, + { + "model_class": "History", + "id": "58ac6ec08fb5dcd8", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-04:30 WF=Comparative Org=J76 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/58ac6ec08fb5dcd8" + }, + { + "model_class": "History", + "id": "75d8d61b31d8ec84", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-04:30 WF=Comparative Org=Inf_Still_Creek Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/75d8d61b31d8ec84" + }, + { + "model_class": "History", + "id": "b72b82d972c536ad", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-04:30 WF=Comparative Org=ISA Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/b72b82d972c536ad" + }, + { + "model_class": "History", + "id": "256108d350405e50", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-04:30 WF=Comparative Org=2ww-3119 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/256108d350405e50" + }, + { + "model_class": "History", + "id": "ce298bbfe78f025a", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual-04:30 WF=Comparative Org=Soft Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/ce298bbfe78f025a" + }, + { + "model_class": "History", + "id": "d8f7297ccd5a62ab", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual WF=Comparative Org=K6 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/d8f7297ccd5a62ab" + }, + { + "model_class": "History", + "id": "67ea5925a8f2cd08", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual WF=Comparative Org=J76 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/67ea5925a8f2cd08" + }, + { + "model_class": "History", + "id": "aae7fe1b5cf08684", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual WF=Comparative Org=Inf_Still_Creek Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/aae7fe1b5cf08684" + }, + { + "model_class": "History", + "id": "fad28620cf4bc6c1", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual WF=Comparative Org=ISA Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/fad28620cf4bc6c1" + }, + { + "model_class": "History", + "id": "a7abf237d8624d1e", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual WF=Comparative Org=2ww-3119 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/a7abf237d8624d1e" + }, + { + "model_class": "History", + "id": "2f8c8f3f8514e9f5", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual WF=Comparative Org=Soft Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/2f8c8f3f8514e9f5" + }, + { + "model_class": "History", + "id": "f8c0ce8eeacaa7b6", + "deleted": false, + "annotation": null, + "purged": false, + "name": "bootstrapped mauve test", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/f8c0ce8eeacaa7b6" + }, + { + "model_class": "History", + "id": "e62df2f9e67ed370", + "deleted": false, + "annotation": null, + "purged": false, + "name": "mauve test", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/e62df2f9e67ed370" + }, + { + "model_class": "History", + "id": "07ed1a60f0a40ebb", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Unnamed history", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/07ed1a60f0a40ebb" + }, + { + "model_class": "History", + "id": "efe06e0d684c1f66", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual WF=Functional Org=CCS Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/efe06e0d684c1f66" + }, + { + "model_class": "History", + "id": "bcdf7c51abe47391", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual WF=Structural Org=CCS Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/bcdf7c51abe47391" + }, + { + "model_class": "History", + "id": "68c8a4a274b2cd5a", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual WF=Structural Org=CCS Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/68c8a4a274b2cd5a" + }, + { + "model_class": "History", + "id": "83ed988086e161e4", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual WF=Structural Org=CCS Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/83ed988086e161e4" + }, + { + "model_class": "History", + "id": "2fd8459d6e88c59d", + "deleted": false, + "annotation": null, + "purged": false, + "name": "frameshift gb output", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/2fd8459d6e88c59d" + }, + { + "model_class": "History", + "id": "3096f9bc6269e0b9", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Unnamed history", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/3096f9bc6269e0b9" + }, + { + "model_class": "History", + "id": "23dd18e595df0e06", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual WF=Structural Org=5ww_LT2 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/23dd18e595df0e06" + }, + { + "model_class": "History", + "id": "e0f67c12a0c9d54e", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual WF=Structural Org=UDP Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/e0f67c12a0c9d54e" + }, + { + "model_class": "History", + "id": "9c5830539ee34866", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual WF=Structural Org=Sw2-Ken Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/9c5830539ee34866" + }, + { + "model_class": "History", + "id": "373291e82a4139a9", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual WF=Structural Org=Sw1_3003 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/373291e82a4139a9" + }, + { + "model_class": "History", + "id": "51ced18ef97dd95b", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual WF=Structural Org=ScaApp Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/51ced18ef97dd95b" + }, + { + "model_class": "History", + "id": "65fbac86fd704cee", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual WF=Structural Org=ScaAbd Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/65fbac86fd704cee" + }, + { + "model_class": "History", + "id": "a12e14cc1de0f7ab", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual WF=Structural Org=SL-Ken Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/a12e14cc1de0f7ab" + }, + { + "model_class": "History", + "id": "cd0f9b291a6be78b", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual WF=Structural Org=SCS Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/cd0f9b291a6be78b" + }, + { + "model_class": "History", + "id": "818fd517b4753f46", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual WF=Structural Org=SCI Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/818fd517b4753f46" + }, + { + "model_class": "History", + "id": "9b85c0cce22e3bed", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual WF=Structural Org=Pin Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/9b85c0cce22e3bed" + }, + { + "model_class": "History", + "id": "17573d6236909bb2", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual WF=Structural Org=MP16 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/17573d6236909bb2" + }, + { + "model_class": "History", + "id": "91ede36f0d8893db", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual WF=Structural Org=MIS3-3117 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/91ede36f0d8893db" + }, + { + "model_class": "History", + "id": "c655fe092251eeba", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual WF=Structural Org=MIS1-LT2 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/c655fe092251eeba" + }, + { + "model_class": "History", + "id": "7f57b77ab45e7181", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual WF=Structural Org=K8 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/7f57b77ab45e7181" + }, + { + "model_class": "History", + "id": "ecdf16bb243c9e90", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual WF=Structural Org=K7 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/ecdf16bb243c9e90" + }, + { + "model_class": "History", + "id": "b8882c79c2848189", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual WF=Structural Org=K6 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/b8882c79c2848189" + }, + { + "model_class": "History", + "id": "6aa74750418d213e", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual WF=Structural Org=J76 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/6aa74750418d213e" + }, + { + "model_class": "History", + "id": "b9bb5998c480663e", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual WF=Structural Org=Inf_Still_Creek Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/b9bb5998c480663e" + }, + { + "model_class": "History", + "id": "0212496cb2b99fcb", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual WF=Structural Org=ISA Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/0212496cb2b99fcb" + }, + { + "model_class": "History", + "id": "cf625716c991198b", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual WF=Structural Org=2ww-3119 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/cf625716c991198b" + }, + { + "model_class": "History", + "id": "3ac8e002d85d1958", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual WF=Structural Org=Soft Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/3ac8e002d85d1958" + }, + { + "model_class": "History", + "id": "61e841105283ee26", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual WF=Structural Org=Miro Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/61e841105283ee26" + }, + { + "model_class": "History", + "id": "f2030c6ac9140056", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Copy of 'Unnamed history' shared by elenimijalis@tamu.edu (active items only)", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/f2030c6ac9140056" + }, + { + "model_class": "History", + "id": "910b3f83b32279f4", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=1 WF=Structural Org=5ww_LT2 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/910b3f83b32279f4" + }, + { + "model_class": "History", + "id": "6204a5df7cca5c2b", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=1 WF=Structural Org=UDP Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/6204a5df7cca5c2b" + }, + { + "model_class": "History", + "id": "7fdc880aeba63cf4", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=1 WF=Structural Org=Sw2-Ken Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/7fdc880aeba63cf4" + }, + { + "model_class": "History", + "id": "3d623ace581d244b", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=1 WF=Structural Org=Sw1_3003 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/3d623ace581d244b" + }, + { + "model_class": "History", + "id": "0c96e85252dd70cd", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=1 WF=Structural Org=ScaApp Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/0c96e85252dd70cd" + }, + { + "model_class": "History", + "id": "f3d5afad478a9729", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=1 WF=Structural Org=ScaAbd Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/f3d5afad478a9729" + }, + { + "model_class": "History", + "id": "6b45db45f4c7f8b5", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=1 WF=Structural Org=SL-Ken Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/6b45db45f4c7f8b5" + }, + { + "model_class": "History", + "id": "9da242dda72e11ff", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=1 WF=Structural Org=SCS Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/9da242dda72e11ff" + }, + { + "model_class": "History", + "id": "fd86be53f39e6469", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=1 WF=Structural Org=SCI Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/fd86be53f39e6469" + }, + { + "model_class": "History", + "id": "bc55d11e2fd5e1d2", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=1 WF=Structural Org=Pin Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/bc55d11e2fd5e1d2" + }, + { + "model_class": "History", + "id": "1f2de62cb24694dd", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=1 WF=Structural Org=MP16 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/1f2de62cb24694dd" + }, + { + "model_class": "History", + "id": "cdac40f372fd2a2c", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=1 WF=Structural Org=MIS3-3117 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/cdac40f372fd2a2c" + }, + { + "model_class": "History", + "id": "c2df442a348d0dc5", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=1 WF=Structural Org=MIS1-LT2 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/c2df442a348d0dc5" + }, + { + "model_class": "History", + "id": "93499d6b5f773171", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=1 WF=Structural Org=K8 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/93499d6b5f773171" + }, + { + "model_class": "History", + "id": "65fabe68800aa3d3", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=1 WF=Structural Org=K7 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/65fabe68800aa3d3" + }, + { + "model_class": "History", + "id": "b543dbe90b68f6f9", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=1 WF=Structural Org=K6 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/b543dbe90b68f6f9" + }, + { + "model_class": "History", + "id": "d317217f2c9e7ebf", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=1 WF=Structural Org=J76 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/d317217f2c9e7ebf" + }, + { + "model_class": "History", + "id": "4def794c7cd571af", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=1 WF=Structural Org=Inf_Still_Creek Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/4def794c7cd571af" + }, + { + "model_class": "History", + "id": "a90c510a4b16564b", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=1 WF=Structural Org=ISA Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/a90c510a4b16564b" + }, + { + "model_class": "History", + "id": "e5e4ad76dc549c30", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=1 WF=Structural Org=2ww-3119 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/e5e4ad76dc549c30" + }, + { + "model_class": "History", + "id": "1aeb94ac3ad39089", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=1 WF=Structural Org=Soft Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/1aeb94ac3ad39089" + }, + { + "model_class": "History", + "id": "bf34de8add2beb43", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual WF=Structural Org=Miro Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/bf34de8add2beb43" + }, + { + "model_class": "History", + "id": "3018560f64c4f25d", + "deleted": false, + "annotation": null, + "purged": false, + "name": "AT table test", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/3018560f64c4f25d" + }, + { + "model_class": "History", + "id": "6f9bfa2611d7b50f", + "deleted": false, + "annotation": null, + "purged": false, + "name": "PSM", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/6f9bfa2611d7b50f" + }, + { + "model_class": "History", + "id": "95f1ba049727fa9e", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=Manual WF=Functional Org=5ww_LT2 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/95f1ba049727fa9e" + }, + { + "model_class": "History", + "id": "f8610ea1347e3ca0", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=11 WF=Functional Org=UDP Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/f8610ea1347e3ca0" + }, + { + "model_class": "History", + "id": "19d9f30c922986a0", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=11 WF=Functional Org=Sw2-Ken Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/19d9f30c922986a0" + }, + { + "model_class": "History", + "id": "e90412f36740b7cf", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=11 WF=Functional Org=Sw1_3003 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/e90412f36740b7cf" + }, + { + "model_class": "History", + "id": "c664b2a4a7ed14a8", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=11 WF=Functional Org=ScaApp Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/c664b2a4a7ed14a8" + }, + { + "model_class": "History", + "id": "4358cbf4c73fbbe5", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=11 WF=Functional Org=ScaAbd Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/4358cbf4c73fbbe5" + }, + { + "model_class": "History", + "id": "1333f7d2f9e9e53e", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=11 WF=Functional Org=SL-Ken Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/1333f7d2f9e9e53e" + }, + { + "model_class": "History", + "id": "f47208ec69b08018", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=11 WF=Functional Org=SCS Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/f47208ec69b08018" + }, + { + "model_class": "History", + "id": "01c638b511512faf", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=11 WF=Functional Org=SCI Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/01c638b511512faf" + }, + { + "model_class": "History", + "id": "6d5fb97b98d418c6", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=11 WF=Functional Org=Pin Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/6d5fb97b98d418c6" + }, + { + "model_class": "History", + "id": "7327c01aba3d7e48", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=11 WF=Functional Org=MP16 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/7327c01aba3d7e48" + }, + { + "model_class": "History", + "id": "55ede013e09445c6", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=11 WF=Functional Org=MIS3-3117 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/55ede013e09445c6" + }, + { + "model_class": "History", + "id": "b2bbb1895a337b5f", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=11 WF=Functional Org=MIS1-LT2 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/b2bbb1895a337b5f" + }, + { + "model_class": "History", + "id": "64023b74297c6006", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=11 WF=Functional Org=K8 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/64023b74297c6006" + }, + { + "model_class": "History", + "id": "e18012a6106c2325", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=11 WF=Functional Org=K7 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/e18012a6106c2325" + }, + { + "model_class": "History", + "id": "2797271452298ef1", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=11 WF=Functional Org=K6 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/2797271452298ef1" + }, + { + "model_class": "History", + "id": "9aa4d7515324911c", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=11 WF=Functional Org=J76 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/9aa4d7515324911c" + }, + { + "model_class": "History", + "id": "03d718cf4960ce48", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=11 WF=Functional Org=Inf_Still_Creek Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/03d718cf4960ce48" + }, + { + "model_class": "History", + "id": "940cf59e3dea3c73", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=11 WF=Functional Org=ISA Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/940cf59e3dea3c73" + }, + { + "model_class": "History", + "id": "99a6379a64edcb9f", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=11 WF=Functional Org=2ww-3119 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/99a6379a64edcb9f" + }, + { + "model_class": "History", + "id": "5732f1ca75922566", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=11 WF=Functional Org=Soft Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/5732f1ca75922566" + }, + { + "model_class": "History", + "id": "62bede63d79aa00b", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=10 WF=Functional Org=Sw1_3003 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/62bede63d79aa00b" + }, + { + "model_class": "History", + "id": "26c0c361092256bf", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=9 WF=Functional Org=UDP Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/26c0c361092256bf" + }, + { + "model_class": "History", + "id": "1e8d26b575c99f8b", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=9 WF=Functional Org=Sw2-Ken Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/1e8d26b575c99f8b" + }, + { + "model_class": "History", + "id": "b9cf432645d4884e", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=9 WF=Functional Org=Sw1_3003 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/b9cf432645d4884e" + }, + { + "model_class": "History", + "id": "735dc9a5478671fa", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=9 WF=Functional Org=ScaApp Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/735dc9a5478671fa" + }, + { + "model_class": "History", + "id": "1930805e9d59544e", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=9 WF=Functional Org=ScaAbd Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/1930805e9d59544e" + }, + { + "model_class": "History", + "id": "f33f9d1b70b92690", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=9 WF=Functional Org=SL-Ken Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/f33f9d1b70b92690" + }, + { + "model_class": "History", + "id": "83ff028f5684b799", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=9 WF=Functional Org=SCS Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/83ff028f5684b799" + }, + { + "model_class": "History", + "id": "d0f28368a2da494b", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=9 WF=Functional Org=SCI Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/d0f28368a2da494b" + }, + { + "model_class": "History", + "id": "e07e88cd042f32f4", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=9 WF=Functional Org=Pin Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/e07e88cd042f32f4" + }, + { + "model_class": "History", + "id": "ef5cdb282fab5f19", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=9 WF=Functional Org=MP16 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/ef5cdb282fab5f19" + }, + { + "model_class": "History", + "id": "96f7d0364fee9384", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=9 WF=Functional Org=MIS3-3117 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/96f7d0364fee9384" + }, + { + "model_class": "History", + "id": "95ef3413d7e7ee5b", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=9 WF=Functional Org=MIS1-LT2 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/95ef3413d7e7ee5b" + }, + { + "model_class": "History", + "id": "10f65fe385037913", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=9 WF=Functional Org=K8 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/10f65fe385037913" + }, + { + "model_class": "History", + "id": "b0fac40f72726344", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=9 WF=Functional Org=K7 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/b0fac40f72726344" + }, + { + "model_class": "History", + "id": "f8fb0fb2a1475498", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=9 WF=Functional Org=K6 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/f8fb0fb2a1475498" + }, + { + "model_class": "History", + "id": "c986d68e808d1f1b", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=9 WF=Functional Org=J76 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/c986d68e808d1f1b" + }, + { + "model_class": "History", + "id": "dd64eb6009f37788", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=9 WF=Functional Org=Inf_Still_Creek Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/dd64eb6009f37788" + }, + { + "model_class": "History", + "id": "80e3a9497d06f961", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=9 WF=Functional Org=ISA Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/80e3a9497d06f961" + }, + { + "model_class": "History", + "id": "262d732a5c8f92e0", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=9 WF=Functional Org=2ww-3119 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/262d732a5c8f92e0" + }, + { + "model_class": "History", + "id": "b1efa94c6df9872d", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=9 WF=Functional Org=Soft Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/b1efa94c6df9872d" + }, + { + "model_class": "History", + "id": "26878b6f18a648a1", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=8 WF=Functional Org=Sw1_3003 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/26878b6f18a648a1" + }, + { + "model_class": "History", + "id": "063e597a9f134f1b", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BuildID=7 WF=Functional Org=Sw1_3003 Source=Jenkins", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/063e597a9f134f1b" + }, + { + "model_class": "History", + "id": "6497f6d3325080ef", + "deleted": false, + "annotation": null, + "purged": false, + "name": "WF=Function Org=Miro Experimental=True", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/6497f6d3325080ef" + }, + { + "model_class": "History", + "id": "08453d7ae4f91dee", + "deleted": false, + "annotation": null, + "purged": false, + "name": "wig/bigwig jbrowse test", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/08453d7ae4f91dee" + }, + { + "model_class": "History", + "id": "c0c58f242817ab4f", + "deleted": false, + "annotation": null, + "purged": false, + "name": "[6] WF=Functional Org=UDP", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/c0c58f242817ab4f" + }, + { + "model_class": "History", + "id": "be1a30dcac314ef9", + "deleted": false, + "annotation": null, + "purged": false, + "name": "[6] WF=Functional Org=Sw2-Ken", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/be1a30dcac314ef9" + }, + { + "model_class": "History", + "id": "f9d1b553680d2daa", + "deleted": false, + "annotation": null, + "purged": false, + "name": "[6] WF=Functional Org=Sw1_3003", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/f9d1b553680d2daa" + }, + { + "model_class": "History", + "id": "266c965c37fb9872", + "deleted": false, + "annotation": null, + "purged": false, + "name": "[6] WF=Functional Org=ScaApp", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/266c965c37fb9872" + }, + { + "model_class": "History", + "id": "1742342ad1933233", + "deleted": false, + "annotation": null, + "purged": false, + "name": "[6] WF=Functional Org=ScaAbd", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/1742342ad1933233" + }, + { + "model_class": "History", + "id": "5b2c2bfc47f8a42d", + "deleted": false, + "annotation": null, + "purged": false, + "name": "[6] WF=Functional Org=SL-Ken", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/5b2c2bfc47f8a42d" + }, + { + "model_class": "History", + "id": "88fcf02d9841ef99", + "deleted": false, + "annotation": null, + "purged": false, + "name": "[6] WF=Functional Org=SCS", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/88fcf02d9841ef99" + }, + { + "model_class": "History", + "id": "f86313b58a0e364c", + "deleted": false, + "annotation": null, + "purged": false, + "name": "[6] WF=Functional Org=SCI", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/f86313b58a0e364c" + }, + { + "model_class": "History", + "id": "0b03913275d3a701", + "deleted": false, + "annotation": null, + "purged": false, + "name": "[6] WF=Functional Org=Pin", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/0b03913275d3a701" + }, + { + "model_class": "History", + "id": "d8d7c1232790b143", + "deleted": false, + "annotation": null, + "purged": false, + "name": "[6] WF=Functional Org=MP16", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/d8d7c1232790b143" + }, + { + "model_class": "History", + "id": "1db87be5f163c6aa", + "deleted": false, + "annotation": null, + "purged": false, + "name": "[6] WF=Functional Org=MIS3-3117", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/1db87be5f163c6aa" + }, + { + "model_class": "History", + "id": "7b3bec6eb0c3ab08", + "deleted": false, + "annotation": null, + "purged": false, + "name": "[6] WF=Functional Org=MIS1-LT2", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/7b3bec6eb0c3ab08" + }, + { + "model_class": "History", + "id": "362981f60f6a3b80", + "deleted": false, + "annotation": null, + "purged": false, + "name": "[6] WF=Functional Org=K8", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/362981f60f6a3b80" + }, + { + "model_class": "History", + "id": "b5436994a7fbe3e4", + "deleted": false, + "annotation": null, + "purged": false, + "name": "[6] WF=Functional Org=K7", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/b5436994a7fbe3e4" + }, + { + "model_class": "History", + "id": "6d933217bca4bd18", + "deleted": false, + "annotation": null, + "purged": false, + "name": "[6] WF=Functional Org=K6", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/6d933217bca4bd18" + }, + { + "model_class": "History", + "id": "804ef182efdb2822", + "deleted": false, + "annotation": null, + "purged": false, + "name": "[6] WF=Functional Org=J76", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/804ef182efdb2822" + }, + { + "model_class": "History", + "id": "5d43ed67cd565be7", + "deleted": false, + "annotation": null, + "purged": false, + "name": "[6] WF=Functional Org=Inf_Still_Creek", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/5d43ed67cd565be7" + }, + { + "model_class": "History", + "id": "465fb294798ddc5d", + "deleted": false, + "annotation": null, + "purged": false, + "name": "[6] WF=Functional Org=ISA", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/465fb294798ddc5d" + }, + { + "model_class": "History", + "id": "6c36a938c3565233", + "deleted": false, + "annotation": null, + "purged": false, + "name": "[6] WF=Functional Org=2ww-3119", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/6c36a938c3565233" + }, + { + "model_class": "History", + "id": "43968453908e0f29", + "deleted": false, + "annotation": null, + "purged": false, + "name": "[6] WF=Functional Org=Soft", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "published": false, + "url": "/galaxy/api/histories/43968453908e0f29" + }, + { + "model_class": "History", + "id": "d4bb3c2381636f2f", + "deleted": false, + "annotation": null, + "purged": true, + "name": "WF Auto Functional Sw1_3003", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/d4bb3c2381636f2f" + }, + { + "model_class": "History", + "id": "eeea98268b37c70c", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Load All Student Genomes", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/eeea98268b37c70c" + }, + { + "model_class": "History", + "id": "c2cdcc366a617734", + "deleted": false, + "annotation": null, + "purged": false, + "name": "blast updating part 2", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/c2cdcc366a617734" + }, + { + "model_class": "History", + "id": "af0da3458c951123", + "deleted": false, + "annotation": null, + "purged": false, + "name": "create-cacao-org", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/af0da3458c951123" + }, + { + "model_class": "History", + "id": "439ac733790e882e", + "deleted": false, + "annotation": null, + "purged": false, + "name": "blast updating", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/439ac733790e882e" + }, + { + "model_class": "History", + "id": "83a79ab994ba4779", + "deleted": false, + "annotation": null, + "purged": false, + "name": "cacao ", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/83a79ab994ba4779" + }, + { + "model_class": "History", + "id": "53bbf29400954c2b", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Apollo WF Test", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/53bbf29400954c2b" + }, + { + "model_class": "History", + "id": "1af7c8a0abcacacf", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Student results", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/1af7c8a0abcacacf" + }, + { + "model_class": "History", + "id": "33519384e33c9239", + "deleted": false, + "annotation": null, + "purged": false, + "name": "interpro", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/33519384e33c9239" + }, + { + "model_class": "History", + "id": "266295b0263333d3", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Assessment 2 Prep", + "tags": [ + "bich464" + ], + "published": false, + "url": "/galaxy/api/histories/266295b0263333d3" + }, + { + "model_class": "History", + "id": "1d459a18c4d15c47", + "deleted": false, + "annotation": null, + "purged": false, + "name": "autoreopen test", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/1d459a18c4d15c47" + }, + { + "model_class": "History", + "id": "2a9369539fbc0bef", + "deleted": false, + "annotation": null, + "purged": false, + "name": "464 Admin Assessment 1", + "tags": [ + "bich464" + ], + "published": false, + "url": "/galaxy/api/histories/2a9369539fbc0bef" + }, + { + "model_class": "History", + "id": "4cc30630043fce5e", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Unnamed history", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/4cc30630043fce5e" + }, + { + "model_class": "History", + "id": "a28cda8ef43ef58d", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Apollo Update testing", + "tags": [ + "upgrade", + "apollo", + "testing" + ], + "published": false, + "url": "/galaxy/api/histories/a28cda8ef43ef58d" + }, + { + "model_class": "History", + "id": "b1319b02d82fc6c5", + "deleted": false, + "annotation": null, + "purged": false, + "name": "PAP 2017 Functional (v8.2)", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/b1319b02d82fc6c5" + }, + { + "model_class": "History", + "id": "56a0df7321205045", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Unnamed history", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/56a0df7321205045" + }, + { + "model_class": "History", + "id": "e3468caf07fd2e66", + "deleted": false, + "annotation": null, + "purged": false, + "name": "sequencing-2016-11", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/e3468caf07fd2e66" + }, + { + "model_class": "History", + "id": "136faa85189a6d61", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Unnamed history", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/136faa85189a6d61" + }, + { + "model_class": "History", + "id": "a896d2e5ae3b9e53", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Unnamed history", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/a896d2e5ae3b9e53" + }, + { + "model_class": "History", + "id": "bf7343d019b110fb", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Unnamed history", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/bf7343d019b110fb" + }, + { + "model_class": "History", + "id": "3ca13833bb16ca66", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Unnamed history", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/3ca13833bb16ca66" + }, + { + "model_class": "History", + "id": "3d3d5c9e66005bde", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Unnamed history", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/3d3d5c9e66005bde" + }, + { + "model_class": "History", + "id": "03f1669a8542954f", + "deleted": false, + "annotation": null, + "purged": false, + "name": "imported: 160808 GenomeA history ", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/03f1669a8542954f" + }, + { + "model_class": "History", + "id": "02d76593d8a2888d", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Unnamed history", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/02d76593d8a2888d" + }, + { + "model_class": "History", + "id": "6e65dc31461a2618", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Unnamed history", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/6e65dc31461a2618" + }, + { + "model_class": "History", + "id": "3995a172f4b21975", + "deleted": false, + "annotation": null, + "purged": false, + "name": "imported: 160808 GenomeA history ", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/3995a172f4b21975" + }, + { + "model_class": "History", + "id": "45acf9ab2b3bd80a", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Unnamed history", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/45acf9ab2b3bd80a" + }, + { + "model_class": "History", + "id": "023ff7f32c39d51e", + "deleted": false, + "annotation": null, + "purged": false, + "name": "PAP 2017 Structural Testing", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/023ff7f32c39d51e" + }, + { + "model_class": "History", + "id": "2087e32aab312721", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Unnamed history", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/2087e32aab312721" + }, + { + "model_class": "History", + "id": "1b9d1cbf11f65e2c", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Quiz Testing", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/1b9d1cbf11f65e2c" + }, + { + "model_class": "History", + "id": "0fd74ecdab3bbed6", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Unnamed history", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/0fd74ecdab3bbed6" + }, + { + "model_class": "History", + "id": "13f440b12b900c01", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Irina Phage Mu", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/13f440b12b900c01" + }, + { + "model_class": "History", + "id": "ee31dea84ad6831a", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Unnamed history", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/ee31dea84ad6831a" + }, + { + "model_class": "History", + "id": "86ab9c74a2db1097", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Copy of 'TChen' shared by dar78@pitt.edu (active items only)", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/86ab9c74a2db1097" + }, + { + "model_class": "History", + "id": "df6c635c49617c19", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Unnamed history", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/df6c635c49617c19" + }, + { + "model_class": "History", + "id": "965b8ef98ab665a4", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Unnamed history", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/965b8ef98ab665a4" + }, + { + "model_class": "History", + "id": "9f37e52786bd5c22", + "deleted": false, + "annotation": null, + "purged": false, + "name": "GenomeA QC Test", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/9f37e52786bd5c22" + }, + { + "model_class": "History", + "id": "f561fd22344af085", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Unnamed history", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/f561fd22344af085" + }, + { + "model_class": "History", + "id": "cf5e7db80aaaae1c", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Unnamed history", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/cf5e7db80aaaae1c" + }, + { + "model_class": "History", + "id": "d7a5de8a3e1c240e", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Unnamed history", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/d7a5de8a3e1c240e" + }, + { + "model_class": "History", + "id": "04068fee1ab8feef", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Unnamed history", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/04068fee1ab8feef" + }, + { + "model_class": "History", + "id": "c2dddfa04528a37b", + "deleted": false, + "annotation": null, + "purged": false, + "name": "MATC58", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/c2dddfa04528a37b" + }, + { + "model_class": "History", + "id": "e6a93b2e8bd25082", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Unnamed history", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/e6a93b2e8bd25082" + }, + { + "model_class": "History", + "id": "584949077ba8a48e", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Anton's HIV Example", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/584949077ba8a48e" + }, + { + "model_class": "History", + "id": "793b09978cf49942", + "deleted": false, + "annotation": null, + "purged": false, + "name": "CbK progressiveMauve", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/793b09978cf49942" + }, + { + "model_class": "History", + "id": "ab449ddea0ae5d97", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Unnamed history", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/ab449ddea0ae5d97" + }, + { + "model_class": "History", + "id": "f1179904acf057c6", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Unnamed history", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/f1179904acf057c6" + }, + { + "model_class": "History", + "id": "e47656a53e31a1f5", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BceTMilo", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/e47656a53e31a1f5" + }, + { + "model_class": "History", + "id": "7aa999316c7d11d3", + "deleted": false, + "annotation": null, + "purged": false, + "name": "circos test", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/7aa999316c7d11d3" + }, + { + "model_class": "History", + "id": "c41d6158fddbdfe2", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Unnamed history", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/c41d6158fddbdfe2" + }, + { + "model_class": "History", + "id": "b3b49e4879a46684", + "deleted": false, + "annotation": null, + "purged": false, + "name": "PAP testing", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/b3b49e4879a46684" + }, + { + "model_class": "History", + "id": "adc947cd4be019f3", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Unnamed history", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/adc947cd4be019f3" + }, + { + "model_class": "History", + "id": "b96fc4841c810cf6", + "deleted": false, + "annotation": null, + "purged": false, + "name": "pap functional fixes", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/b96fc4841c810cf6" + }, + { + "model_class": "History", + "id": "18d4026186431b36", + "deleted": false, + "annotation": null, + "purged": false, + "name": "LSO Phage 2", + "tags": [ + "lso", + "rfy", + "cfg" + ], + "published": false, + "url": "/galaxy/api/histories/18d4026186431b36" + }, + { + "model_class": "History", + "id": "c7ec0c1de6d2ddc1", + "deleted": false, + "annotation": null, + "purged": false, + "name": "LSO Phage 1", + "tags": [ + "lso", + "rfy", + "cfg" + ], + "published": false, + "url": "/galaxy/api/histories/c7ec0c1de6d2ddc1" + }, + { + "model_class": "History", + "id": "07014a01820cebf1", + "deleted": false, + "annotation": null, + "purged": false, + "name": "p4 issue", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/07014a01820cebf1" + }, + { + "model_class": "History", + "id": "744be2b4df7d7fcb", + "deleted": false, + "annotation": null, + "purged": false, + "name": "jmc-all-proteins", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/744be2b4df7d7fcb" + }, + { + "model_class": "History", + "id": "35f569c7d25616d4", + "deleted": false, + "annotation": null, + "purged": false, + "name": "intron finder", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/35f569c7d25616d4" + }, + { + "model_class": "History", + "id": "454b5bf20d3a2249", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Unnamed history", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/454b5bf20d3a2249" + }, + { + "model_class": "History", + "id": "bcc880c3e1f61eb3", + "deleted": false, + "annotation": null, + "purged": false, + "name": "findSpanin - T2_Chi_KPatil", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/bcc880c3e1f61eb3" + }, + { + "model_class": "History", + "id": "94d1ced4656872bf", + "deleted": false, + "annotation": null, + "purged": false, + "name": "findSpanin - Seifer_phi60C_ASalazar", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/94d1ced4656872bf" + }, + { + "model_class": "History", + "id": "22c90e50782e734f", + "deleted": false, + "annotation": null, + "purged": false, + "name": "findSpanin - Season15_SCrosby", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/22c90e50782e734f" + }, + { + "model_class": "History", + "id": "9ba61bd940377451", + "deleted": false, + "annotation": null, + "purged": false, + "name": "findSpanin - Sazh_WCrossland", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/9ba61bd940377451" + }, + { + "model_class": "History", + "id": "7ea43ce6ecbabfa1", + "deleted": false, + "annotation": null, + "purged": false, + "name": "findSpanin - P-NIH12_RRichardson", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/7ea43ce6ecbabfa1" + }, + { + "model_class": "History", + "id": "25792331bca74fb4", + "deleted": false, + "annotation": null, + "purged": false, + "name": "findSpanin - P-NIH10_LMin", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/25792331bca74fb4" + }, + { + "model_class": "History", + "id": "9e653b7f5f5702a6", + "deleted": false, + "annotation": null, + "purged": false, + "name": "findSpanin - Mijalis_SParvateneni", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/9e653b7f5f5702a6" + }, + { + "model_class": "History", + "id": "95e85f0f1f290936", + "deleted": false, + "annotation": null, + "purged": false, + "name": "findSpanin - Maroon_JMcDermott", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/95e85f0f1f290936" + }, + { + "model_class": "History", + "id": "07ce6b6bc07f4a38", + "deleted": false, + "annotation": null, + "purged": false, + "name": "findSpanin - Maleficent_HWright", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/07ce6b6bc07f4a38" + }, + { + "model_class": "History", + "id": "7ab07da33d2a5538", + "deleted": false, + "annotation": null, + "purged": false, + "name": "findSpanin - LL2-1_RRangan", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/7ab07da33d2a5538" + }, + { + "model_class": "History", + "id": "572d55bf3f9fdb80", + "deleted": false, + "annotation": null, + "purged": false, + "name": "findSpanin - LL11_MTheodore", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/572d55bf3f9fdb80" + }, + { + "model_class": "History", + "id": "0e0d5bf92b8b0ac3", + "deleted": false, + "annotation": null, + "purged": false, + "name": "findSpanin - H3_AMaruffo", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/0e0d5bf92b8b0ac3" + }, + { + "model_class": "History", + "id": "a6f6c67c03022824", + "deleted": false, + "annotation": null, + "purged": false, + "name": "findSpanin - E3_SHartman", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/a6f6c67c03022824" + }, + { + "model_class": "History", + "id": "1fda1abc5d39191f", + "deleted": false, + "annotation": null, + "purged": false, + "name": "findSpanin - E2_JChamblee", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/1fda1abc5d39191f" + }, + { + "model_class": "History", + "id": "0affbc36d2ae5bcc", + "deleted": false, + "annotation": null, + "purged": false, + "name": "findSpanin - DUC8_JTran", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/0affbc36d2ae5bcc" + }, + { + "model_class": "History", + "id": "91ce7c82a2c6fcfb", + "deleted": false, + "annotation": null, + "purged": false, + "name": "findSpanin - DUC4_TBourgeois", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/91ce7c82a2c6fcfb" + }, + { + "model_class": "History", + "id": "5b446ee938854d9d", + "deleted": false, + "annotation": null, + "purged": false, + "name": "findSpanin - DUC3_BJones", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/5b446ee938854d9d" + }, + { + "model_class": "History", + "id": "a850a8087522a461", + "deleted": false, + "annotation": null, + "purged": false, + "name": "findSpanin - 59S1C_JPowell", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/a850a8087522a461" + }, + { + "model_class": "History", + "id": "addfb3f0c2ec4e23", + "deleted": false, + "annotation": null, + "purged": false, + "name": "annotation table test", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/addfb3f0c2ec4e23" + }, + { + "model_class": "History", + "id": "1a9ee1d5aa3ae5da", + "deleted": false, + "annotation": null, + "purged": false, + "name": "wf E test with terminators Maruffo", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/1a9ee1d5aa3ae5da" + }, + { + "model_class": "History", + "id": "857750ee27fd3f41", + "deleted": false, + "annotation": null, + "purged": false, + "name": "gff3 to genbank test + mapper", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/857750ee27fd3f41" + }, + { + "model_class": "History", + "id": "93841f8d792efd0b", + "deleted": false, + "annotation": null, + "purged": false, + "name": "T2_Chi_KPatil", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/93841f8d792efd0b" + }, + { + "model_class": "History", + "id": "8fdbc96e1458a742", + "deleted": false, + "annotation": null, + "purged": false, + "name": "T2_Chi_KPatil", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/8fdbc96e1458a742" + }, + { + "model_class": "History", + "id": "a7ba1fd0d2d70fc1", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Seifer_phi60C_ASalazar", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/a7ba1fd0d2d70fc1" + }, + { + "model_class": "History", + "id": "c4c84a6c29c828af", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Season15_SCrosby", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/c4c84a6c29c828af" + }, + { + "model_class": "History", + "id": "a83a3e2d34e98b42", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Sazh_WCrossland", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/a83a3e2d34e98b42" + }, + { + "model_class": "History", + "id": "407e338deb7cbbf1", + "deleted": false, + "annotation": null, + "purged": false, + "name": "P-NIH12_RRichardson", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/407e338deb7cbbf1" + }, + { + "model_class": "History", + "id": "2490fd95b2ef8626", + "deleted": false, + "annotation": null, + "purged": false, + "name": "P-NIH10_LMin", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/2490fd95b2ef8626" + }, + { + "model_class": "History", + "id": "0706038fbab1a0d2", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Mijalis_SParvateneni", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/0706038fbab1a0d2" + }, + { + "model_class": "History", + "id": "dce482f9678768e6", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Maroon_JMcDermott", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/dce482f9678768e6" + }, + { + "model_class": "History", + "id": "ff932b016ad9e994", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Maleficent_HWright", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/ff932b016ad9e994" + }, + { + "model_class": "History", + "id": "3738353794da1b85", + "deleted": false, + "annotation": null, + "purged": false, + "name": "LL2-1_RRangan", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/3738353794da1b85" + }, + { + "model_class": "History", + "id": "c7784c34144ac7d5", + "deleted": false, + "annotation": null, + "purged": false, + "name": "LL11_MTheodore", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/c7784c34144ac7d5" + }, + { + "model_class": "History", + "id": "8175f1166cd33249", + "deleted": false, + "annotation": null, + "purged": false, + "name": "H3_AMaruffo", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/8175f1166cd33249" + }, + { + "model_class": "History", + "id": "2b890fa385047885", + "deleted": false, + "annotation": null, + "purged": false, + "name": "H3_AMaruffo", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/2b890fa385047885" + }, + { + "model_class": "History", + "id": "bf915c98934ee295", + "deleted": false, + "annotation": null, + "purged": false, + "name": "E2_JChamblee", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/bf915c98934ee295" + }, + { + "model_class": "History", + "id": "7d3af32870a21281", + "deleted": false, + "annotation": null, + "purged": false, + "name": "DUC8_JTran", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/7d3af32870a21281" + }, + { + "model_class": "History", + "id": "6607adfbda6c5c14", + "deleted": false, + "annotation": null, + "purged": false, + "name": "DUC4_TBourgeois", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/6607adfbda6c5c14" + }, + { + "model_class": "History", + "id": "e30ee2a5b6844b48", + "deleted": false, + "annotation": null, + "purged": false, + "name": "DUC3_BJones", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/e30ee2a5b6844b48" + }, + { + "model_class": "History", + "id": "e7817af735ec0810", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Unnamed history", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/e7817af735ec0810" + }, + { + "model_class": "History", + "id": "31d8f017a64a3645", + "deleted": false, + "annotation": null, + "purged": false, + "name": "testing protein composition workflow", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/31d8f017a64a3645" + }, + { + "model_class": "History", + "id": "9e99522ab34c3437", + "deleted": false, + "annotation": null, + "purged": false, + "name": "LipoRy-GFF v2", + "tags": [ + "PAP2016", + "464", + "bich464", + "annotation", + "workflows" + ], + "published": false, + "url": "/galaxy/api/histories/9e99522ab34c3437" + }, + { + "model_class": "History", + "id": "e22e7ebca95a9d8c", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BICH464 PAP 2016 Part D Testing - P4_KBonasera", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/e22e7ebca95a9d8c" + }, + { + "model_class": "History", + "id": "635ce7a85ba874e7", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Workflow D Testing", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/635ce7a85ba874e7" + }, + { + "model_class": "History", + "id": "a1bca0292d69247a", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Unnamed history", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/a1bca0292d69247a" + }, + { + "model_class": "History", + "id": "82ef6916d0c42a74", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Workflow D testing", + "tags": [ + "PAP2016", + "464", + "bich464", + "annotation", + "workflows" + ], + "published": false, + "url": "/galaxy/api/histories/82ef6916d0c42a74" + }, + { + "model_class": "History", + "id": "c9ac6523cc0bd501", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Miro Upload", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/c9ac6523cc0bd501" + }, + { + "model_class": "History", + "id": "82271cd9a04d840e", + "deleted": false, + "annotation": null, + "purged": false, + "name": "PSU Presentation - C01 Example", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/82271cd9a04d840e" + }, + { + "model_class": "History", + "id": "b9af15fdcdc17b29", + "deleted": false, + "annotation": null, + "purged": false, + "name": "imported: Sazh annotation", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/b9af15fdcdc17b29" + }, + { + "model_class": "History", + "id": "d9cc330379434b58", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Sequencing Data 2016-02-26", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/d9cc330379434b58" + }, + { + "model_class": "History", + "id": "ae968ec8f1c1e8d8", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BICH464 PAP 2016 Part C - Functional Prediction + WA", + "tags": [ + "PAP", + "bich464", + "testing" + ], + "published": false, + "url": "/galaxy/api/histories/ae968ec8f1c1e8d8" + }, + { + "model_class": "History", + "id": "c96f28398eba7717", + "deleted": false, + "annotation": null, + "purged": false, + "name": "C01 Testing", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/c96f28398eba7717" + }, + { + "model_class": "History", + "id": "2d9849223255fe5d", + "deleted": false, + "annotation": null, + "purged": false, + "name": "blast2sam test", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/2d9849223255fe5d" + }, + { + "model_class": "History", + "id": "98bd98144944b03a", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BICH464 - C01 Evaluate", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/98bd98144944b03a" + }, + { + "model_class": "History", + "id": "d7db5ad159562bb8", + "deleted": false, + "annotation": null, + "purged": false, + "name": "phi29 ogs", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/d7db5ad159562bb8" + }, + { + "model_class": "History", + "id": "99df8d44fd19519b", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BICH 464 PAP 2016 v2", + "tags": [ + "PAP", + "bich464", + "testing" + ], + "published": false, + "url": "/galaxy/api/histories/99df8d44fd19519b" + }, + { + "model_class": "History", + "id": "4be97571ded1f0c8", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Intron Finder Test", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/4be97571ded1f0c8" + }, + { + "model_class": "History", + "id": "a7515a52057cdae8", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BICH 464 PAP 2016", + "tags": [ + "PAP", + "bich464", + "testing" + ], + "published": false, + "url": "/galaxy/api/histories/a7515a52057cdae8" + }, + { + "model_class": "History", + "id": "40b42d385d7d3ac0", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Gene Calling for C Lab", + "tags": [ + "testing", + "docs", + "bich464" + ], + "published": false, + "url": "/galaxy/api/histories/40b42d385d7d3ac0" + }, + { + "model_class": "History", + "id": "8c2b9cdf81cd9920", + "deleted": false, + "annotation": null, + "purged": false, + "name": "WebApollo Credentials", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/8c2b9cdf81cd9920" + }, + { + "model_class": "History", + "id": "f573d93a67a5c279", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BICH464 Exercise & Results", + "tags": [ + "students", + "bich464" + ], + "published": false, + "url": "/galaxy/api/histories/f573d93a67a5c279" + }, + { + "model_class": "History", + "id": "f59923c6bdb7cb02", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BICH464 PAP 2016 Part A - WA Test", + "tags": [ + "testing", + "PAP2016", + "bich464" + ], + "published": false, + "url": "/galaxy/api/histories/f59923c6bdb7cb02" + }, + { + "model_class": "History", + "id": "7de5c18289c84abd", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Copy of 'GenomeA 1625-15' shared by 'ryland@tamu.edu' (active items only)", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/7de5c18289c84abd" + }, + { + "model_class": "History", + "id": "5e169c7523ae0fe6", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Copy of 'PAP of Mt0425' shared by 'ryland@tamu.edu' (active items only)", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/5e169c7523ae0fe6" + }, + { + "model_class": "History", + "id": "9c055c90dbb17927", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Contig Closure Assessment", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/9c055c90dbb17927" + }, + { + "model_class": "History", + "id": "6c731b5c41f33f2c", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Filter/Join Fasta Files", + "tags": [], + "published": true, + "url": "/galaxy/api/histories/6c731b5c41f33f2c" + }, + { + "model_class": "History", + "id": "c2f3c04dcb00f8e9", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Spanin Bioinfo", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/c2f3c04dcb00f8e9" + }, + { + "model_class": "History", + "id": "8d54e6226402f60c", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Apollo Export Test", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/8d54e6226402f60c" + }, + { + "model_class": "History", + "id": "1d30a2931a672a25", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Reprof", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/1d30a2931a672a25" + }, + { + "model_class": "History", + "id": "ff8a8cd6850df824", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Copy of 'EX: GenomeA QC Pipeline'", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/ff8a8cd6850df824" + }, + { + "model_class": "History", + "id": "3d8c7c3dfdc7f054", + "deleted": false, + "annotation": null, + "purged": false, + "name": "EX: GenomeA QC Pipeline", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/3d8c7c3dfdc7f054" + }, + { + "model_class": "History", + "id": "bae0e0ba420a9e92", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Copy of 'Mid1 July 2015 Illumina' ' shared by 'adrianacarolina@tamu.edu' (active items only)", + "tags": [ + "sequencing", + "assembly", + "spades", + "illumina" + ], + "published": false, + "url": "/galaxy/api/histories/bae0e0ba420a9e92" + }, + { + "model_class": "History", + "id": "7e846684b8d472a4", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Copy of 'imported: Illumina FASTQ data' shared by 'seasonxie@tamu.edu' (active items only)", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/7e846684b8d472a4" + }, + { + "model_class": "History", + "id": "20e6250b58322eab", + "deleted": false, + "annotation": null, + "purged": false, + "name": "PhageK crap", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/20e6250b58322eab" + }, + { + "model_class": "History", + "id": "93d9861ca6d71e62", + "deleted": false, + "annotation": null, + "purged": false, + "name": "In-silico ligation ssRNA phage TMDs", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/93d9861ca6d71e62" + }, + { + "model_class": "History", + "id": "cda67f355f9798e9", + "deleted": false, + "annotation": null, + "purged": false, + "name": "ssRNA phage TMD processing", + "tags": [ + "tmds", + "ssrna-phages" + ], + "published": false, + "url": "/galaxy/api/histories/cda67f355f9798e9" + }, + { + "model_class": "History", + "id": "cd360eebc4d9b3b2", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Display GBK in JBrowse", + "tags": [], + "published": true, + "url": "/galaxy/api/histories/cd360eebc4d9b3b2" + }, + { + "model_class": "History", + "id": "491f1d348001df48", + "deleted": false, + "annotation": null, + "purged": false, + "name": "ssRNA phage TMD predictions", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/491f1d348001df48" + }, + { + "model_class": "History", + "id": "5f801db8e3010d55", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Copy of 'Wang ssRNA phage analysis' shared by 'ryland@tamu.edu' (active items only)", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/5f801db8e3010d55" + }, + { + "model_class": "History", + "id": "d400d0b3f39c777b", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Introns", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/d400d0b3f39c777b" + }, + { + "model_class": "History", + "id": "272c3a6716a1aad2", + "deleted": false, + "annotation": null, + "purged": false, + "name": "PSMv4 Collections Test", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/272c3a6716a1aad2" + }, + { + "model_class": "History", + "id": "b57365666d1d8859", + "deleted": false, + "annotation": null, + "purged": false, + "name": "imported: Brevundimonas phages", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/b57365666d1d8859" + }, + { + "model_class": "History", + "id": "dde420df3ca81731", + "deleted": false, + "annotation": null, + "purged": false, + "name": "PhageQC NC_006548", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/dde420df3ca81731" + }, + { + "model_class": "History", + "id": "1d8b4124b0d5d4b1", + "deleted": false, + "annotation": null, + "purged": false, + "name": "ShineFind v1.4", + "tags": [], + "published": true, + "url": "/galaxy/api/histories/1d8b4124b0d5d4b1" + }, + { + "model_class": "History", + "id": "010073fe2e14e779", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Blast Genome Subsetting", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/010073fe2e14e779" + }, + { + "model_class": "History", + "id": "f721706e15b750c5", + "deleted": false, + "annotation": null, + "purged": false, + "name": "imported: Mutation detection-XF15.11", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/f721706e15b750c5" + }, + { + "model_class": "History", + "id": "e57d3aba52dda63b", + "deleted": false, + "annotation": null, + "purged": false, + "name": "imported: 2015 Illumina FASTQ data", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/e57d3aba52dda63b" + }, + { + "model_class": "History", + "id": "ebca709eaad3e3a6", + "deleted": false, + "annotation": null, + "purged": false, + "name": "imported: July 2015 Illumina", + "tags": [ + "sequencing", + "spades", + "assembly", + "illumina" + ], + "published": false, + "url": "/galaxy/api/histories/ebca709eaad3e3a6" + }, + { + "model_class": "History", + "id": "6aba2ce8b6170292", + "deleted": false, + "annotation": null, + "purged": false, + "name": "XMFA in JBrowse", + "tags": [ + "comparative", + "xmfa" + ], + "published": true, + "url": "/galaxy/api/histories/6aba2ce8b6170292" + }, + { + "model_class": "History", + "id": "9436359fe01fdc49", + "deleted": false, + "annotation": null, + "purged": false, + "name": "PAUSE3", + "tags": [], + "published": true, + "url": "/galaxy/api/histories/9436359fe01fdc49" + }, + { + "model_class": "History", + "id": "e49027515eece44f", + "deleted": false, + "annotation": null, + "purged": false, + "name": "imported: July 2015 Illumina", + "tags": [ + "sequencing", + "spades", + "assembly", + "illumina" + ], + "published": false, + "url": "/galaxy/api/histories/e49027515eece44f" + }, + { + "model_class": "History", + "id": "1f1f0ecaab9c3009", + "deleted": false, + "annotation": null, + "purged": false, + "name": "July 2015 Illumina", + "tags": [ + "sequencing", + "illumina" + ], + "published": false, + "url": "/galaxy/api/histories/1f1f0ecaab9c3009" + }, + { + "model_class": "History", + "id": "90af107e563bc454", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Intein Detection", + "tags": [ + "jbrowse", + "phage", + "intein" + ], + "published": false, + "url": "/galaxy/api/histories/90af107e563bc454" + }, + { + "model_class": "History", + "id": "cc7bbdc725e62eed", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Miro Reannotation", + "tags": [ + "jbrowse", + "phage", + "annotation" + ], + "published": false, + "url": "/galaxy/api/histories/cc7bbdc725e62eed" + }, + { + "model_class": "History", + "id": "715e1e988641b142", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Sequence Logo", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/715e1e988641b142" + }, + { + "model_class": "History", + "id": "768c5ac13eccb0d2", + "deleted": false, + "annotation": null, + "purged": false, + "name": "CRISPR Analysis", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/768c5ac13eccb0d2" + }, + { + "model_class": "History", + "id": "283191700e3a07cd", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Genbank Metadata Extraction", + "tags": [], + "published": true, + "url": "/galaxy/api/histories/283191700e3a07cd" + }, + { + "model_class": "History", + "id": "0854051858a133aa", + "deleted": false, + "annotation": null, + "purged": false, + "name": "EX: Virtual DNA sequence digests", + "tags": [], + "published": true, + "url": "/galaxy/api/histories/0854051858a133aa" + }, + { + "model_class": "History", + "id": "f7f89d0ace8ef8be", + "deleted": false, + "annotation": null, + "purged": false, + "name": "EX-Clustal History", + "tags": [], + "published": true, + "url": "/galaxy/api/histories/f7f89d0ace8ef8be" + }, + { + "model_class": "History", + "id": "91ddd4075de2505f", + "deleted": false, + "annotation": null, + "purged": false, + "name": "Fralick Assemblies", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/91ddd4075de2505f" + }, + { + "model_class": "History", + "id": "0c4b6de231621c18", + "deleted": false, + "annotation": null, + "purged": false, + "name": "GSAF Data 2014-12", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/0c4b6de231621c18" + }, + { + "model_class": "History", + "id": "b63c4eef5ca1b8f4", + "deleted": false, + "annotation": null, + "purged": false, + "name": "PacBio - GE1", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/b63c4eef5ca1b8f4" + }, + { + "model_class": "History", + "id": "1e5156744eaaa3a6", + "deleted": false, + "annotation": null, + "purged": false, + "name": "PacBio", + "tags": [], + "published": true, + "url": "/galaxy/api/histories/1e5156744eaaa3a6" + }, + { + "model_class": "History", + "id": "e1621e7945e1c84d", + "deleted": false, + "annotation": null, + "purged": false, + "name": "imported: 04/01/14", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/e1621e7945e1c84d" + }, + { + "model_class": "History", + "id": "523ebe1a4c4e6e74", + "deleted": false, + "annotation": null, + "purged": false, + "name": "BICH464-2014 Host Start/Stop Codons", + "tags": [], + "published": true, + "url": "/galaxy/api/histories/523ebe1a4c4e6e74" + }, + { + "model_class": "History", + "id": "6b188bb407694a42", + "deleted": false, + "annotation": null, + "purged": false, + "name": "RNA Seq Project with JBerry", + "tags": [], + "published": false, + "url": "/galaxy/api/histories/6b188bb407694a42" + } +] From 986ec3a5a062c8470c4ba2cfa1e5e5b3007ca185 Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Tue, 2 May 2017 16:57:00 +0000 Subject: [PATCH 02/80] reqs --- requirements.txt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index ec9b3b4..e08a6b4 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,5 +1,6 @@ Click pyyaml -bioblend +# pre-release version +git+https://github.com/galaxyproject/bioblend.git docutils wrapt From 3bc15167cc85fb6e26ba6b861cdde0d1840b5516 Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Tue, 2 May 2017 17:23:35 +0000 Subject: [PATCH 03/80] Reorg --- parsec/commands/cmd_config.py | 9 ++++++++ parsec/commands/config/__init__.py | 0 .../{ => config}/cmd_config_get_config.py | 3 +-- .../commands/{ => config}/cmd_config_init.py | 0 parsec/commands/core.py | 21 +++++++++++++++++++ parsec/commands/datasets/__init__.py | 0 .../cmd_datasets_download_dataset.py | 0 .../cmd_datasets_show_dataset.py | 0 .../cmd_datasets_show_stderr.py | 0 .../cmd_datasets_show_stdout.py | 0 parsec/commands/datatypes/__init__.py | 0 .../cmd_datatypes_get_datatypes.py | 0 .../cmd_datatypes_get_sniffers.py | 0 parsec/commands/folders/__init__.py | 0 .../cmd_folders_delete_folder.py | 0 .../{ => folders}/cmd_folders_show_folder.py | 0 parsec/commands/forms/__init__.py | 0 .../{ => forms}/cmd_forms_create_form.py | 0 .../{ => forms}/cmd_forms_get_forms.py | 0 .../{ => forms}/cmd_forms_show_form.py | 0 parsec/commands/ftpfiles/__init__.py | 0 .../cmd_ftpfiles_get_ftp_files.py | 0 parsec/commands/genomes/__init__.py | 0 .../{ => genomes}/cmd_genomes_get_genomes.py | 0 .../cmd_genomes_install_genome.py | 0 .../{ => genomes}/cmd_genomes_show_genome.py | 0 parsec/commands/groups/__init__.py | 0 .../{ => groups}/cmd_groups_create_group.py | 0 .../{ => groups}/cmd_groups_get_groups.py | 0 .../{ => groups}/cmd_groups_show_group.py | 0 parsec/commands/histories/__init__.py | 0 ...cmd_histories_create_dataset_collection.py | 0 .../cmd_histories_create_history.py | 0 .../cmd_histories_create_history_tag.py | 0 .../cmd_histories_delete_dataset.py | 0 ...cmd_histories_delete_dataset_collection.py | 0 .../cmd_histories_delete_history.py | 0 .../cmd_histories_download_history.py | 0 .../cmd_histories_export_history.py | 0 .../cmd_histories_get_histories.py | 0 ...istories_get_most_recently_used_history.py | 0 .../cmd_histories_get_status.py | 0 .../cmd_histories_show_dataset.py | 0 .../cmd_histories_show_dataset_collection.py | 0 .../cmd_histories_show_dataset_provenance.py | 0 .../cmd_histories_show_history.py | 0 .../cmd_histories_show_matching_datasets.py | 0 .../cmd_histories_undelete_history.py | 0 .../cmd_histories_update_dataset.py | 0 ...cmd_histories_update_dataset_collection.py | 0 .../cmd_histories_update_history.py | 0 ...d_histories_upload_dataset_from_library.py | 0 parsec/commands/jobs/__init__.py | 0 .../commands/{ => jobs}/cmd_jobs_get_jobs.py | 0 .../commands/{ => jobs}/cmd_jobs_get_state.py | 0 .../{ => jobs}/cmd_jobs_search_jobs.py | 0 .../commands/{ => jobs}/cmd_jobs_show_job.py | 0 parsec/commands/libraries/__init__.py | 0 .../cmd_libraries_copy_from_dataset.py | 0 .../cmd_libraries_create_folder.py | 0 .../cmd_libraries_create_library.py | 0 .../cmd_libraries_delete_library.py | 0 .../cmd_libraries_delete_library_dataset.py | 0 .../cmd_libraries_get_folders.py | 0 .../cmd_libraries_get_libraries.py | 0 .../cmd_libraries_set_library_permissions.py | 0 .../cmd_libraries_show_dataset.py | 0 .../cmd_libraries_show_folder.py | 0 .../cmd_libraries_show_library.py | 0 .../cmd_libraries_upload_file_contents.py | 0 ...d_libraries_upload_file_from_local_path.py | 0 .../cmd_libraries_upload_file_from_server.py | 0 .../cmd_libraries_upload_file_from_url.py | 0 ...libraries_upload_from_galaxy_filesystem.py | 0 parsec/commands/quotas/__init__.py | 0 .../{ => quotas}/cmd_quotas_get_quotas.py | 0 .../{ => quotas}/cmd_quotas_show_quota.py | 0 parsec/commands/roles/__init__.py | 0 .../{ => roles}/cmd_roles_get_roles.py | 0 .../{ => roles}/cmd_roles_show_role.py | 0 parsec/commands/tool/__init__.py | 0 .../cmd_tool_data_delete_data_table.py | 0 .../cmd_tool_data_get_data_tables.py | 0 .../cmd_tool_data_show_data_table.py | 0 parsec/commands/toolShed/__init__.py | 0 .../cmd_toolShed_get_repositories.py | 0 ...md_toolShed_install_repository_revision.py | 0 .../cmd_toolShed_show_repository.py | 0 parsec/commands/tools/__init__.py | 0 .../{ => tools}/cmd_tools_get_tool_panel.py | 0 .../{ => tools}/cmd_tools_get_tools.py | 0 .../{ => tools}/cmd_tools_paste_content.py | 0 .../commands/{ => tools}/cmd_tools_put_url.py | 0 .../{ => tools}/cmd_tools_run_tool.py | 0 .../{ => tools}/cmd_tools_show_tool.py | 0 .../{ => tools}/cmd_tools_upload_file.py | 0 parsec/commands/users/__init__.py | 0 .../cmd_users_create_local_user.py | 0 .../cmd_users_create_remote_user.py | 0 .../{ => users}/cmd_users_create_user.py | 0 .../cmd_users_create_user_apikey.py | 0 .../{ => users}/cmd_users_get_current_user.py | 0 .../{ => users}/cmd_users_get_users.py | 0 .../{ => users}/cmd_users_show_user.py | 0 parsec/commands/visual/__init__.py | 0 .../cmd_visual_get_visualizations.py | 0 .../cmd_visual_show_visualization.py | 0 parsec/commands/workflows/__init__.py | 0 .../cmd_workflows_delete_workflow.py | 0 .../cmd_workflows_export_workflow_json.py | 0 ...workflows_export_workflow_to_local_path.py | 0 .../cmd_workflows_get_workflow_inputs.py | 0 .../cmd_workflows_get_workflows.py | 0 .../cmd_workflows_import_shared_workflow.py | 0 ...rkflows_import_workflow_from_local_path.py | 0 .../cmd_workflows_import_workflow_json.py | 0 .../cmd_workflows_run_workflow.py | 0 .../cmd_workflows_show_workflow.py | 0 118 files changed, 31 insertions(+), 2 deletions(-) create mode 100644 parsec/commands/cmd_config.py create mode 100644 parsec/commands/config/__init__.py rename parsec/commands/{ => config}/cmd_config_get_config.py (89%) rename parsec/commands/{ => config}/cmd_config_init.py (100%) create mode 100644 parsec/commands/core.py create mode 100644 parsec/commands/datasets/__init__.py rename parsec/commands/{ => datasets}/cmd_datasets_download_dataset.py (100%) rename parsec/commands/{ => datasets}/cmd_datasets_show_dataset.py (100%) rename parsec/commands/{ => datasets}/cmd_datasets_show_stderr.py (100%) rename parsec/commands/{ => datasets}/cmd_datasets_show_stdout.py (100%) create mode 100644 parsec/commands/datatypes/__init__.py rename parsec/commands/{ => datatypes}/cmd_datatypes_get_datatypes.py (100%) rename parsec/commands/{ => datatypes}/cmd_datatypes_get_sniffers.py (100%) create mode 100644 parsec/commands/folders/__init__.py rename parsec/commands/{ => folders}/cmd_folders_delete_folder.py (100%) rename parsec/commands/{ => folders}/cmd_folders_show_folder.py (100%) create mode 100644 parsec/commands/forms/__init__.py rename parsec/commands/{ => forms}/cmd_forms_create_form.py (100%) rename parsec/commands/{ => forms}/cmd_forms_get_forms.py (100%) rename parsec/commands/{ => forms}/cmd_forms_show_form.py (100%) create mode 100644 parsec/commands/ftpfiles/__init__.py rename parsec/commands/{ => ftpfiles}/cmd_ftpfiles_get_ftp_files.py (100%) create mode 100644 parsec/commands/genomes/__init__.py rename parsec/commands/{ => genomes}/cmd_genomes_get_genomes.py (100%) rename parsec/commands/{ => genomes}/cmd_genomes_install_genome.py (100%) rename parsec/commands/{ => genomes}/cmd_genomes_show_genome.py (100%) create mode 100644 parsec/commands/groups/__init__.py rename parsec/commands/{ => groups}/cmd_groups_create_group.py (100%) rename parsec/commands/{ => groups}/cmd_groups_get_groups.py (100%) rename parsec/commands/{ => groups}/cmd_groups_show_group.py (100%) create mode 100644 parsec/commands/histories/__init__.py rename parsec/commands/{ => histories}/cmd_histories_create_dataset_collection.py (100%) rename parsec/commands/{ => histories}/cmd_histories_create_history.py (100%) rename parsec/commands/{ => histories}/cmd_histories_create_history_tag.py (100%) rename parsec/commands/{ => histories}/cmd_histories_delete_dataset.py (100%) rename parsec/commands/{ => histories}/cmd_histories_delete_dataset_collection.py (100%) rename parsec/commands/{ => histories}/cmd_histories_delete_history.py (100%) rename parsec/commands/{ => histories}/cmd_histories_download_history.py (100%) rename parsec/commands/{ => histories}/cmd_histories_export_history.py (100%) rename parsec/commands/{ => histories}/cmd_histories_get_histories.py (100%) rename parsec/commands/{ => histories}/cmd_histories_get_most_recently_used_history.py (100%) rename parsec/commands/{ => histories}/cmd_histories_get_status.py (100%) rename parsec/commands/{ => histories}/cmd_histories_show_dataset.py (100%) rename parsec/commands/{ => histories}/cmd_histories_show_dataset_collection.py (100%) rename parsec/commands/{ => histories}/cmd_histories_show_dataset_provenance.py (100%) rename parsec/commands/{ => histories}/cmd_histories_show_history.py (100%) rename parsec/commands/{ => histories}/cmd_histories_show_matching_datasets.py (100%) rename parsec/commands/{ => histories}/cmd_histories_undelete_history.py (100%) rename parsec/commands/{ => histories}/cmd_histories_update_dataset.py (100%) rename parsec/commands/{ => histories}/cmd_histories_update_dataset_collection.py (100%) rename parsec/commands/{ => histories}/cmd_histories_update_history.py (100%) rename parsec/commands/{ => histories}/cmd_histories_upload_dataset_from_library.py (100%) create mode 100644 parsec/commands/jobs/__init__.py rename parsec/commands/{ => jobs}/cmd_jobs_get_jobs.py (100%) rename parsec/commands/{ => jobs}/cmd_jobs_get_state.py (100%) rename parsec/commands/{ => jobs}/cmd_jobs_search_jobs.py (100%) rename parsec/commands/{ => jobs}/cmd_jobs_show_job.py (100%) create mode 100644 parsec/commands/libraries/__init__.py rename parsec/commands/{ => libraries}/cmd_libraries_copy_from_dataset.py (100%) rename parsec/commands/{ => libraries}/cmd_libraries_create_folder.py (100%) rename parsec/commands/{ => libraries}/cmd_libraries_create_library.py (100%) rename parsec/commands/{ => libraries}/cmd_libraries_delete_library.py (100%) rename parsec/commands/{ => libraries}/cmd_libraries_delete_library_dataset.py (100%) rename parsec/commands/{ => libraries}/cmd_libraries_get_folders.py (100%) rename parsec/commands/{ => libraries}/cmd_libraries_get_libraries.py (100%) rename parsec/commands/{ => libraries}/cmd_libraries_set_library_permissions.py (100%) rename parsec/commands/{ => libraries}/cmd_libraries_show_dataset.py (100%) rename parsec/commands/{ => libraries}/cmd_libraries_show_folder.py (100%) rename parsec/commands/{ => libraries}/cmd_libraries_show_library.py (100%) rename parsec/commands/{ => libraries}/cmd_libraries_upload_file_contents.py (100%) rename parsec/commands/{ => libraries}/cmd_libraries_upload_file_from_local_path.py (100%) rename parsec/commands/{ => libraries}/cmd_libraries_upload_file_from_server.py (100%) rename parsec/commands/{ => libraries}/cmd_libraries_upload_file_from_url.py (100%) rename parsec/commands/{ => libraries}/cmd_libraries_upload_from_galaxy_filesystem.py (100%) create mode 100644 parsec/commands/quotas/__init__.py rename parsec/commands/{ => quotas}/cmd_quotas_get_quotas.py (100%) rename parsec/commands/{ => quotas}/cmd_quotas_show_quota.py (100%) create mode 100644 parsec/commands/roles/__init__.py rename parsec/commands/{ => roles}/cmd_roles_get_roles.py (100%) rename parsec/commands/{ => roles}/cmd_roles_show_role.py (100%) create mode 100644 parsec/commands/tool/__init__.py rename parsec/commands/{ => tool}/cmd_tool_data_delete_data_table.py (100%) rename parsec/commands/{ => tool}/cmd_tool_data_get_data_tables.py (100%) rename parsec/commands/{ => tool}/cmd_tool_data_show_data_table.py (100%) create mode 100644 parsec/commands/toolShed/__init__.py rename parsec/commands/{ => toolShed}/cmd_toolShed_get_repositories.py (100%) rename parsec/commands/{ => toolShed}/cmd_toolShed_install_repository_revision.py (100%) rename parsec/commands/{ => toolShed}/cmd_toolShed_show_repository.py (100%) create mode 100644 parsec/commands/tools/__init__.py rename parsec/commands/{ => tools}/cmd_tools_get_tool_panel.py (100%) rename parsec/commands/{ => tools}/cmd_tools_get_tools.py (100%) rename parsec/commands/{ => tools}/cmd_tools_paste_content.py (100%) rename parsec/commands/{ => tools}/cmd_tools_put_url.py (100%) rename parsec/commands/{ => tools}/cmd_tools_run_tool.py (100%) rename parsec/commands/{ => tools}/cmd_tools_show_tool.py (100%) rename parsec/commands/{ => tools}/cmd_tools_upload_file.py (100%) create mode 100644 parsec/commands/users/__init__.py rename parsec/commands/{ => users}/cmd_users_create_local_user.py (100%) rename parsec/commands/{ => users}/cmd_users_create_remote_user.py (100%) rename parsec/commands/{ => users}/cmd_users_create_user.py (100%) rename parsec/commands/{ => users}/cmd_users_create_user_apikey.py (100%) rename parsec/commands/{ => users}/cmd_users_get_current_user.py (100%) rename parsec/commands/{ => users}/cmd_users_get_users.py (100%) rename parsec/commands/{ => users}/cmd_users_show_user.py (100%) create mode 100644 parsec/commands/visual/__init__.py rename parsec/commands/{ => visual}/cmd_visual_get_visualizations.py (100%) rename parsec/commands/{ => visual}/cmd_visual_show_visualization.py (100%) create mode 100644 parsec/commands/workflows/__init__.py rename parsec/commands/{ => workflows}/cmd_workflows_delete_workflow.py (100%) rename parsec/commands/{ => workflows}/cmd_workflows_export_workflow_json.py (100%) rename parsec/commands/{ => workflows}/cmd_workflows_export_workflow_to_local_path.py (100%) rename parsec/commands/{ => workflows}/cmd_workflows_get_workflow_inputs.py (100%) rename parsec/commands/{ => workflows}/cmd_workflows_get_workflows.py (100%) rename parsec/commands/{ => workflows}/cmd_workflows_import_shared_workflow.py (100%) rename parsec/commands/{ => workflows}/cmd_workflows_import_workflow_from_local_path.py (100%) rename parsec/commands/{ => workflows}/cmd_workflows_import_workflow_json.py (100%) rename parsec/commands/{ => workflows}/cmd_workflows_run_workflow.py (100%) rename parsec/commands/{ => workflows}/cmd_workflows_show_workflow.py (100%) diff --git a/parsec/commands/cmd_config.py b/parsec/commands/cmd_config.py new file mode 100644 index 0000000..a0d827f --- /dev/null +++ b/parsec/commands/cmd_config.py @@ -0,0 +1,9 @@ +import click +from parsec.commands.config.cmd_config_get_config import cli as ccgc + + +@click.group() +def cli(): + pass + +cli.add_command(ccgc) diff --git a/parsec/commands/config/__init__.py b/parsec/commands/config/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/parsec/commands/cmd_config_get_config.py b/parsec/commands/config/cmd_config_get_config.py similarity index 89% rename from parsec/commands/cmd_config_get_config.py rename to parsec/commands/config/cmd_config_get_config.py index 2de52bb..114bc35 100644 --- a/parsec/commands/cmd_config_get_config.py +++ b/parsec/commands/config/cmd_config_get_config.py @@ -3,8 +3,7 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('config_get_config') +@click.command('get_config') @pass_context @bioblend_exception @dict_output diff --git a/parsec/commands/cmd_config_init.py b/parsec/commands/config/cmd_config_init.py similarity index 100% rename from parsec/commands/cmd_config_init.py rename to parsec/commands/config/cmd_config_init.py diff --git a/parsec/commands/core.py b/parsec/commands/core.py new file mode 100644 index 0000000..beb83d6 --- /dev/null +++ b/parsec/commands/core.py @@ -0,0 +1,21 @@ +import os +import click + + + +@click.group() +def cli(): + pass + +@click.command() +def initdb(): + click.echo('Initialized the database') + +@click.command() +def dropdb(): + click.echo('Dropped the database') + +cli.add_command(initdb) +cli.add_command(dropdb) + +cli() diff --git a/parsec/commands/datasets/__init__.py b/parsec/commands/datasets/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/parsec/commands/cmd_datasets_download_dataset.py b/parsec/commands/datasets/cmd_datasets_download_dataset.py similarity index 100% rename from parsec/commands/cmd_datasets_download_dataset.py rename to parsec/commands/datasets/cmd_datasets_download_dataset.py diff --git a/parsec/commands/cmd_datasets_show_dataset.py b/parsec/commands/datasets/cmd_datasets_show_dataset.py similarity index 100% rename from parsec/commands/cmd_datasets_show_dataset.py rename to parsec/commands/datasets/cmd_datasets_show_dataset.py diff --git a/parsec/commands/cmd_datasets_show_stderr.py b/parsec/commands/datasets/cmd_datasets_show_stderr.py similarity index 100% rename from parsec/commands/cmd_datasets_show_stderr.py rename to parsec/commands/datasets/cmd_datasets_show_stderr.py diff --git a/parsec/commands/cmd_datasets_show_stdout.py b/parsec/commands/datasets/cmd_datasets_show_stdout.py similarity index 100% rename from parsec/commands/cmd_datasets_show_stdout.py rename to parsec/commands/datasets/cmd_datasets_show_stdout.py diff --git a/parsec/commands/datatypes/__init__.py b/parsec/commands/datatypes/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/parsec/commands/cmd_datatypes_get_datatypes.py b/parsec/commands/datatypes/cmd_datatypes_get_datatypes.py similarity index 100% rename from parsec/commands/cmd_datatypes_get_datatypes.py rename to parsec/commands/datatypes/cmd_datatypes_get_datatypes.py diff --git a/parsec/commands/cmd_datatypes_get_sniffers.py b/parsec/commands/datatypes/cmd_datatypes_get_sniffers.py similarity index 100% rename from parsec/commands/cmd_datatypes_get_sniffers.py rename to parsec/commands/datatypes/cmd_datatypes_get_sniffers.py diff --git a/parsec/commands/folders/__init__.py b/parsec/commands/folders/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/parsec/commands/cmd_folders_delete_folder.py b/parsec/commands/folders/cmd_folders_delete_folder.py similarity index 100% rename from parsec/commands/cmd_folders_delete_folder.py rename to parsec/commands/folders/cmd_folders_delete_folder.py diff --git a/parsec/commands/cmd_folders_show_folder.py b/parsec/commands/folders/cmd_folders_show_folder.py similarity index 100% rename from parsec/commands/cmd_folders_show_folder.py rename to parsec/commands/folders/cmd_folders_show_folder.py diff --git a/parsec/commands/forms/__init__.py b/parsec/commands/forms/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/parsec/commands/cmd_forms_create_form.py b/parsec/commands/forms/cmd_forms_create_form.py similarity index 100% rename from parsec/commands/cmd_forms_create_form.py rename to parsec/commands/forms/cmd_forms_create_form.py diff --git a/parsec/commands/cmd_forms_get_forms.py b/parsec/commands/forms/cmd_forms_get_forms.py similarity index 100% rename from parsec/commands/cmd_forms_get_forms.py rename to parsec/commands/forms/cmd_forms_get_forms.py diff --git a/parsec/commands/cmd_forms_show_form.py b/parsec/commands/forms/cmd_forms_show_form.py similarity index 100% rename from parsec/commands/cmd_forms_show_form.py rename to parsec/commands/forms/cmd_forms_show_form.py diff --git a/parsec/commands/ftpfiles/__init__.py b/parsec/commands/ftpfiles/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/parsec/commands/cmd_ftpfiles_get_ftp_files.py b/parsec/commands/ftpfiles/cmd_ftpfiles_get_ftp_files.py similarity index 100% rename from parsec/commands/cmd_ftpfiles_get_ftp_files.py rename to parsec/commands/ftpfiles/cmd_ftpfiles_get_ftp_files.py diff --git a/parsec/commands/genomes/__init__.py b/parsec/commands/genomes/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/parsec/commands/cmd_genomes_get_genomes.py b/parsec/commands/genomes/cmd_genomes_get_genomes.py similarity index 100% rename from parsec/commands/cmd_genomes_get_genomes.py rename to parsec/commands/genomes/cmd_genomes_get_genomes.py diff --git a/parsec/commands/cmd_genomes_install_genome.py b/parsec/commands/genomes/cmd_genomes_install_genome.py similarity index 100% rename from parsec/commands/cmd_genomes_install_genome.py rename to parsec/commands/genomes/cmd_genomes_install_genome.py diff --git a/parsec/commands/cmd_genomes_show_genome.py b/parsec/commands/genomes/cmd_genomes_show_genome.py similarity index 100% rename from parsec/commands/cmd_genomes_show_genome.py rename to parsec/commands/genomes/cmd_genomes_show_genome.py diff --git a/parsec/commands/groups/__init__.py b/parsec/commands/groups/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/parsec/commands/cmd_groups_create_group.py b/parsec/commands/groups/cmd_groups_create_group.py similarity index 100% rename from parsec/commands/cmd_groups_create_group.py rename to parsec/commands/groups/cmd_groups_create_group.py diff --git a/parsec/commands/cmd_groups_get_groups.py b/parsec/commands/groups/cmd_groups_get_groups.py similarity index 100% rename from parsec/commands/cmd_groups_get_groups.py rename to parsec/commands/groups/cmd_groups_get_groups.py diff --git a/parsec/commands/cmd_groups_show_group.py b/parsec/commands/groups/cmd_groups_show_group.py similarity index 100% rename from parsec/commands/cmd_groups_show_group.py rename to parsec/commands/groups/cmd_groups_show_group.py diff --git a/parsec/commands/histories/__init__.py b/parsec/commands/histories/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/parsec/commands/cmd_histories_create_dataset_collection.py b/parsec/commands/histories/cmd_histories_create_dataset_collection.py similarity index 100% rename from parsec/commands/cmd_histories_create_dataset_collection.py rename to parsec/commands/histories/cmd_histories_create_dataset_collection.py diff --git a/parsec/commands/cmd_histories_create_history.py b/parsec/commands/histories/cmd_histories_create_history.py similarity index 100% rename from parsec/commands/cmd_histories_create_history.py rename to parsec/commands/histories/cmd_histories_create_history.py diff --git a/parsec/commands/cmd_histories_create_history_tag.py b/parsec/commands/histories/cmd_histories_create_history_tag.py similarity index 100% rename from parsec/commands/cmd_histories_create_history_tag.py rename to parsec/commands/histories/cmd_histories_create_history_tag.py diff --git a/parsec/commands/cmd_histories_delete_dataset.py b/parsec/commands/histories/cmd_histories_delete_dataset.py similarity index 100% rename from parsec/commands/cmd_histories_delete_dataset.py rename to parsec/commands/histories/cmd_histories_delete_dataset.py diff --git a/parsec/commands/cmd_histories_delete_dataset_collection.py b/parsec/commands/histories/cmd_histories_delete_dataset_collection.py similarity index 100% rename from parsec/commands/cmd_histories_delete_dataset_collection.py rename to parsec/commands/histories/cmd_histories_delete_dataset_collection.py diff --git a/parsec/commands/cmd_histories_delete_history.py b/parsec/commands/histories/cmd_histories_delete_history.py similarity index 100% rename from parsec/commands/cmd_histories_delete_history.py rename to parsec/commands/histories/cmd_histories_delete_history.py diff --git a/parsec/commands/cmd_histories_download_history.py b/parsec/commands/histories/cmd_histories_download_history.py similarity index 100% rename from parsec/commands/cmd_histories_download_history.py rename to parsec/commands/histories/cmd_histories_download_history.py diff --git a/parsec/commands/cmd_histories_export_history.py b/parsec/commands/histories/cmd_histories_export_history.py similarity index 100% rename from parsec/commands/cmd_histories_export_history.py rename to parsec/commands/histories/cmd_histories_export_history.py diff --git a/parsec/commands/cmd_histories_get_histories.py b/parsec/commands/histories/cmd_histories_get_histories.py similarity index 100% rename from parsec/commands/cmd_histories_get_histories.py rename to parsec/commands/histories/cmd_histories_get_histories.py diff --git a/parsec/commands/cmd_histories_get_most_recently_used_history.py b/parsec/commands/histories/cmd_histories_get_most_recently_used_history.py similarity index 100% rename from parsec/commands/cmd_histories_get_most_recently_used_history.py rename to parsec/commands/histories/cmd_histories_get_most_recently_used_history.py diff --git a/parsec/commands/cmd_histories_get_status.py b/parsec/commands/histories/cmd_histories_get_status.py similarity index 100% rename from parsec/commands/cmd_histories_get_status.py rename to parsec/commands/histories/cmd_histories_get_status.py diff --git a/parsec/commands/cmd_histories_show_dataset.py b/parsec/commands/histories/cmd_histories_show_dataset.py similarity index 100% rename from parsec/commands/cmd_histories_show_dataset.py rename to parsec/commands/histories/cmd_histories_show_dataset.py diff --git a/parsec/commands/cmd_histories_show_dataset_collection.py b/parsec/commands/histories/cmd_histories_show_dataset_collection.py similarity index 100% rename from parsec/commands/cmd_histories_show_dataset_collection.py rename to parsec/commands/histories/cmd_histories_show_dataset_collection.py diff --git a/parsec/commands/cmd_histories_show_dataset_provenance.py b/parsec/commands/histories/cmd_histories_show_dataset_provenance.py similarity index 100% rename from parsec/commands/cmd_histories_show_dataset_provenance.py rename to parsec/commands/histories/cmd_histories_show_dataset_provenance.py diff --git a/parsec/commands/cmd_histories_show_history.py b/parsec/commands/histories/cmd_histories_show_history.py similarity index 100% rename from parsec/commands/cmd_histories_show_history.py rename to parsec/commands/histories/cmd_histories_show_history.py diff --git a/parsec/commands/cmd_histories_show_matching_datasets.py b/parsec/commands/histories/cmd_histories_show_matching_datasets.py similarity index 100% rename from parsec/commands/cmd_histories_show_matching_datasets.py rename to parsec/commands/histories/cmd_histories_show_matching_datasets.py diff --git a/parsec/commands/cmd_histories_undelete_history.py b/parsec/commands/histories/cmd_histories_undelete_history.py similarity index 100% rename from parsec/commands/cmd_histories_undelete_history.py rename to parsec/commands/histories/cmd_histories_undelete_history.py diff --git a/parsec/commands/cmd_histories_update_dataset.py b/parsec/commands/histories/cmd_histories_update_dataset.py similarity index 100% rename from parsec/commands/cmd_histories_update_dataset.py rename to parsec/commands/histories/cmd_histories_update_dataset.py diff --git a/parsec/commands/cmd_histories_update_dataset_collection.py b/parsec/commands/histories/cmd_histories_update_dataset_collection.py similarity index 100% rename from parsec/commands/cmd_histories_update_dataset_collection.py rename to parsec/commands/histories/cmd_histories_update_dataset_collection.py diff --git a/parsec/commands/cmd_histories_update_history.py b/parsec/commands/histories/cmd_histories_update_history.py similarity index 100% rename from parsec/commands/cmd_histories_update_history.py rename to parsec/commands/histories/cmd_histories_update_history.py diff --git a/parsec/commands/cmd_histories_upload_dataset_from_library.py b/parsec/commands/histories/cmd_histories_upload_dataset_from_library.py similarity index 100% rename from parsec/commands/cmd_histories_upload_dataset_from_library.py rename to parsec/commands/histories/cmd_histories_upload_dataset_from_library.py diff --git a/parsec/commands/jobs/__init__.py b/parsec/commands/jobs/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/parsec/commands/cmd_jobs_get_jobs.py b/parsec/commands/jobs/cmd_jobs_get_jobs.py similarity index 100% rename from parsec/commands/cmd_jobs_get_jobs.py rename to parsec/commands/jobs/cmd_jobs_get_jobs.py diff --git a/parsec/commands/cmd_jobs_get_state.py b/parsec/commands/jobs/cmd_jobs_get_state.py similarity index 100% rename from parsec/commands/cmd_jobs_get_state.py rename to parsec/commands/jobs/cmd_jobs_get_state.py diff --git a/parsec/commands/cmd_jobs_search_jobs.py b/parsec/commands/jobs/cmd_jobs_search_jobs.py similarity index 100% rename from parsec/commands/cmd_jobs_search_jobs.py rename to parsec/commands/jobs/cmd_jobs_search_jobs.py diff --git a/parsec/commands/cmd_jobs_show_job.py b/parsec/commands/jobs/cmd_jobs_show_job.py similarity index 100% rename from parsec/commands/cmd_jobs_show_job.py rename to parsec/commands/jobs/cmd_jobs_show_job.py diff --git a/parsec/commands/libraries/__init__.py b/parsec/commands/libraries/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/parsec/commands/cmd_libraries_copy_from_dataset.py b/parsec/commands/libraries/cmd_libraries_copy_from_dataset.py similarity index 100% rename from parsec/commands/cmd_libraries_copy_from_dataset.py rename to parsec/commands/libraries/cmd_libraries_copy_from_dataset.py diff --git a/parsec/commands/cmd_libraries_create_folder.py b/parsec/commands/libraries/cmd_libraries_create_folder.py similarity index 100% rename from parsec/commands/cmd_libraries_create_folder.py rename to parsec/commands/libraries/cmd_libraries_create_folder.py diff --git a/parsec/commands/cmd_libraries_create_library.py b/parsec/commands/libraries/cmd_libraries_create_library.py similarity index 100% rename from parsec/commands/cmd_libraries_create_library.py rename to parsec/commands/libraries/cmd_libraries_create_library.py diff --git a/parsec/commands/cmd_libraries_delete_library.py b/parsec/commands/libraries/cmd_libraries_delete_library.py similarity index 100% rename from parsec/commands/cmd_libraries_delete_library.py rename to parsec/commands/libraries/cmd_libraries_delete_library.py diff --git a/parsec/commands/cmd_libraries_delete_library_dataset.py b/parsec/commands/libraries/cmd_libraries_delete_library_dataset.py similarity index 100% rename from parsec/commands/cmd_libraries_delete_library_dataset.py rename to parsec/commands/libraries/cmd_libraries_delete_library_dataset.py diff --git a/parsec/commands/cmd_libraries_get_folders.py b/parsec/commands/libraries/cmd_libraries_get_folders.py similarity index 100% rename from parsec/commands/cmd_libraries_get_folders.py rename to parsec/commands/libraries/cmd_libraries_get_folders.py diff --git a/parsec/commands/cmd_libraries_get_libraries.py b/parsec/commands/libraries/cmd_libraries_get_libraries.py similarity index 100% rename from parsec/commands/cmd_libraries_get_libraries.py rename to parsec/commands/libraries/cmd_libraries_get_libraries.py diff --git a/parsec/commands/cmd_libraries_set_library_permissions.py b/parsec/commands/libraries/cmd_libraries_set_library_permissions.py similarity index 100% rename from parsec/commands/cmd_libraries_set_library_permissions.py rename to parsec/commands/libraries/cmd_libraries_set_library_permissions.py diff --git a/parsec/commands/cmd_libraries_show_dataset.py b/parsec/commands/libraries/cmd_libraries_show_dataset.py similarity index 100% rename from parsec/commands/cmd_libraries_show_dataset.py rename to parsec/commands/libraries/cmd_libraries_show_dataset.py diff --git a/parsec/commands/cmd_libraries_show_folder.py b/parsec/commands/libraries/cmd_libraries_show_folder.py similarity index 100% rename from parsec/commands/cmd_libraries_show_folder.py rename to parsec/commands/libraries/cmd_libraries_show_folder.py diff --git a/parsec/commands/cmd_libraries_show_library.py b/parsec/commands/libraries/cmd_libraries_show_library.py similarity index 100% rename from parsec/commands/cmd_libraries_show_library.py rename to parsec/commands/libraries/cmd_libraries_show_library.py diff --git a/parsec/commands/cmd_libraries_upload_file_contents.py b/parsec/commands/libraries/cmd_libraries_upload_file_contents.py similarity index 100% rename from parsec/commands/cmd_libraries_upload_file_contents.py rename to parsec/commands/libraries/cmd_libraries_upload_file_contents.py diff --git a/parsec/commands/cmd_libraries_upload_file_from_local_path.py b/parsec/commands/libraries/cmd_libraries_upload_file_from_local_path.py similarity index 100% rename from parsec/commands/cmd_libraries_upload_file_from_local_path.py rename to parsec/commands/libraries/cmd_libraries_upload_file_from_local_path.py diff --git a/parsec/commands/cmd_libraries_upload_file_from_server.py b/parsec/commands/libraries/cmd_libraries_upload_file_from_server.py similarity index 100% rename from parsec/commands/cmd_libraries_upload_file_from_server.py rename to parsec/commands/libraries/cmd_libraries_upload_file_from_server.py diff --git a/parsec/commands/cmd_libraries_upload_file_from_url.py b/parsec/commands/libraries/cmd_libraries_upload_file_from_url.py similarity index 100% rename from parsec/commands/cmd_libraries_upload_file_from_url.py rename to parsec/commands/libraries/cmd_libraries_upload_file_from_url.py diff --git a/parsec/commands/cmd_libraries_upload_from_galaxy_filesystem.py b/parsec/commands/libraries/cmd_libraries_upload_from_galaxy_filesystem.py similarity index 100% rename from parsec/commands/cmd_libraries_upload_from_galaxy_filesystem.py rename to parsec/commands/libraries/cmd_libraries_upload_from_galaxy_filesystem.py diff --git a/parsec/commands/quotas/__init__.py b/parsec/commands/quotas/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/parsec/commands/cmd_quotas_get_quotas.py b/parsec/commands/quotas/cmd_quotas_get_quotas.py similarity index 100% rename from parsec/commands/cmd_quotas_get_quotas.py rename to parsec/commands/quotas/cmd_quotas_get_quotas.py diff --git a/parsec/commands/cmd_quotas_show_quota.py b/parsec/commands/quotas/cmd_quotas_show_quota.py similarity index 100% rename from parsec/commands/cmd_quotas_show_quota.py rename to parsec/commands/quotas/cmd_quotas_show_quota.py diff --git a/parsec/commands/roles/__init__.py b/parsec/commands/roles/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/parsec/commands/cmd_roles_get_roles.py b/parsec/commands/roles/cmd_roles_get_roles.py similarity index 100% rename from parsec/commands/cmd_roles_get_roles.py rename to parsec/commands/roles/cmd_roles_get_roles.py diff --git a/parsec/commands/cmd_roles_show_role.py b/parsec/commands/roles/cmd_roles_show_role.py similarity index 100% rename from parsec/commands/cmd_roles_show_role.py rename to parsec/commands/roles/cmd_roles_show_role.py diff --git a/parsec/commands/tool/__init__.py b/parsec/commands/tool/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/parsec/commands/cmd_tool_data_delete_data_table.py b/parsec/commands/tool/cmd_tool_data_delete_data_table.py similarity index 100% rename from parsec/commands/cmd_tool_data_delete_data_table.py rename to parsec/commands/tool/cmd_tool_data_delete_data_table.py diff --git a/parsec/commands/cmd_tool_data_get_data_tables.py b/parsec/commands/tool/cmd_tool_data_get_data_tables.py similarity index 100% rename from parsec/commands/cmd_tool_data_get_data_tables.py rename to parsec/commands/tool/cmd_tool_data_get_data_tables.py diff --git a/parsec/commands/cmd_tool_data_show_data_table.py b/parsec/commands/tool/cmd_tool_data_show_data_table.py similarity index 100% rename from parsec/commands/cmd_tool_data_show_data_table.py rename to parsec/commands/tool/cmd_tool_data_show_data_table.py diff --git a/parsec/commands/toolShed/__init__.py b/parsec/commands/toolShed/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/parsec/commands/cmd_toolShed_get_repositories.py b/parsec/commands/toolShed/cmd_toolShed_get_repositories.py similarity index 100% rename from parsec/commands/cmd_toolShed_get_repositories.py rename to parsec/commands/toolShed/cmd_toolShed_get_repositories.py diff --git a/parsec/commands/cmd_toolShed_install_repository_revision.py b/parsec/commands/toolShed/cmd_toolShed_install_repository_revision.py similarity index 100% rename from parsec/commands/cmd_toolShed_install_repository_revision.py rename to parsec/commands/toolShed/cmd_toolShed_install_repository_revision.py diff --git a/parsec/commands/cmd_toolShed_show_repository.py b/parsec/commands/toolShed/cmd_toolShed_show_repository.py similarity index 100% rename from parsec/commands/cmd_toolShed_show_repository.py rename to parsec/commands/toolShed/cmd_toolShed_show_repository.py diff --git a/parsec/commands/tools/__init__.py b/parsec/commands/tools/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/parsec/commands/cmd_tools_get_tool_panel.py b/parsec/commands/tools/cmd_tools_get_tool_panel.py similarity index 100% rename from parsec/commands/cmd_tools_get_tool_panel.py rename to parsec/commands/tools/cmd_tools_get_tool_panel.py diff --git a/parsec/commands/cmd_tools_get_tools.py b/parsec/commands/tools/cmd_tools_get_tools.py similarity index 100% rename from parsec/commands/cmd_tools_get_tools.py rename to parsec/commands/tools/cmd_tools_get_tools.py diff --git a/parsec/commands/cmd_tools_paste_content.py b/parsec/commands/tools/cmd_tools_paste_content.py similarity index 100% rename from parsec/commands/cmd_tools_paste_content.py rename to parsec/commands/tools/cmd_tools_paste_content.py diff --git a/parsec/commands/cmd_tools_put_url.py b/parsec/commands/tools/cmd_tools_put_url.py similarity index 100% rename from parsec/commands/cmd_tools_put_url.py rename to parsec/commands/tools/cmd_tools_put_url.py diff --git a/parsec/commands/cmd_tools_run_tool.py b/parsec/commands/tools/cmd_tools_run_tool.py similarity index 100% rename from parsec/commands/cmd_tools_run_tool.py rename to parsec/commands/tools/cmd_tools_run_tool.py diff --git a/parsec/commands/cmd_tools_show_tool.py b/parsec/commands/tools/cmd_tools_show_tool.py similarity index 100% rename from parsec/commands/cmd_tools_show_tool.py rename to parsec/commands/tools/cmd_tools_show_tool.py diff --git a/parsec/commands/cmd_tools_upload_file.py b/parsec/commands/tools/cmd_tools_upload_file.py similarity index 100% rename from parsec/commands/cmd_tools_upload_file.py rename to parsec/commands/tools/cmd_tools_upload_file.py diff --git a/parsec/commands/users/__init__.py b/parsec/commands/users/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/parsec/commands/cmd_users_create_local_user.py b/parsec/commands/users/cmd_users_create_local_user.py similarity index 100% rename from parsec/commands/cmd_users_create_local_user.py rename to parsec/commands/users/cmd_users_create_local_user.py diff --git a/parsec/commands/cmd_users_create_remote_user.py b/parsec/commands/users/cmd_users_create_remote_user.py similarity index 100% rename from parsec/commands/cmd_users_create_remote_user.py rename to parsec/commands/users/cmd_users_create_remote_user.py diff --git a/parsec/commands/cmd_users_create_user.py b/parsec/commands/users/cmd_users_create_user.py similarity index 100% rename from parsec/commands/cmd_users_create_user.py rename to parsec/commands/users/cmd_users_create_user.py diff --git a/parsec/commands/cmd_users_create_user_apikey.py b/parsec/commands/users/cmd_users_create_user_apikey.py similarity index 100% rename from parsec/commands/cmd_users_create_user_apikey.py rename to parsec/commands/users/cmd_users_create_user_apikey.py diff --git a/parsec/commands/cmd_users_get_current_user.py b/parsec/commands/users/cmd_users_get_current_user.py similarity index 100% rename from parsec/commands/cmd_users_get_current_user.py rename to parsec/commands/users/cmd_users_get_current_user.py diff --git a/parsec/commands/cmd_users_get_users.py b/parsec/commands/users/cmd_users_get_users.py similarity index 100% rename from parsec/commands/cmd_users_get_users.py rename to parsec/commands/users/cmd_users_get_users.py diff --git a/parsec/commands/cmd_users_show_user.py b/parsec/commands/users/cmd_users_show_user.py similarity index 100% rename from parsec/commands/cmd_users_show_user.py rename to parsec/commands/users/cmd_users_show_user.py diff --git a/parsec/commands/visual/__init__.py b/parsec/commands/visual/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/parsec/commands/cmd_visual_get_visualizations.py b/parsec/commands/visual/cmd_visual_get_visualizations.py similarity index 100% rename from parsec/commands/cmd_visual_get_visualizations.py rename to parsec/commands/visual/cmd_visual_get_visualizations.py diff --git a/parsec/commands/cmd_visual_show_visualization.py b/parsec/commands/visual/cmd_visual_show_visualization.py similarity index 100% rename from parsec/commands/cmd_visual_show_visualization.py rename to parsec/commands/visual/cmd_visual_show_visualization.py diff --git a/parsec/commands/workflows/__init__.py b/parsec/commands/workflows/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/parsec/commands/cmd_workflows_delete_workflow.py b/parsec/commands/workflows/cmd_workflows_delete_workflow.py similarity index 100% rename from parsec/commands/cmd_workflows_delete_workflow.py rename to parsec/commands/workflows/cmd_workflows_delete_workflow.py diff --git a/parsec/commands/cmd_workflows_export_workflow_json.py b/parsec/commands/workflows/cmd_workflows_export_workflow_json.py similarity index 100% rename from parsec/commands/cmd_workflows_export_workflow_json.py rename to parsec/commands/workflows/cmd_workflows_export_workflow_json.py diff --git a/parsec/commands/cmd_workflows_export_workflow_to_local_path.py b/parsec/commands/workflows/cmd_workflows_export_workflow_to_local_path.py similarity index 100% rename from parsec/commands/cmd_workflows_export_workflow_to_local_path.py rename to parsec/commands/workflows/cmd_workflows_export_workflow_to_local_path.py diff --git a/parsec/commands/cmd_workflows_get_workflow_inputs.py b/parsec/commands/workflows/cmd_workflows_get_workflow_inputs.py similarity index 100% rename from parsec/commands/cmd_workflows_get_workflow_inputs.py rename to parsec/commands/workflows/cmd_workflows_get_workflow_inputs.py diff --git a/parsec/commands/cmd_workflows_get_workflows.py b/parsec/commands/workflows/cmd_workflows_get_workflows.py similarity index 100% rename from parsec/commands/cmd_workflows_get_workflows.py rename to parsec/commands/workflows/cmd_workflows_get_workflows.py diff --git a/parsec/commands/cmd_workflows_import_shared_workflow.py b/parsec/commands/workflows/cmd_workflows_import_shared_workflow.py similarity index 100% rename from parsec/commands/cmd_workflows_import_shared_workflow.py rename to parsec/commands/workflows/cmd_workflows_import_shared_workflow.py diff --git a/parsec/commands/cmd_workflows_import_workflow_from_local_path.py b/parsec/commands/workflows/cmd_workflows_import_workflow_from_local_path.py similarity index 100% rename from parsec/commands/cmd_workflows_import_workflow_from_local_path.py rename to parsec/commands/workflows/cmd_workflows_import_workflow_from_local_path.py diff --git a/parsec/commands/cmd_workflows_import_workflow_json.py b/parsec/commands/workflows/cmd_workflows_import_workflow_json.py similarity index 100% rename from parsec/commands/cmd_workflows_import_workflow_json.py rename to parsec/commands/workflows/cmd_workflows_import_workflow_json.py diff --git a/parsec/commands/cmd_workflows_run_workflow.py b/parsec/commands/workflows/cmd_workflows_run_workflow.py similarity index 100% rename from parsec/commands/cmd_workflows_run_workflow.py rename to parsec/commands/workflows/cmd_workflows_run_workflow.py diff --git a/parsec/commands/cmd_workflows_show_workflow.py b/parsec/commands/workflows/cmd_workflows_show_workflow.py similarity index 100% rename from parsec/commands/cmd_workflows_show_workflow.py rename to parsec/commands/workflows/cmd_workflows_show_workflow.py From 338863fd08497da416964e66496f7ff3103249c0 Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Tue, 2 May 2017 17:23:44 +0000 Subject: [PATCH 04/80] Load the new style --- parsec/cli.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/parsec/cli.py b/parsec/cli.py index a8c20af..e860eac 100644 --- a/parsec/cli.py +++ b/parsec/cli.py @@ -54,7 +54,7 @@ def name_to_command(name): try: if sys.version_info[0] == 2: name = name.encode('ascii', 'replace') - mod_name = 'parsec.commands.cmd_' + name + mod_name = 'parsec.commands.config.cmd_' + name mod = __import__(mod_name, None, None, ['cli']) except ImportError as e: error("Problem loading command %s, exception %s" % (name, e)) @@ -83,7 +83,7 @@ def get_command(self, ctx, name): ) @pass_context def parsec(ctx, galaxy_instance, verbose): - """Utilities to assist with the development of Galaxy tools.""" + """Command line wrappers around BioBlend functions. While this sounds unexciting, with parsec and jq you can easily build powerful command line scripts.""" # We abuse this, knowing that calls to one will fail. try: ctx.gi = get_galaxy_instance(galaxy_instance) From b7465db50b38a55834568ddb6254565fe63b9a32 Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Tue, 2 May 2017 18:33:01 +0000 Subject: [PATCH 05/80] rework autobuilder --- scripts/autobuilder.py | 255 +++++++++++++++++++++-------------------- 1 file changed, 131 insertions(+), 124 deletions(-) diff --git a/scripts/autobuilder.py b/scripts/autobuilder.py index d888c3c..eefa2fa 100644 --- a/scripts/autobuilder.py +++ b/scripts/autobuilder.py @@ -19,6 +19,9 @@ 'make_get_request', 'make_post_request', 'make_put_request', + 'set_max_get_retries', + 'get_max_get_retries', + 'set_get_retry_delay', ] @@ -113,7 +116,10 @@ def recursive_attr_get(self, obj, section): if len(section) == 0: return obj elif len(section) == 1: - return getattr(obj, section[0]) + try: + return getattr(obj, section[0]) + except AttributeError: + pass else: return getattr(self.recursive_attr_get(obj, section[0:-1]), section[-1]) @@ -130,38 +136,16 @@ def important_doc(cls, docstring): else: return "Warning: Undocumented Method" - def identify_functions(self, module, path=None): - targets = [] - if path is None: - path = [] - - current_module = self.recursive_attr_get(module, path) - - # Filter out boring - current_module_attr = [x for x in dir(current_module) if not - self.boring(x) and not - self.is_galaxyinstance(self.recursive_attr_get(current_module,[x])) - and not '.'.join(path + [x]) in IGNORE_LIST - ] - # Filter out functions/classes - current_module_classes = [x for x in current_module_attr if self.is_class(self.recursive_attr_get(current_module, [x]))] - current_module_functions = [x for x in current_module_attr if self.is_function(self.recursive_attr_get(current_module, [x]))] - - # Add all functions as-is - targets += [path + [x] for x in current_module_functions if not self.boring(x)] - # Recursively add functions - targets += [self.identify_functions(module, path=[clsname]) for clsname in current_module_classes] - return targets - def flatten(self, x): # http://stackoverflow.com/a/577971 result = [] for el in x: if isinstance(el, list): - if isinstance(el[0], str): - result.append(el) - else: - result.extend(self.flatten(el)) + if len(el) > 0: + if isinstance(el[0], str): + result.append(el) + else: + result.extend(self.flatten(el)) else: result.append(el) return result @@ -174,7 +158,11 @@ def parameter_translation(cls, k): raise Exception("Unknown parameter type " + k) def pair_arguments(self, func): - argspec = inspect.getargspec(func) + try: + argspec = inspect.getargspec(func) + except TypeError as te: + log.debug(te) + return [] # Reverse, because args are paired from the end, removing self/cls args = argspec.args[::-1][0:-1] @@ -191,109 +179,128 @@ def pair_arguments(self, func): defaults.append(None) return zip(args[::-1], defaults[::-1]) - def orig(self, targets): - for target in targets: - log.debug('.'.join(target)) - func = self.recursive_attr_get(self.obj, target) - candidate = '.'.join(target) - - argdoc = func.__doc__ - - data = { - 'command_name': candidate.replace('.', '_'), - 'click_arguments': "", - 'click_options': "", - 'args_with_defaults': "ctx", - 'wrapped_method_args': "", - } - param_docs = {} - if argdoc is not None: - sections = [x for x in argdoc.split("\n\n")] - sections = [re.sub('\s+', ' ', x.strip()) for x in sections if x != ''] - paramre = re.compile(":type (?P[^:]+): (?P[^:]+) :param (?P[^:]+): (?P.+)") - for subsec in sections: - m = paramre.match(subsec) - if m: - assert m.group('param_name') == m.group('param_name2') - param_docs[m.group('param_name')] = {'type': m.group('param_type'), - 'desc': m.group('desc')} - - argspec = list(self.pair_arguments(func)) - # Ignore with only cls/self - if len(argspec) > 0: - method_signature = ['ctx'] - # Args and kwargs are separate, as args should come before kwargs - method_signature_args = [] - method_signature_kwargs = [] - method_exec_args = [] - method_exec_kwargs = [] - - for k, v in argspec: + def process(self): + for module in dir(bg): + if module[0] == '_' or module[0].upper() == module[0]: + continue + if module in ('client', ): + continue + + sm = getattr(bg, module) + submodules = dir(sm) + # Find the "...Client" + wanted = [x for x in submodules if 'Client' in x and x != 'Client'][0] + self.process_client(module, sm, wanted) + + def process_client(self, module, sm, ssm_name): + log.info("Processing bioblend.%s.%s", module, ssm_name) + ssm = getattr(sm, ssm_name) + for f in dir(ssm): + if f[0] == '_' or f[0].upper() == f[0]: + continue + if f in IGNORE_LIST or '%s.%s' % (ssm, f) in IGNORE_LIST: + continue + self.orig(module, sm, ssm, f) + # Write module config. + import sys; sys.exit() + + def orig(self, module_name, submodule, subsubmodule, function_name): + target = [module_name, function_name] + log.debug("Building %s", '.'.join(target)) + + func = getattr(subsubmodule, function_name) + candidate = '.'.join(target) + + argdoc = func.__doc__ + + data = { + 'command_name': candidate.replace('.', '_'), + 'click_arguments': "", + 'click_options': "", + 'args_with_defaults': "ctx", + 'wrapped_method_args': "", + } + param_docs = {} + if argdoc is not None: + sections = [x for x in argdoc.split("\n\n")] + sections = [re.sub('\s+', ' ', x.strip()) for x in sections if x != ''] + paramre = re.compile(":type (?P[^:]+): (?P[^:]+) :param (?P[^:]+): (?P.+)") + for subsec in sections: + m = paramre.match(subsec) + if m: + assert m.group('param_name') == m.group('param_name2') + param_docs[m.group('param_name')] = {'type': m.group('param_type'), + 'desc': m.group('desc')} + + argspec = list(self.pair_arguments(func)) + # Ignore with only cls/self + if len(argspec) > 0: + method_signature = ['ctx'] + # Args and kwargs are separate, as args should come before kwargs + method_signature_args = [] + method_signature_kwargs = [] + method_exec_args = [] + method_exec_kwargs = [] + + for k, v in argspec: + try: + param_type = self.parameter_translation(param_docs[k]['type']) + except Exception as e: + param_type = [] + print(candidate, e) + + # If v is not None, then it's a kwargs, otherwise an arg + if v is not None: + # Strings must be treated specially by removing their value + if isinstance(v, str): + v = '""' + + if v == []: + v = None + # All other instances of V are fine, e.g. boolean=False or int=1000 + + # Register twice as the method invocation uses v=k + method_signature_kwargs.append("%s=%s" % (k, v)) + method_exec_kwargs.append('%s=%s' % (k, k)) + + # TODO: refactor try: - param_type = self.parameter_translation(param_docs[k]['type']) - except Exception, e: - param_type = [] - print candidate, e - - # If v is not None, then it's a kwargs, otherwise an arg - if v is not None: - # Strings must be treated specially by removing their value - if isinstance(v, str): - v = '""' - - if v == []: - v = None - # All other instances of V are fine, e.g. boolean=False or int=1000 - - # Register twice as the method invocation uses v=k - method_signature_kwargs.append("%s=%s" % (k, v)) - method_exec_kwargs.append('%s=%s' % (k, k)) - - # TODO: refactor - try: - descstr = param_docs[k]['desc'] - except KeyError: - print "Error finding %s in %s" % (k, candidate) - print "" - descstr = None - data['click_options'] += self.__click_option(name=k, helpstr=descstr, ptype=param_type) - else: - # Args, not kwargs - method_signature_args.append(k) - method_exec_args.append(k) - data['click_arguments'] += self.__click_argument(name=k, ptype=param_type) + descstr = param_docs[k]['desc'] + except KeyError: + print("Error finding %s in %s" % (k, candidate)) + descstr = None + data['click_options'] += self.__click_option(name=k, helpstr=descstr, ptype=param_type) + else: + # Args, not kwargs + method_signature_args.append(k) + method_exec_args.append(k) + data['click_arguments'] += self.__click_argument(name=k, ptype=param_type) - # Complete args - data['args_with_defaults'] = ', '.join(method_signature + - method_signature_args + - method_signature_kwargs) - data['wrapped_method_args'] = ', '.join(method_exec_args + - method_exec_kwargs) + # Complete args + data['args_with_defaults'] = ', '.join(method_signature + + method_signature_args + + method_signature_kwargs) + data['wrapped_method_args'] = ', '.join(method_exec_args + + method_exec_kwargs) - # My function is more effective until can figure out docstring - data['short_docstring'] = self.important_doc(argdoc) - # Full method call - data['wrapped_method'] = 'ctx.gi.' + candidate + # My function is more effective until can figure out docstring + data['short_docstring'] = self.important_doc(argdoc) + # Full method call + data['wrapped_method'] = 'ctx.gi.' + candidate - # Generate a command name, prefix everything with auto_ to identify the - # automatically generated stuff - cmd_name = 'cmd_%s.py' % candidate.replace('.', '_') - cmd_path = os.path.join('parsec', 'commands', cmd_name) + # Generate a command name, prefix everything with auto_ to identify the + # automatically generated stuff + cmd_name = 'cmd_%s.py' % candidate.replace('.', '_') + cmd_path = os.path.join('parsec', 'commands', module_name, cmd_name) - # Save file - with open(cmd_path, 'w') as handle: - handle.write(self.template('click', data)) + # Save file + print("Writing %s" % cmd_path) + with open(cmd_path, 'w') as handle: + handle.write(self.template('click', data)) if __name__ == '__main__': z = ScriptBuilder() parser = argparse.ArgumentParser(description='process bioblend into CLI tools') - parser.add_argument('path', nargs='*', help='module path for the initial bioblend object') - args = parser.parse_args() - if len(args.path) == 0: - targets = z.flatten(z.identify_functions(z.obj)) - else: - targets = [x.split('.') for x in args.path] - - z.orig(targets) + z.process() From f721edb21ecf4feadfd8160699345c06f2da9f65 Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Tue, 2 May 2017 18:41:28 +0000 Subject: [PATCH 06/80] Seems to be workin! --- parsec/commands/cmd_config.py | 7 ++--- ...cmd_config_get_config.py => get_config.py} | 4 ++- scripts/autobuilder.py | 29 +++++++++++++++---- 3 files changed, 29 insertions(+), 11 deletions(-) rename parsec/commands/config/{cmd_config_get_config.py => get_config.py} (67%) diff --git a/parsec/commands/cmd_config.py b/parsec/commands/cmd_config.py index a0d827f..46dca4c 100644 --- a/parsec/commands/cmd_config.py +++ b/parsec/commands/cmd_config.py @@ -1,9 +1,8 @@ import click -from parsec.commands.config.cmd_config_get_config import cli as ccgc - +from parsec.commands.config.get_config import cli as func0 @click.group() def cli(): - pass + pass -cli.add_command(ccgc) +cli.add_command(func0) diff --git a/parsec/commands/config/cmd_config_get_config.py b/parsec/commands/config/get_config.py similarity index 67% rename from parsec/commands/config/cmd_config_get_config.py rename to parsec/commands/config/get_config.py index 114bc35..edadfe0 100644 --- a/parsec/commands/config/cmd_config_get_config.py +++ b/parsec/commands/config/get_config.py @@ -4,10 +4,12 @@ from parsec.decorators import bioblend_exception, dict_output @click.command('get_config') + + @pass_context @bioblend_exception @dict_output def cli(ctx): - """Get a list of attributes about galaxy instance. More attributes will be present if user is an admin + """Get a list of attributes about the Galaxy instance. More attributes will be present if the user is an admin. """ return ctx.gi.config.get_config() diff --git a/scripts/autobuilder.py b/scripts/autobuilder.py index eefa2fa..53ef262 100644 --- a/scripts/autobuilder.py +++ b/scripts/autobuilder.py @@ -22,6 +22,9 @@ 'set_max_get_retries', 'get_max_get_retries', 'set_get_retry_delay', + 'get_retry_delay', + 'set_retry_delay', + 'max_get_retries', ] @@ -195,14 +198,28 @@ def process(self): def process_client(self, module, sm, ssm_name): log.info("Processing bioblend.%s.%s", module, ssm_name) ssm = getattr(sm, ssm_name) + wrote_modules = [] for f in dir(ssm): if f[0] == '_' or f[0].upper() == f[0]: continue if f in IGNORE_LIST or '%s.%s' % (ssm, f) in IGNORE_LIST: continue - self.orig(module, sm, ssm, f) - # Write module config. - import sys; sys.exit() + wrote_modules.append(self.orig(module, sm, ssm, f)) + # Write module __init__ + with open(os.path.join('parsec', 'commands', module, '__init__.py'), 'w') as handle: + pass + + with open(os.path.join('parsec', 'commands', 'cmd_%s.py' % module), 'w') as handle: + handle.write('import click\n') + # for function: + for idx, (module, func) in enumerate(wrote_modules): + handle.write('from parsec.commands.%s.%s import cli as func%s\n' % (module, func, idx)) + + handle.write('\n@click.group()\n') + handle.write('def cli():\n') + handle.write('\tpass\n\n') + for i in range(len(wrote_modules)): + handle.write('cli.add_command(func%d)\n' % i) def orig(self, module_name, submodule, subsubmodule, function_name): target = [module_name, function_name] @@ -214,7 +231,7 @@ def orig(self, module_name, submodule, subsubmodule, function_name): argdoc = func.__doc__ data = { - 'command_name': candidate.replace('.', '_'), + 'command_name': function_name, 'click_arguments': "", 'click_options': "", 'args_with_defaults': "ctx", @@ -292,13 +309,13 @@ def orig(self, module_name, submodule, subsubmodule, function_name): # Generate a command name, prefix everything with auto_ to identify the # automatically generated stuff - cmd_name = 'cmd_%s.py' % candidate.replace('.', '_') + cmd_name = '%s.py' % function_name cmd_path = os.path.join('parsec', 'commands', module_name, cmd_name) # Save file - print("Writing %s" % cmd_path) with open(cmd_path, 'w') as handle: handle.write(self.template('click', data)) + return [module_name, function_name] if __name__ == '__main__': z = ScriptBuilder() From 13ec4681f08c6e77f67ce17803ab7adcf2f56933 Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Tue, 2 May 2017 18:41:48 +0000 Subject: [PATCH 07/80] Rename --- parsec/commands/config/init.py | 58 ++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 parsec/commands/config/init.py diff --git a/parsec/commands/config/init.py b/parsec/commands/config/init.py new file mode 100644 index 0000000..2af61c1 --- /dev/null +++ b/parsec/commands/config/init.py @@ -0,0 +1,58 @@ +import os + +import click + +from parsec.cli import pass_context +from parsec import config +from parsec.io import warn, info + +CONFIG_TEMPLATE = """## Parsec Global Configuration File. +# Each stanza should contian a single galaxy server to control. +# +# You can set the key __default to the name of a default instance +# __default: local + +local: + key: "%(key)s" + email: "" + password: "" + url: "%(url)s" + admin: %(admin)s +""" + +SUCCESS_MESSAGE = ( + "Wrote configuration template to %s, " + "please open with editor and fill out." +) + + +@click.command("config_init") +@click.option( + '--url', + help="URL to galaxy server", +) +@click.option( + '--api_key', + help="API key for galaxy server", +) +@click.option( + '--admin', + is_flag=True, + help="This API key is an admin/master API key", +) +@pass_context +def cli(ctx, url=None, api_key=None, admin=False, **kwds): + """Help initialize global configuration (in home directory) + """ + # TODO: prompt for values someday. + config_path = config.global_config_path() + if os.path.exists(config_path): + warn("File %s already exists, exiting." % config_path) + return -1 + with open(config_path, "w") as f: + f.write( + CONFIG_TEMPLATE % { + 'key': '' if api_key is None else api_key, + 'url': '' if url is None else url, + 'admin': admin}) + info(SUCCESS_MESSAGE % config_path) From df5fdb1fb8abc770c799565d3b504a66df927545 Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Tue, 2 May 2017 18:47:00 +0000 Subject: [PATCH 08/80] Many renames --- .../{cmd_datasets_download_dataset.py => download_dataset.py} | 0 .../datasets/{cmd_datasets_show_dataset.py => show_dataset.py} | 0 .../datasets/{cmd_datasets_show_stderr.py => show_stderr.py} | 0 .../datasets/{cmd_datasets_show_stdout.py => show_stdout.py} | 0 .../{cmd_datatypes_get_datatypes.py => get_datatypes.py} | 0 .../datatypes/{cmd_datatypes_get_sniffers.py => get_sniffers.py} | 0 .../folders/{cmd_folders_delete_folder.py => delete_folder.py} | 0 .../folders/{cmd_folders_show_folder.py => show_folder.py} | 0 .../commands/forms/{cmd_forms_create_form.py => create_form.py} | 0 parsec/commands/forms/{cmd_forms_get_forms.py => get_forms.py} | 0 parsec/commands/forms/{cmd_forms_show_form.py => show_form.py} | 0 .../ftpfiles/{cmd_ftpfiles_get_ftp_files.py => get_ftp_files.py} | 0 .../genomes/{cmd_genomes_get_genomes.py => get_genomes.py} | 0 .../genomes/{cmd_genomes_install_genome.py => install_genome.py} | 0 .../genomes/{cmd_genomes_show_genome.py => show_genome.py} | 0 .../groups/{cmd_groups_create_group.py => create_group.py} | 0 .../commands/groups/{cmd_groups_get_groups.py => get_groups.py} | 0 .../commands/groups/{cmd_groups_show_group.py => show_group.py} | 0 ..._create_dataset_collection.py => create_dataset_collection.py} | 0 .../{cmd_histories_create_history.py => create_history.py} | 0 ...{cmd_histories_create_history_tag.py => create_history_tag.py} | 0 .../{cmd_histories_delete_dataset.py => delete_dataset.py} | 0 ..._delete_dataset_collection.py => delete_dataset_collection.py} | 0 .../{cmd_histories_delete_history.py => delete_history.py} | 0 .../{cmd_histories_download_history.py => download_history.py} | 0 .../{cmd_histories_export_history.py => export_history.py} | 0 .../{cmd_histories_get_histories.py => get_histories.py} | 0 ...recently_used_history.py => get_most_recently_used_history.py} | 0 .../histories/{cmd_histories_get_status.py => get_status.py} | 0 .../histories/{cmd_histories_show_dataset.py => show_dataset.py} | 0 ...ries_show_dataset_collection.py => show_dataset_collection.py} | 0 ...ries_show_dataset_provenance.py => show_dataset_provenance.py} | 0 .../histories/{cmd_histories_show_history.py => show_history.py} | 0 ...tories_show_matching_datasets.py => show_matching_datasets.py} | 0 .../{cmd_histories_undelete_history.py => undelete_history.py} | 0 .../{cmd_histories_update_dataset.py => update_dataset.py} | 0 ..._update_dataset_collection.py => update_dataset_collection.py} | 0 .../{cmd_histories_update_history.py => update_history.py} | 0 ...oad_dataset_from_library.py => upload_dataset_from_library.py} | 0 parsec/commands/jobs/{cmd_jobs_get_jobs.py => get_jobs.py} | 0 parsec/commands/jobs/{cmd_jobs_get_state.py => get_state.py} | 0 parsec/commands/jobs/{cmd_jobs_search_jobs.py => search_jobs.py} | 0 parsec/commands/jobs/{cmd_jobs_show_job.py => show_job.py} | 0 .../{cmd_libraries_copy_from_dataset.py => copy_from_dataset.py} | 0 .../{cmd_libraries_create_folder.py => create_folder.py} | 0 .../{cmd_libraries_create_library.py => create_library.py} | 0 .../{cmd_libraries_delete_library.py => delete_library.py} | 0 ...raries_delete_library_dataset.py => delete_library_dataset.py} | 0 .../libraries/{cmd_libraries_get_folders.py => get_folders.py} | 0 .../{cmd_libraries_get_libraries.py => get_libraries.py} | 0 ...ries_set_library_permissions.py => set_library_permissions.py} | 0 .../libraries/{cmd_libraries_show_dataset.py => show_dataset.py} | 0 .../libraries/{cmd_libraries_show_folder.py => show_folder.py} | 0 .../libraries/{cmd_libraries_show_library.py => show_library.py} | 0 ..._libraries_upload_file_contents.py => upload_file_contents.py} | 0 ...oad_file_from_local_path.py => upload_file_from_local_path.py} | 0 ...ries_upload_file_from_server.py => upload_file_from_server.py} | 0 ..._libraries_upload_file_from_url.py => upload_file_from_url.py} | 0 ...from_galaxy_filesystem.py => upload_from_galaxy_filesystem.py} | 0 .../commands/quotas/{cmd_quotas_get_quotas.py => get_quotas.py} | 0 .../commands/quotas/{cmd_quotas_show_quota.py => show_quota.py} | 0 parsec/commands/roles/{cmd_roles_get_roles.py => get_roles.py} | 0 parsec/commands/roles/{cmd_roles_show_role.py => show_role.py} | 0 ...d_tool_data_delete_data_table.py => data_delete_data_table.py} | 0 .../{cmd_tool_data_get_data_tables.py => data_get_data_tables.py} | 0 .../{cmd_tool_data_show_data_table.py => data_show_data_table.py} | 0 .../{cmd_toolShed_get_repositories.py => get_repositories.py} | 0 ...tall_repository_revision.py => install_repository_revision.py} | 0 .../{cmd_toolShed_show_repository.py => show_repository.py} | 0 .../tools/{cmd_tools_get_tool_panel.py => get_tool_panel.py} | 0 parsec/commands/tools/{cmd_tools_get_tools.py => get_tools.py} | 0 .../tools/{cmd_tools_paste_content.py => paste_content.py} | 0 parsec/commands/tools/{cmd_tools_put_url.py => put_url.py} | 0 parsec/commands/tools/{cmd_tools_run_tool.py => run_tool.py} | 0 parsec/commands/tools/{cmd_tools_show_tool.py => show_tool.py} | 0 .../commands/tools/{cmd_tools_upload_file.py => upload_file.py} | 0 .../{cmd_users_create_local_user.py => create_local_user.py} | 0 .../{cmd_users_create_remote_user.py => create_remote_user.py} | 0 .../commands/users/{cmd_users_create_user.py => create_user.py} | 0 .../{cmd_users_create_user_apikey.py => create_user_apikey.py} | 0 .../users/{cmd_users_get_current_user.py => get_current_user.py} | 0 parsec/commands/users/{cmd_users_get_users.py => get_users.py} | 0 parsec/commands/users/{cmd_users_show_user.py => show_user.py} | 0 .../{cmd_visual_get_visualizations.py => get_visualizations.py} | 0 .../{cmd_visual_show_visualization.py => show_visualization.py} | 0 .../{cmd_workflows_delete_workflow.py => delete_workflow.py} | 0 ..._workflows_export_workflow_json.py => export_workflow_json.py} | 0 ...workflow_to_local_path.py => export_workflow_to_local_path.py} | 0 ...md_workflows_get_workflow_inputs.py => get_workflow_inputs.py} | 0 .../{cmd_workflows_get_workflows.py => get_workflows.py} | 0 ...kflows_import_shared_workflow.py => import_shared_workflow.py} | 0 ...flow_from_local_path.py => import_workflow_from_local_path.py} | 0 ..._workflows_import_workflow_json.py => import_workflow_json.py} | 0 .../workflows/{cmd_workflows_run_workflow.py => run_workflow.py} | 0 .../{cmd_workflows_show_workflow.py => show_workflow.py} | 0 95 files changed, 0 insertions(+), 0 deletions(-) rename parsec/commands/datasets/{cmd_datasets_download_dataset.py => download_dataset.py} (100%) rename parsec/commands/datasets/{cmd_datasets_show_dataset.py => show_dataset.py} (100%) rename parsec/commands/datasets/{cmd_datasets_show_stderr.py => show_stderr.py} (100%) rename parsec/commands/datasets/{cmd_datasets_show_stdout.py => show_stdout.py} (100%) rename parsec/commands/datatypes/{cmd_datatypes_get_datatypes.py => get_datatypes.py} (100%) rename parsec/commands/datatypes/{cmd_datatypes_get_sniffers.py => get_sniffers.py} (100%) rename parsec/commands/folders/{cmd_folders_delete_folder.py => delete_folder.py} (100%) rename parsec/commands/folders/{cmd_folders_show_folder.py => show_folder.py} (100%) rename parsec/commands/forms/{cmd_forms_create_form.py => create_form.py} (100%) rename parsec/commands/forms/{cmd_forms_get_forms.py => get_forms.py} (100%) rename parsec/commands/forms/{cmd_forms_show_form.py => show_form.py} (100%) rename parsec/commands/ftpfiles/{cmd_ftpfiles_get_ftp_files.py => get_ftp_files.py} (100%) rename parsec/commands/genomes/{cmd_genomes_get_genomes.py => get_genomes.py} (100%) rename parsec/commands/genomes/{cmd_genomes_install_genome.py => install_genome.py} (100%) rename parsec/commands/genomes/{cmd_genomes_show_genome.py => show_genome.py} (100%) rename parsec/commands/groups/{cmd_groups_create_group.py => create_group.py} (100%) rename parsec/commands/groups/{cmd_groups_get_groups.py => get_groups.py} (100%) rename parsec/commands/groups/{cmd_groups_show_group.py => show_group.py} (100%) rename parsec/commands/histories/{cmd_histories_create_dataset_collection.py => create_dataset_collection.py} (100%) rename parsec/commands/histories/{cmd_histories_create_history.py => create_history.py} (100%) rename parsec/commands/histories/{cmd_histories_create_history_tag.py => create_history_tag.py} (100%) rename parsec/commands/histories/{cmd_histories_delete_dataset.py => delete_dataset.py} (100%) rename parsec/commands/histories/{cmd_histories_delete_dataset_collection.py => delete_dataset_collection.py} (100%) rename parsec/commands/histories/{cmd_histories_delete_history.py => delete_history.py} (100%) rename parsec/commands/histories/{cmd_histories_download_history.py => download_history.py} (100%) rename parsec/commands/histories/{cmd_histories_export_history.py => export_history.py} (100%) rename parsec/commands/histories/{cmd_histories_get_histories.py => get_histories.py} (100%) rename parsec/commands/histories/{cmd_histories_get_most_recently_used_history.py => get_most_recently_used_history.py} (100%) rename parsec/commands/histories/{cmd_histories_get_status.py => get_status.py} (100%) rename parsec/commands/histories/{cmd_histories_show_dataset.py => show_dataset.py} (100%) rename parsec/commands/histories/{cmd_histories_show_dataset_collection.py => show_dataset_collection.py} (100%) rename parsec/commands/histories/{cmd_histories_show_dataset_provenance.py => show_dataset_provenance.py} (100%) rename parsec/commands/histories/{cmd_histories_show_history.py => show_history.py} (100%) rename parsec/commands/histories/{cmd_histories_show_matching_datasets.py => show_matching_datasets.py} (100%) rename parsec/commands/histories/{cmd_histories_undelete_history.py => undelete_history.py} (100%) rename parsec/commands/histories/{cmd_histories_update_dataset.py => update_dataset.py} (100%) rename parsec/commands/histories/{cmd_histories_update_dataset_collection.py => update_dataset_collection.py} (100%) rename parsec/commands/histories/{cmd_histories_update_history.py => update_history.py} (100%) rename parsec/commands/histories/{cmd_histories_upload_dataset_from_library.py => upload_dataset_from_library.py} (100%) rename parsec/commands/jobs/{cmd_jobs_get_jobs.py => get_jobs.py} (100%) rename parsec/commands/jobs/{cmd_jobs_get_state.py => get_state.py} (100%) rename parsec/commands/jobs/{cmd_jobs_search_jobs.py => search_jobs.py} (100%) rename parsec/commands/jobs/{cmd_jobs_show_job.py => show_job.py} (100%) rename parsec/commands/libraries/{cmd_libraries_copy_from_dataset.py => copy_from_dataset.py} (100%) rename parsec/commands/libraries/{cmd_libraries_create_folder.py => create_folder.py} (100%) rename parsec/commands/libraries/{cmd_libraries_create_library.py => create_library.py} (100%) rename parsec/commands/libraries/{cmd_libraries_delete_library.py => delete_library.py} (100%) rename parsec/commands/libraries/{cmd_libraries_delete_library_dataset.py => delete_library_dataset.py} (100%) rename parsec/commands/libraries/{cmd_libraries_get_folders.py => get_folders.py} (100%) rename parsec/commands/libraries/{cmd_libraries_get_libraries.py => get_libraries.py} (100%) rename parsec/commands/libraries/{cmd_libraries_set_library_permissions.py => set_library_permissions.py} (100%) rename parsec/commands/libraries/{cmd_libraries_show_dataset.py => show_dataset.py} (100%) rename parsec/commands/libraries/{cmd_libraries_show_folder.py => show_folder.py} (100%) rename parsec/commands/libraries/{cmd_libraries_show_library.py => show_library.py} (100%) rename parsec/commands/libraries/{cmd_libraries_upload_file_contents.py => upload_file_contents.py} (100%) rename parsec/commands/libraries/{cmd_libraries_upload_file_from_local_path.py => upload_file_from_local_path.py} (100%) rename parsec/commands/libraries/{cmd_libraries_upload_file_from_server.py => upload_file_from_server.py} (100%) rename parsec/commands/libraries/{cmd_libraries_upload_file_from_url.py => upload_file_from_url.py} (100%) rename parsec/commands/libraries/{cmd_libraries_upload_from_galaxy_filesystem.py => upload_from_galaxy_filesystem.py} (100%) rename parsec/commands/quotas/{cmd_quotas_get_quotas.py => get_quotas.py} (100%) rename parsec/commands/quotas/{cmd_quotas_show_quota.py => show_quota.py} (100%) rename parsec/commands/roles/{cmd_roles_get_roles.py => get_roles.py} (100%) rename parsec/commands/roles/{cmd_roles_show_role.py => show_role.py} (100%) rename parsec/commands/tool/{cmd_tool_data_delete_data_table.py => data_delete_data_table.py} (100%) rename parsec/commands/tool/{cmd_tool_data_get_data_tables.py => data_get_data_tables.py} (100%) rename parsec/commands/tool/{cmd_tool_data_show_data_table.py => data_show_data_table.py} (100%) rename parsec/commands/toolShed/{cmd_toolShed_get_repositories.py => get_repositories.py} (100%) rename parsec/commands/toolShed/{cmd_toolShed_install_repository_revision.py => install_repository_revision.py} (100%) rename parsec/commands/toolShed/{cmd_toolShed_show_repository.py => show_repository.py} (100%) rename parsec/commands/tools/{cmd_tools_get_tool_panel.py => get_tool_panel.py} (100%) rename parsec/commands/tools/{cmd_tools_get_tools.py => get_tools.py} (100%) rename parsec/commands/tools/{cmd_tools_paste_content.py => paste_content.py} (100%) rename parsec/commands/tools/{cmd_tools_put_url.py => put_url.py} (100%) rename parsec/commands/tools/{cmd_tools_run_tool.py => run_tool.py} (100%) rename parsec/commands/tools/{cmd_tools_show_tool.py => show_tool.py} (100%) rename parsec/commands/tools/{cmd_tools_upload_file.py => upload_file.py} (100%) rename parsec/commands/users/{cmd_users_create_local_user.py => create_local_user.py} (100%) rename parsec/commands/users/{cmd_users_create_remote_user.py => create_remote_user.py} (100%) rename parsec/commands/users/{cmd_users_create_user.py => create_user.py} (100%) rename parsec/commands/users/{cmd_users_create_user_apikey.py => create_user_apikey.py} (100%) rename parsec/commands/users/{cmd_users_get_current_user.py => get_current_user.py} (100%) rename parsec/commands/users/{cmd_users_get_users.py => get_users.py} (100%) rename parsec/commands/users/{cmd_users_show_user.py => show_user.py} (100%) rename parsec/commands/visual/{cmd_visual_get_visualizations.py => get_visualizations.py} (100%) rename parsec/commands/visual/{cmd_visual_show_visualization.py => show_visualization.py} (100%) rename parsec/commands/workflows/{cmd_workflows_delete_workflow.py => delete_workflow.py} (100%) rename parsec/commands/workflows/{cmd_workflows_export_workflow_json.py => export_workflow_json.py} (100%) rename parsec/commands/workflows/{cmd_workflows_export_workflow_to_local_path.py => export_workflow_to_local_path.py} (100%) rename parsec/commands/workflows/{cmd_workflows_get_workflow_inputs.py => get_workflow_inputs.py} (100%) rename parsec/commands/workflows/{cmd_workflows_get_workflows.py => get_workflows.py} (100%) rename parsec/commands/workflows/{cmd_workflows_import_shared_workflow.py => import_shared_workflow.py} (100%) rename parsec/commands/workflows/{cmd_workflows_import_workflow_from_local_path.py => import_workflow_from_local_path.py} (100%) rename parsec/commands/workflows/{cmd_workflows_import_workflow_json.py => import_workflow_json.py} (100%) rename parsec/commands/workflows/{cmd_workflows_run_workflow.py => run_workflow.py} (100%) rename parsec/commands/workflows/{cmd_workflows_show_workflow.py => show_workflow.py} (100%) diff --git a/parsec/commands/datasets/cmd_datasets_download_dataset.py b/parsec/commands/datasets/download_dataset.py similarity index 100% rename from parsec/commands/datasets/cmd_datasets_download_dataset.py rename to parsec/commands/datasets/download_dataset.py diff --git a/parsec/commands/datasets/cmd_datasets_show_dataset.py b/parsec/commands/datasets/show_dataset.py similarity index 100% rename from parsec/commands/datasets/cmd_datasets_show_dataset.py rename to parsec/commands/datasets/show_dataset.py diff --git a/parsec/commands/datasets/cmd_datasets_show_stderr.py b/parsec/commands/datasets/show_stderr.py similarity index 100% rename from parsec/commands/datasets/cmd_datasets_show_stderr.py rename to parsec/commands/datasets/show_stderr.py diff --git a/parsec/commands/datasets/cmd_datasets_show_stdout.py b/parsec/commands/datasets/show_stdout.py similarity index 100% rename from parsec/commands/datasets/cmd_datasets_show_stdout.py rename to parsec/commands/datasets/show_stdout.py diff --git a/parsec/commands/datatypes/cmd_datatypes_get_datatypes.py b/parsec/commands/datatypes/get_datatypes.py similarity index 100% rename from parsec/commands/datatypes/cmd_datatypes_get_datatypes.py rename to parsec/commands/datatypes/get_datatypes.py diff --git a/parsec/commands/datatypes/cmd_datatypes_get_sniffers.py b/parsec/commands/datatypes/get_sniffers.py similarity index 100% rename from parsec/commands/datatypes/cmd_datatypes_get_sniffers.py rename to parsec/commands/datatypes/get_sniffers.py diff --git a/parsec/commands/folders/cmd_folders_delete_folder.py b/parsec/commands/folders/delete_folder.py similarity index 100% rename from parsec/commands/folders/cmd_folders_delete_folder.py rename to parsec/commands/folders/delete_folder.py diff --git a/parsec/commands/folders/cmd_folders_show_folder.py b/parsec/commands/folders/show_folder.py similarity index 100% rename from parsec/commands/folders/cmd_folders_show_folder.py rename to parsec/commands/folders/show_folder.py diff --git a/parsec/commands/forms/cmd_forms_create_form.py b/parsec/commands/forms/create_form.py similarity index 100% rename from parsec/commands/forms/cmd_forms_create_form.py rename to parsec/commands/forms/create_form.py diff --git a/parsec/commands/forms/cmd_forms_get_forms.py b/parsec/commands/forms/get_forms.py similarity index 100% rename from parsec/commands/forms/cmd_forms_get_forms.py rename to parsec/commands/forms/get_forms.py diff --git a/parsec/commands/forms/cmd_forms_show_form.py b/parsec/commands/forms/show_form.py similarity index 100% rename from parsec/commands/forms/cmd_forms_show_form.py rename to parsec/commands/forms/show_form.py diff --git a/parsec/commands/ftpfiles/cmd_ftpfiles_get_ftp_files.py b/parsec/commands/ftpfiles/get_ftp_files.py similarity index 100% rename from parsec/commands/ftpfiles/cmd_ftpfiles_get_ftp_files.py rename to parsec/commands/ftpfiles/get_ftp_files.py diff --git a/parsec/commands/genomes/cmd_genomes_get_genomes.py b/parsec/commands/genomes/get_genomes.py similarity index 100% rename from parsec/commands/genomes/cmd_genomes_get_genomes.py rename to parsec/commands/genomes/get_genomes.py diff --git a/parsec/commands/genomes/cmd_genomes_install_genome.py b/parsec/commands/genomes/install_genome.py similarity index 100% rename from parsec/commands/genomes/cmd_genomes_install_genome.py rename to parsec/commands/genomes/install_genome.py diff --git a/parsec/commands/genomes/cmd_genomes_show_genome.py b/parsec/commands/genomes/show_genome.py similarity index 100% rename from parsec/commands/genomes/cmd_genomes_show_genome.py rename to parsec/commands/genomes/show_genome.py diff --git a/parsec/commands/groups/cmd_groups_create_group.py b/parsec/commands/groups/create_group.py similarity index 100% rename from parsec/commands/groups/cmd_groups_create_group.py rename to parsec/commands/groups/create_group.py diff --git a/parsec/commands/groups/cmd_groups_get_groups.py b/parsec/commands/groups/get_groups.py similarity index 100% rename from parsec/commands/groups/cmd_groups_get_groups.py rename to parsec/commands/groups/get_groups.py diff --git a/parsec/commands/groups/cmd_groups_show_group.py b/parsec/commands/groups/show_group.py similarity index 100% rename from parsec/commands/groups/cmd_groups_show_group.py rename to parsec/commands/groups/show_group.py diff --git a/parsec/commands/histories/cmd_histories_create_dataset_collection.py b/parsec/commands/histories/create_dataset_collection.py similarity index 100% rename from parsec/commands/histories/cmd_histories_create_dataset_collection.py rename to parsec/commands/histories/create_dataset_collection.py diff --git a/parsec/commands/histories/cmd_histories_create_history.py b/parsec/commands/histories/create_history.py similarity index 100% rename from parsec/commands/histories/cmd_histories_create_history.py rename to parsec/commands/histories/create_history.py diff --git a/parsec/commands/histories/cmd_histories_create_history_tag.py b/parsec/commands/histories/create_history_tag.py similarity index 100% rename from parsec/commands/histories/cmd_histories_create_history_tag.py rename to parsec/commands/histories/create_history_tag.py diff --git a/parsec/commands/histories/cmd_histories_delete_dataset.py b/parsec/commands/histories/delete_dataset.py similarity index 100% rename from parsec/commands/histories/cmd_histories_delete_dataset.py rename to parsec/commands/histories/delete_dataset.py diff --git a/parsec/commands/histories/cmd_histories_delete_dataset_collection.py b/parsec/commands/histories/delete_dataset_collection.py similarity index 100% rename from parsec/commands/histories/cmd_histories_delete_dataset_collection.py rename to parsec/commands/histories/delete_dataset_collection.py diff --git a/parsec/commands/histories/cmd_histories_delete_history.py b/parsec/commands/histories/delete_history.py similarity index 100% rename from parsec/commands/histories/cmd_histories_delete_history.py rename to parsec/commands/histories/delete_history.py diff --git a/parsec/commands/histories/cmd_histories_download_history.py b/parsec/commands/histories/download_history.py similarity index 100% rename from parsec/commands/histories/cmd_histories_download_history.py rename to parsec/commands/histories/download_history.py diff --git a/parsec/commands/histories/cmd_histories_export_history.py b/parsec/commands/histories/export_history.py similarity index 100% rename from parsec/commands/histories/cmd_histories_export_history.py rename to parsec/commands/histories/export_history.py diff --git a/parsec/commands/histories/cmd_histories_get_histories.py b/parsec/commands/histories/get_histories.py similarity index 100% rename from parsec/commands/histories/cmd_histories_get_histories.py rename to parsec/commands/histories/get_histories.py diff --git a/parsec/commands/histories/cmd_histories_get_most_recently_used_history.py b/parsec/commands/histories/get_most_recently_used_history.py similarity index 100% rename from parsec/commands/histories/cmd_histories_get_most_recently_used_history.py rename to parsec/commands/histories/get_most_recently_used_history.py diff --git a/parsec/commands/histories/cmd_histories_get_status.py b/parsec/commands/histories/get_status.py similarity index 100% rename from parsec/commands/histories/cmd_histories_get_status.py rename to parsec/commands/histories/get_status.py diff --git a/parsec/commands/histories/cmd_histories_show_dataset.py b/parsec/commands/histories/show_dataset.py similarity index 100% rename from parsec/commands/histories/cmd_histories_show_dataset.py rename to parsec/commands/histories/show_dataset.py diff --git a/parsec/commands/histories/cmd_histories_show_dataset_collection.py b/parsec/commands/histories/show_dataset_collection.py similarity index 100% rename from parsec/commands/histories/cmd_histories_show_dataset_collection.py rename to parsec/commands/histories/show_dataset_collection.py diff --git a/parsec/commands/histories/cmd_histories_show_dataset_provenance.py b/parsec/commands/histories/show_dataset_provenance.py similarity index 100% rename from parsec/commands/histories/cmd_histories_show_dataset_provenance.py rename to parsec/commands/histories/show_dataset_provenance.py diff --git a/parsec/commands/histories/cmd_histories_show_history.py b/parsec/commands/histories/show_history.py similarity index 100% rename from parsec/commands/histories/cmd_histories_show_history.py rename to parsec/commands/histories/show_history.py diff --git a/parsec/commands/histories/cmd_histories_show_matching_datasets.py b/parsec/commands/histories/show_matching_datasets.py similarity index 100% rename from parsec/commands/histories/cmd_histories_show_matching_datasets.py rename to parsec/commands/histories/show_matching_datasets.py diff --git a/parsec/commands/histories/cmd_histories_undelete_history.py b/parsec/commands/histories/undelete_history.py similarity index 100% rename from parsec/commands/histories/cmd_histories_undelete_history.py rename to parsec/commands/histories/undelete_history.py diff --git a/parsec/commands/histories/cmd_histories_update_dataset.py b/parsec/commands/histories/update_dataset.py similarity index 100% rename from parsec/commands/histories/cmd_histories_update_dataset.py rename to parsec/commands/histories/update_dataset.py diff --git a/parsec/commands/histories/cmd_histories_update_dataset_collection.py b/parsec/commands/histories/update_dataset_collection.py similarity index 100% rename from parsec/commands/histories/cmd_histories_update_dataset_collection.py rename to parsec/commands/histories/update_dataset_collection.py diff --git a/parsec/commands/histories/cmd_histories_update_history.py b/parsec/commands/histories/update_history.py similarity index 100% rename from parsec/commands/histories/cmd_histories_update_history.py rename to parsec/commands/histories/update_history.py diff --git a/parsec/commands/histories/cmd_histories_upload_dataset_from_library.py b/parsec/commands/histories/upload_dataset_from_library.py similarity index 100% rename from parsec/commands/histories/cmd_histories_upload_dataset_from_library.py rename to parsec/commands/histories/upload_dataset_from_library.py diff --git a/parsec/commands/jobs/cmd_jobs_get_jobs.py b/parsec/commands/jobs/get_jobs.py similarity index 100% rename from parsec/commands/jobs/cmd_jobs_get_jobs.py rename to parsec/commands/jobs/get_jobs.py diff --git a/parsec/commands/jobs/cmd_jobs_get_state.py b/parsec/commands/jobs/get_state.py similarity index 100% rename from parsec/commands/jobs/cmd_jobs_get_state.py rename to parsec/commands/jobs/get_state.py diff --git a/parsec/commands/jobs/cmd_jobs_search_jobs.py b/parsec/commands/jobs/search_jobs.py similarity index 100% rename from parsec/commands/jobs/cmd_jobs_search_jobs.py rename to parsec/commands/jobs/search_jobs.py diff --git a/parsec/commands/jobs/cmd_jobs_show_job.py b/parsec/commands/jobs/show_job.py similarity index 100% rename from parsec/commands/jobs/cmd_jobs_show_job.py rename to parsec/commands/jobs/show_job.py diff --git a/parsec/commands/libraries/cmd_libraries_copy_from_dataset.py b/parsec/commands/libraries/copy_from_dataset.py similarity index 100% rename from parsec/commands/libraries/cmd_libraries_copy_from_dataset.py rename to parsec/commands/libraries/copy_from_dataset.py diff --git a/parsec/commands/libraries/cmd_libraries_create_folder.py b/parsec/commands/libraries/create_folder.py similarity index 100% rename from parsec/commands/libraries/cmd_libraries_create_folder.py rename to parsec/commands/libraries/create_folder.py diff --git a/parsec/commands/libraries/cmd_libraries_create_library.py b/parsec/commands/libraries/create_library.py similarity index 100% rename from parsec/commands/libraries/cmd_libraries_create_library.py rename to parsec/commands/libraries/create_library.py diff --git a/parsec/commands/libraries/cmd_libraries_delete_library.py b/parsec/commands/libraries/delete_library.py similarity index 100% rename from parsec/commands/libraries/cmd_libraries_delete_library.py rename to parsec/commands/libraries/delete_library.py diff --git a/parsec/commands/libraries/cmd_libraries_delete_library_dataset.py b/parsec/commands/libraries/delete_library_dataset.py similarity index 100% rename from parsec/commands/libraries/cmd_libraries_delete_library_dataset.py rename to parsec/commands/libraries/delete_library_dataset.py diff --git a/parsec/commands/libraries/cmd_libraries_get_folders.py b/parsec/commands/libraries/get_folders.py similarity index 100% rename from parsec/commands/libraries/cmd_libraries_get_folders.py rename to parsec/commands/libraries/get_folders.py diff --git a/parsec/commands/libraries/cmd_libraries_get_libraries.py b/parsec/commands/libraries/get_libraries.py similarity index 100% rename from parsec/commands/libraries/cmd_libraries_get_libraries.py rename to parsec/commands/libraries/get_libraries.py diff --git a/parsec/commands/libraries/cmd_libraries_set_library_permissions.py b/parsec/commands/libraries/set_library_permissions.py similarity index 100% rename from parsec/commands/libraries/cmd_libraries_set_library_permissions.py rename to parsec/commands/libraries/set_library_permissions.py diff --git a/parsec/commands/libraries/cmd_libraries_show_dataset.py b/parsec/commands/libraries/show_dataset.py similarity index 100% rename from parsec/commands/libraries/cmd_libraries_show_dataset.py rename to parsec/commands/libraries/show_dataset.py diff --git a/parsec/commands/libraries/cmd_libraries_show_folder.py b/parsec/commands/libraries/show_folder.py similarity index 100% rename from parsec/commands/libraries/cmd_libraries_show_folder.py rename to parsec/commands/libraries/show_folder.py diff --git a/parsec/commands/libraries/cmd_libraries_show_library.py b/parsec/commands/libraries/show_library.py similarity index 100% rename from parsec/commands/libraries/cmd_libraries_show_library.py rename to parsec/commands/libraries/show_library.py diff --git a/parsec/commands/libraries/cmd_libraries_upload_file_contents.py b/parsec/commands/libraries/upload_file_contents.py similarity index 100% rename from parsec/commands/libraries/cmd_libraries_upload_file_contents.py rename to parsec/commands/libraries/upload_file_contents.py diff --git a/parsec/commands/libraries/cmd_libraries_upload_file_from_local_path.py b/parsec/commands/libraries/upload_file_from_local_path.py similarity index 100% rename from parsec/commands/libraries/cmd_libraries_upload_file_from_local_path.py rename to parsec/commands/libraries/upload_file_from_local_path.py diff --git a/parsec/commands/libraries/cmd_libraries_upload_file_from_server.py b/parsec/commands/libraries/upload_file_from_server.py similarity index 100% rename from parsec/commands/libraries/cmd_libraries_upload_file_from_server.py rename to parsec/commands/libraries/upload_file_from_server.py diff --git a/parsec/commands/libraries/cmd_libraries_upload_file_from_url.py b/parsec/commands/libraries/upload_file_from_url.py similarity index 100% rename from parsec/commands/libraries/cmd_libraries_upload_file_from_url.py rename to parsec/commands/libraries/upload_file_from_url.py diff --git a/parsec/commands/libraries/cmd_libraries_upload_from_galaxy_filesystem.py b/parsec/commands/libraries/upload_from_galaxy_filesystem.py similarity index 100% rename from parsec/commands/libraries/cmd_libraries_upload_from_galaxy_filesystem.py rename to parsec/commands/libraries/upload_from_galaxy_filesystem.py diff --git a/parsec/commands/quotas/cmd_quotas_get_quotas.py b/parsec/commands/quotas/get_quotas.py similarity index 100% rename from parsec/commands/quotas/cmd_quotas_get_quotas.py rename to parsec/commands/quotas/get_quotas.py diff --git a/parsec/commands/quotas/cmd_quotas_show_quota.py b/parsec/commands/quotas/show_quota.py similarity index 100% rename from parsec/commands/quotas/cmd_quotas_show_quota.py rename to parsec/commands/quotas/show_quota.py diff --git a/parsec/commands/roles/cmd_roles_get_roles.py b/parsec/commands/roles/get_roles.py similarity index 100% rename from parsec/commands/roles/cmd_roles_get_roles.py rename to parsec/commands/roles/get_roles.py diff --git a/parsec/commands/roles/cmd_roles_show_role.py b/parsec/commands/roles/show_role.py similarity index 100% rename from parsec/commands/roles/cmd_roles_show_role.py rename to parsec/commands/roles/show_role.py diff --git a/parsec/commands/tool/cmd_tool_data_delete_data_table.py b/parsec/commands/tool/data_delete_data_table.py similarity index 100% rename from parsec/commands/tool/cmd_tool_data_delete_data_table.py rename to parsec/commands/tool/data_delete_data_table.py diff --git a/parsec/commands/tool/cmd_tool_data_get_data_tables.py b/parsec/commands/tool/data_get_data_tables.py similarity index 100% rename from parsec/commands/tool/cmd_tool_data_get_data_tables.py rename to parsec/commands/tool/data_get_data_tables.py diff --git a/parsec/commands/tool/cmd_tool_data_show_data_table.py b/parsec/commands/tool/data_show_data_table.py similarity index 100% rename from parsec/commands/tool/cmd_tool_data_show_data_table.py rename to parsec/commands/tool/data_show_data_table.py diff --git a/parsec/commands/toolShed/cmd_toolShed_get_repositories.py b/parsec/commands/toolShed/get_repositories.py similarity index 100% rename from parsec/commands/toolShed/cmd_toolShed_get_repositories.py rename to parsec/commands/toolShed/get_repositories.py diff --git a/parsec/commands/toolShed/cmd_toolShed_install_repository_revision.py b/parsec/commands/toolShed/install_repository_revision.py similarity index 100% rename from parsec/commands/toolShed/cmd_toolShed_install_repository_revision.py rename to parsec/commands/toolShed/install_repository_revision.py diff --git a/parsec/commands/toolShed/cmd_toolShed_show_repository.py b/parsec/commands/toolShed/show_repository.py similarity index 100% rename from parsec/commands/toolShed/cmd_toolShed_show_repository.py rename to parsec/commands/toolShed/show_repository.py diff --git a/parsec/commands/tools/cmd_tools_get_tool_panel.py b/parsec/commands/tools/get_tool_panel.py similarity index 100% rename from parsec/commands/tools/cmd_tools_get_tool_panel.py rename to parsec/commands/tools/get_tool_panel.py diff --git a/parsec/commands/tools/cmd_tools_get_tools.py b/parsec/commands/tools/get_tools.py similarity index 100% rename from parsec/commands/tools/cmd_tools_get_tools.py rename to parsec/commands/tools/get_tools.py diff --git a/parsec/commands/tools/cmd_tools_paste_content.py b/parsec/commands/tools/paste_content.py similarity index 100% rename from parsec/commands/tools/cmd_tools_paste_content.py rename to parsec/commands/tools/paste_content.py diff --git a/parsec/commands/tools/cmd_tools_put_url.py b/parsec/commands/tools/put_url.py similarity index 100% rename from parsec/commands/tools/cmd_tools_put_url.py rename to parsec/commands/tools/put_url.py diff --git a/parsec/commands/tools/cmd_tools_run_tool.py b/parsec/commands/tools/run_tool.py similarity index 100% rename from parsec/commands/tools/cmd_tools_run_tool.py rename to parsec/commands/tools/run_tool.py diff --git a/parsec/commands/tools/cmd_tools_show_tool.py b/parsec/commands/tools/show_tool.py similarity index 100% rename from parsec/commands/tools/cmd_tools_show_tool.py rename to parsec/commands/tools/show_tool.py diff --git a/parsec/commands/tools/cmd_tools_upload_file.py b/parsec/commands/tools/upload_file.py similarity index 100% rename from parsec/commands/tools/cmd_tools_upload_file.py rename to parsec/commands/tools/upload_file.py diff --git a/parsec/commands/users/cmd_users_create_local_user.py b/parsec/commands/users/create_local_user.py similarity index 100% rename from parsec/commands/users/cmd_users_create_local_user.py rename to parsec/commands/users/create_local_user.py diff --git a/parsec/commands/users/cmd_users_create_remote_user.py b/parsec/commands/users/create_remote_user.py similarity index 100% rename from parsec/commands/users/cmd_users_create_remote_user.py rename to parsec/commands/users/create_remote_user.py diff --git a/parsec/commands/users/cmd_users_create_user.py b/parsec/commands/users/create_user.py similarity index 100% rename from parsec/commands/users/cmd_users_create_user.py rename to parsec/commands/users/create_user.py diff --git a/parsec/commands/users/cmd_users_create_user_apikey.py b/parsec/commands/users/create_user_apikey.py similarity index 100% rename from parsec/commands/users/cmd_users_create_user_apikey.py rename to parsec/commands/users/create_user_apikey.py diff --git a/parsec/commands/users/cmd_users_get_current_user.py b/parsec/commands/users/get_current_user.py similarity index 100% rename from parsec/commands/users/cmd_users_get_current_user.py rename to parsec/commands/users/get_current_user.py diff --git a/parsec/commands/users/cmd_users_get_users.py b/parsec/commands/users/get_users.py similarity index 100% rename from parsec/commands/users/cmd_users_get_users.py rename to parsec/commands/users/get_users.py diff --git a/parsec/commands/users/cmd_users_show_user.py b/parsec/commands/users/show_user.py similarity index 100% rename from parsec/commands/users/cmd_users_show_user.py rename to parsec/commands/users/show_user.py diff --git a/parsec/commands/visual/cmd_visual_get_visualizations.py b/parsec/commands/visual/get_visualizations.py similarity index 100% rename from parsec/commands/visual/cmd_visual_get_visualizations.py rename to parsec/commands/visual/get_visualizations.py diff --git a/parsec/commands/visual/cmd_visual_show_visualization.py b/parsec/commands/visual/show_visualization.py similarity index 100% rename from parsec/commands/visual/cmd_visual_show_visualization.py rename to parsec/commands/visual/show_visualization.py diff --git a/parsec/commands/workflows/cmd_workflows_delete_workflow.py b/parsec/commands/workflows/delete_workflow.py similarity index 100% rename from parsec/commands/workflows/cmd_workflows_delete_workflow.py rename to parsec/commands/workflows/delete_workflow.py diff --git a/parsec/commands/workflows/cmd_workflows_export_workflow_json.py b/parsec/commands/workflows/export_workflow_json.py similarity index 100% rename from parsec/commands/workflows/cmd_workflows_export_workflow_json.py rename to parsec/commands/workflows/export_workflow_json.py diff --git a/parsec/commands/workflows/cmd_workflows_export_workflow_to_local_path.py b/parsec/commands/workflows/export_workflow_to_local_path.py similarity index 100% rename from parsec/commands/workflows/cmd_workflows_export_workflow_to_local_path.py rename to parsec/commands/workflows/export_workflow_to_local_path.py diff --git a/parsec/commands/workflows/cmd_workflows_get_workflow_inputs.py b/parsec/commands/workflows/get_workflow_inputs.py similarity index 100% rename from parsec/commands/workflows/cmd_workflows_get_workflow_inputs.py rename to parsec/commands/workflows/get_workflow_inputs.py diff --git a/parsec/commands/workflows/cmd_workflows_get_workflows.py b/parsec/commands/workflows/get_workflows.py similarity index 100% rename from parsec/commands/workflows/cmd_workflows_get_workflows.py rename to parsec/commands/workflows/get_workflows.py diff --git a/parsec/commands/workflows/cmd_workflows_import_shared_workflow.py b/parsec/commands/workflows/import_shared_workflow.py similarity index 100% rename from parsec/commands/workflows/cmd_workflows_import_shared_workflow.py rename to parsec/commands/workflows/import_shared_workflow.py diff --git a/parsec/commands/workflows/cmd_workflows_import_workflow_from_local_path.py b/parsec/commands/workflows/import_workflow_from_local_path.py similarity index 100% rename from parsec/commands/workflows/cmd_workflows_import_workflow_from_local_path.py rename to parsec/commands/workflows/import_workflow_from_local_path.py diff --git a/parsec/commands/workflows/cmd_workflows_import_workflow_json.py b/parsec/commands/workflows/import_workflow_json.py similarity index 100% rename from parsec/commands/workflows/cmd_workflows_import_workflow_json.py rename to parsec/commands/workflows/import_workflow_json.py diff --git a/parsec/commands/workflows/cmd_workflows_run_workflow.py b/parsec/commands/workflows/run_workflow.py similarity index 100% rename from parsec/commands/workflows/cmd_workflows_run_workflow.py rename to parsec/commands/workflows/run_workflow.py diff --git a/parsec/commands/workflows/cmd_workflows_show_workflow.py b/parsec/commands/workflows/show_workflow.py similarity index 100% rename from parsec/commands/workflows/cmd_workflows_show_workflow.py rename to parsec/commands/workflows/show_workflow.py From 5bbd86caf0aec45475d017baa231081b4d455b43 Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Tue, 2 May 2017 18:48:36 +0000 Subject: [PATCH 09/80] Ok, next pass with autobuilder, working well! --- parsec/commands/cmd_config.py | 5 +- parsec/commands/cmd_datasets.py | 13 +++++ parsec/commands/cmd_datatypes.py | 9 ++++ parsec/commands/cmd_folders.py | 9 ++++ parsec/commands/cmd_forms.py | 11 ++++ parsec/commands/cmd_ftpfiles.py | 7 +++ parsec/commands/cmd_genomes.py | 11 ++++ parsec/commands/cmd_groups.py | 25 +++++++++ parsec/commands/cmd_histories.py | 51 +++++++++++++++++++ parsec/commands/cmd_jobs.py | 13 +++++ parsec/commands/cmd_libraries.py | 39 ++++++++++++++ parsec/commands/cmd_quotas.py | 9 ++++ parsec/commands/cmd_roles.py | 9 ++++ parsec/commands/datasets/download_dataset.py | 28 ++++------ parsec/commands/datasets/show_dataset.py | 12 ++--- parsec/commands/datasets/show_stderr.py | 7 +-- parsec/commands/datasets/show_stdout.py | 7 +-- parsec/commands/datatypes/get_datatypes.py | 9 ++-- parsec/commands/datatypes/get_sniffers.py | 5 +- parsec/commands/folders/delete_folder.py | 5 +- parsec/commands/folders/show_folder.py | 5 +- parsec/commands/forms/create_form.py | 7 +-- parsec/commands/forms/get_forms.py | 5 +- parsec/commands/forms/show_form.py | 7 +-- parsec/commands/ftpfiles/get_ftp_files.py | 5 +- parsec/commands/genomes/get_genomes.py | 3 +- parsec/commands/genomes/install_genome.py | 22 ++------ parsec/commands/genomes/show_genome.py | 12 ++--- parsec/commands/groups/add_group_role.py | 17 +++++++ parsec/commands/groups/add_group_user.py | 17 +++++++ parsec/commands/groups/create_group.py | 12 ++--- parsec/commands/groups/delete_group_role.py | 17 +++++++ parsec/commands/groups/delete_group_user.py | 17 +++++++ parsec/commands/groups/get_group_roles.py | 16 ++++++ parsec/commands/groups/get_group_users.py | 16 ++++++ parsec/commands/groups/get_groups.py | 5 +- parsec/commands/groups/show_group.py | 7 +-- parsec/commands/groups/update_group.py | 33 ++++++++++++ .../histories/create_dataset_collection.py | 11 ++-- parsec/commands/histories/create_history.py | 3 +- .../commands/histories/create_history_tag.py | 5 +- parsec/commands/histories/delete_dataset.py | 5 +- .../histories/delete_dataset_collection.py | 9 ++-- parsec/commands/histories/delete_history.py | 5 +- parsec/commands/histories/download_dataset.py | 22 ++++++++ parsec/commands/histories/download_history.py | 11 ++-- parsec/commands/histories/export_history.py | 24 +++------ .../commands/histories/get_current_history.py | 15 ++++++ parsec/commands/histories/get_histories.py | 8 ++- .../get_most_recently_used_history.py | 3 +- parsec/commands/histories/get_status.py | 5 +- parsec/commands/histories/show_dataset.py | 5 +- .../histories/show_dataset_collection.py | 9 ++-- .../histories/show_dataset_provenance.py | 12 ++--- parsec/commands/histories/show_history.py | 30 ++++------- .../histories/show_matching_datasets.py | 11 ++-- parsec/commands/histories/undelete_history.py | 5 +- parsec/commands/histories/update_dataset.py | 5 +- .../histories/update_dataset_collection.py | 9 ++-- parsec/commands/histories/update_history.py | 32 ++---------- .../histories/upload_dataset_from_library.py | 9 ++-- parsec/commands/jobs/get_jobs.py | 5 +- parsec/commands/jobs/get_state.py | 7 +-- parsec/commands/jobs/search_jobs.py | 7 +-- parsec/commands/jobs/show_job.py | 16 ++++-- .../commands/libraries/copy_from_dataset.py | 11 ++-- parsec/commands/libraries/create_folder.py | 11 ++-- parsec/commands/libraries/create_library.py | 12 ++--- parsec/commands/libraries/delete_library.py | 5 +- .../libraries/delete_library_dataset.py | 10 ++-- parsec/commands/libraries/get_folders.py | 18 ++----- parsec/commands/libraries/get_libraries.py | 12 ++--- .../libraries/get_library_permissions.py | 16 ++++++ .../libraries/set_library_permissions.py | 22 ++++---- parsec/commands/libraries/show_dataset.py | 5 +- parsec/commands/libraries/show_folder.py | 5 +- parsec/commands/libraries/show_library.py | 7 +-- .../libraries/upload_file_contents.py | 12 ++--- .../libraries/upload_file_from_local_path.py | 20 ++------ .../libraries/upload_file_from_server.py | 24 ++------- .../libraries/upload_file_from_url.py | 12 ++--- .../upload_from_galaxy_filesystem.py | 24 ++------- parsec/commands/quotas/get_quotas.py | 3 +- parsec/commands/quotas/show_quota.py | 5 +- parsec/commands/roles/get_roles.py | 3 +- parsec/commands/roles/show_role.py | 5 +- scripts/autobuilder.py | 13 ++--- 87 files changed, 662 insertions(+), 388 deletions(-) create mode 100644 parsec/commands/cmd_datasets.py create mode 100644 parsec/commands/cmd_datatypes.py create mode 100644 parsec/commands/cmd_folders.py create mode 100644 parsec/commands/cmd_forms.py create mode 100644 parsec/commands/cmd_ftpfiles.py create mode 100644 parsec/commands/cmd_genomes.py create mode 100644 parsec/commands/cmd_groups.py create mode 100644 parsec/commands/cmd_histories.py create mode 100644 parsec/commands/cmd_jobs.py create mode 100644 parsec/commands/cmd_libraries.py create mode 100644 parsec/commands/cmd_quotas.py create mode 100644 parsec/commands/cmd_roles.py create mode 100644 parsec/commands/groups/add_group_role.py create mode 100644 parsec/commands/groups/add_group_user.py create mode 100644 parsec/commands/groups/delete_group_role.py create mode 100644 parsec/commands/groups/delete_group_user.py create mode 100644 parsec/commands/groups/get_group_roles.py create mode 100644 parsec/commands/groups/get_group_users.py create mode 100644 parsec/commands/groups/update_group.py create mode 100644 parsec/commands/histories/download_dataset.py create mode 100644 parsec/commands/histories/get_current_history.py create mode 100644 parsec/commands/libraries/get_library_permissions.py diff --git a/parsec/commands/cmd_config.py b/parsec/commands/cmd_config.py index 46dca4c..c864194 100644 --- a/parsec/commands/cmd_config.py +++ b/parsec/commands/cmd_config.py @@ -1,8 +1,11 @@ import click -from parsec.commands.config.get_config import cli as func0 +from parsec.commands.config.init import cli as func0 +from parsec.commands.config.cmd_config_init import cli as func1 +from parsec.commands.config.get_config import cli as func2 @click.group() def cli(): pass cli.add_command(func0) +cli.add_command(func1) diff --git a/parsec/commands/cmd_datasets.py b/parsec/commands/cmd_datasets.py new file mode 100644 index 0000000..90b9e63 --- /dev/null +++ b/parsec/commands/cmd_datasets.py @@ -0,0 +1,13 @@ +import click +from parsec.commands.datasets.download_dataset import cli as func0 +from parsec.commands.datasets.show_stdout import cli as func1 +from parsec.commands.datasets.show_stderr import cli as func2 +from parsec.commands.datasets.show_dataset import cli as func3 + +@click.group() +def cli(): + pass + +cli.add_command(func0) +cli.add_command(func1) +cli.add_command(func2) diff --git a/parsec/commands/cmd_datatypes.py b/parsec/commands/cmd_datatypes.py new file mode 100644 index 0000000..188eb1f --- /dev/null +++ b/parsec/commands/cmd_datatypes.py @@ -0,0 +1,9 @@ +import click +from parsec.commands.datatypes.get_datatypes import cli as func0 +from parsec.commands.datatypes.get_sniffers import cli as func1 + +@click.group() +def cli(): + pass + +cli.add_command(func0) diff --git a/parsec/commands/cmd_folders.py b/parsec/commands/cmd_folders.py new file mode 100644 index 0000000..3a3f8fe --- /dev/null +++ b/parsec/commands/cmd_folders.py @@ -0,0 +1,9 @@ +import click +from parsec.commands.folders.show_folder import cli as func0 +from parsec.commands.folders.delete_folder import cli as func1 + +@click.group() +def cli(): + pass + +cli.add_command(func0) diff --git a/parsec/commands/cmd_forms.py b/parsec/commands/cmd_forms.py new file mode 100644 index 0000000..0b535c5 --- /dev/null +++ b/parsec/commands/cmd_forms.py @@ -0,0 +1,11 @@ +import click +from parsec.commands.forms.show_form import cli as func0 +from parsec.commands.forms.get_forms import cli as func1 +from parsec.commands.forms.create_form import cli as func2 + +@click.group() +def cli(): + pass + +cli.add_command(func0) +cli.add_command(func1) diff --git a/parsec/commands/cmd_ftpfiles.py b/parsec/commands/cmd_ftpfiles.py new file mode 100644 index 0000000..c57d96c --- /dev/null +++ b/parsec/commands/cmd_ftpfiles.py @@ -0,0 +1,7 @@ +import click +from parsec.commands.ftpfiles.get_ftp_files import cli as func0 + +@click.group() +def cli(): + pass + diff --git a/parsec/commands/cmd_genomes.py b/parsec/commands/cmd_genomes.py new file mode 100644 index 0000000..2a47ebd --- /dev/null +++ b/parsec/commands/cmd_genomes.py @@ -0,0 +1,11 @@ +import click +from parsec.commands.genomes.install_genome import cli as func0 +from parsec.commands.genomes.get_genomes import cli as func1 +from parsec.commands.genomes.show_genome import cli as func2 + +@click.group() +def cli(): + pass + +cli.add_command(func0) +cli.add_command(func1) diff --git a/parsec/commands/cmd_groups.py b/parsec/commands/cmd_groups.py new file mode 100644 index 0000000..eed98f6 --- /dev/null +++ b/parsec/commands/cmd_groups.py @@ -0,0 +1,25 @@ +import click +from parsec.commands.groups.get_groups import cli as func0 +from parsec.commands.groups.show_group import cli as func1 +from parsec.commands.groups.add_group_role import cli as func2 +from parsec.commands.groups.update_group import cli as func3 +from parsec.commands.groups.delete_group_role import cli as func4 +from parsec.commands.groups.create_group import cli as func5 +from parsec.commands.groups.delete_group_user import cli as func6 +from parsec.commands.groups.get_group_roles import cli as func7 +from parsec.commands.groups.get_group_users import cli as func8 +from parsec.commands.groups.add_group_user import cli as func9 + +@click.group() +def cli(): + pass + +cli.add_command(func0) +cli.add_command(func1) +cli.add_command(func2) +cli.add_command(func3) +cli.add_command(func4) +cli.add_command(func5) +cli.add_command(func6) +cli.add_command(func7) +cli.add_command(func8) diff --git a/parsec/commands/cmd_histories.py b/parsec/commands/cmd_histories.py new file mode 100644 index 0000000..0253db3 --- /dev/null +++ b/parsec/commands/cmd_histories.py @@ -0,0 +1,51 @@ +import click +from parsec.commands.histories.delete_dataset import cli as func0 +from parsec.commands.histories.download_dataset import cli as func1 +from parsec.commands.histories.update_dataset_collection import cli as func2 +from parsec.commands.histories.update_history import cli as func3 +from parsec.commands.histories.delete_dataset_collection import cli as func4 +from parsec.commands.histories.get_histories import cli as func5 +from parsec.commands.histories.get_most_recently_used_history import cli as func6 +from parsec.commands.histories.create_history import cli as func7 +from parsec.commands.histories.upload_dataset_from_library import cli as func8 +from parsec.commands.histories.show_dataset_collection import cli as func9 +from parsec.commands.histories.get_status import cli as func10 +from parsec.commands.histories.create_dataset_collection import cli as func11 +from parsec.commands.histories.get_current_history import cli as func12 +from parsec.commands.histories.create_history_tag import cli as func13 +from parsec.commands.histories.undelete_history import cli as func14 +from parsec.commands.histories.show_history import cli as func15 +from parsec.commands.histories.show_dataset_provenance import cli as func16 +from parsec.commands.histories.download_history import cli as func17 +from parsec.commands.histories.export_history import cli as func18 +from parsec.commands.histories.show_dataset import cli as func19 +from parsec.commands.histories.show_matching_datasets import cli as func20 +from parsec.commands.histories.delete_history import cli as func21 +from parsec.commands.histories.update_dataset import cli as func22 + +@click.group() +def cli(): + pass + +cli.add_command(func0) +cli.add_command(func1) +cli.add_command(func2) +cli.add_command(func3) +cli.add_command(func4) +cli.add_command(func5) +cli.add_command(func6) +cli.add_command(func7) +cli.add_command(func8) +cli.add_command(func9) +cli.add_command(func10) +cli.add_command(func11) +cli.add_command(func12) +cli.add_command(func13) +cli.add_command(func14) +cli.add_command(func15) +cli.add_command(func16) +cli.add_command(func17) +cli.add_command(func18) +cli.add_command(func19) +cli.add_command(func20) +cli.add_command(func21) diff --git a/parsec/commands/cmd_jobs.py b/parsec/commands/cmd_jobs.py new file mode 100644 index 0000000..a0b2bd2 --- /dev/null +++ b/parsec/commands/cmd_jobs.py @@ -0,0 +1,13 @@ +import click +from parsec.commands.jobs.get_jobs import cli as func0 +from parsec.commands.jobs.show_job import cli as func1 +from parsec.commands.jobs.get_state import cli as func2 +from parsec.commands.jobs.search_jobs import cli as func3 + +@click.group() +def cli(): + pass + +cli.add_command(func0) +cli.add_command(func1) +cli.add_command(func2) diff --git a/parsec/commands/cmd_libraries.py b/parsec/commands/cmd_libraries.py new file mode 100644 index 0000000..e36e014 --- /dev/null +++ b/parsec/commands/cmd_libraries.py @@ -0,0 +1,39 @@ +import click +from parsec.commands.libraries.upload_file_from_local_path import cli as func0 +from parsec.commands.libraries.get_folders import cli as func1 +from parsec.commands.libraries.create_folder import cli as func2 +from parsec.commands.libraries.show_folder import cli as func3 +from parsec.commands.libraries.upload_from_galaxy_filesystem import cli as func4 +from parsec.commands.libraries.show_library import cli as func5 +from parsec.commands.libraries.delete_library_dataset import cli as func6 +from parsec.commands.libraries.get_libraries import cli as func7 +from parsec.commands.libraries.set_library_permissions import cli as func8 +from parsec.commands.libraries.get_library_permissions import cli as func9 +from parsec.commands.libraries.upload_file_from_server import cli as func10 +from parsec.commands.libraries.delete_library import cli as func11 +from parsec.commands.libraries.upload_file_from_url import cli as func12 +from parsec.commands.libraries.show_dataset import cli as func13 +from parsec.commands.libraries.upload_file_contents import cli as func14 +from parsec.commands.libraries.create_library import cli as func15 +from parsec.commands.libraries.copy_from_dataset import cli as func16 + +@click.group() +def cli(): + pass + +cli.add_command(func0) +cli.add_command(func1) +cli.add_command(func2) +cli.add_command(func3) +cli.add_command(func4) +cli.add_command(func5) +cli.add_command(func6) +cli.add_command(func7) +cli.add_command(func8) +cli.add_command(func9) +cli.add_command(func10) +cli.add_command(func11) +cli.add_command(func12) +cli.add_command(func13) +cli.add_command(func14) +cli.add_command(func15) diff --git a/parsec/commands/cmd_quotas.py b/parsec/commands/cmd_quotas.py new file mode 100644 index 0000000..ecbba3c --- /dev/null +++ b/parsec/commands/cmd_quotas.py @@ -0,0 +1,9 @@ +import click +from parsec.commands.quotas.get_quotas import cli as func0 +from parsec.commands.quotas.show_quota import cli as func1 + +@click.group() +def cli(): + pass + +cli.add_command(func0) diff --git a/parsec/commands/cmd_roles.py b/parsec/commands/cmd_roles.py new file mode 100644 index 0000000..00ddae5 --- /dev/null +++ b/parsec/commands/cmd_roles.py @@ -0,0 +1,9 @@ +import click +from parsec.commands.roles.get_roles import cli as func0 +from parsec.commands.roles.show_role import cli as func1 + +@click.group() +def cli(): + pass + +cli.add_command(func0) diff --git a/parsec/commands/datasets/download_dataset.py b/parsec/commands/datasets/download_dataset.py index 175ada6..b48aeb9 100644 --- a/parsec/commands/datasets/download_dataset.py +++ b/parsec/commands/datasets/download_dataset.py @@ -3,22 +3,22 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('datasets_download_dataset') +@click.command('download_dataset') @click.argument("dataset_id", type=str) + @click.option( "--file_path", - help="If the file_path argument is provided, the dataset will be streamed to disk at that path (Should not contain filename if use_default_name=True). If the file_path argument is not provided, the dataset content is loaded into memory and returned by the method (Memory consumption may be heavy as the entire file will be in memory).", + help="If this argument is provided, the dataset will be streamed to disk at that path (should be a directory if use_default_filename=True). If the file_path argument is not provided, the dataset content is loaded into memory and returned by the method (Memory consumption may be heavy as the entire file will be in memory).", type=str ) @click.option( "--use_default_filename", - help="If the use_default_name parameter is True, the exported file will be saved as file_path/%s, where %s is the dataset name. If use_default_name is False, file_path is assumed to contain the full file path including filename.", + help="If this argument is True, the exported file will be saved as file_path/%s, where %s is the dataset name. If this argument is False, file_path is assumed to contain the full file path including the filename.", is_flag=True ) @click.option( "--wait_for_completion", - help="If wait_for_completion is True, this call will block until the dataset is ready. If the dataset state becomes invalid, a DatasetStateException will be thrown.", + help="If this argument is True, this method call will block until the dataset is ready. If the dataset state becomes invalid, a DatasetStateException will be thrown.", is_flag=True ) @click.option( @@ -26,21 +26,11 @@ help="Time (in seconds) to wait for dataset to complete. If the dataset state is not complete within this time, a DatasetTimeoutException will be thrown.", type=float ) + @pass_context @bioblend_exception @dict_output -def cli( - ctx, - dataset_id, - file_path="", - use_default_filename=True, - wait_for_completion=False, - maxwait=12000): - """Downloads the dataset identified by 'id'. +def cli(ctx, dataset_id, file_path="", use_default_filename=True, wait_for_completion=False, maxwait=12000): + """Download a dataset to file or in memory. """ - return ctx.gi.datasets.download_dataset( - dataset_id, - file_path=file_path, - use_default_filename=use_default_filename, - wait_for_completion=wait_for_completion, - maxwait=maxwait) + return ctx.gi.datasets.download_dataset(dataset_id, file_path=file_path, use_default_filename=use_default_filename, wait_for_completion=wait_for_completion, maxwait=maxwait) diff --git a/parsec/commands/datasets/show_dataset.py b/parsec/commands/datasets/show_dataset.py index ddb4207..84622ed 100644 --- a/parsec/commands/datasets/show_dataset.py +++ b/parsec/commands/datasets/show_dataset.py @@ -3,9 +3,9 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('datasets_show_dataset') +@click.command('show_dataset') @click.argument("dataset_id", type=str) + @click.option( "--deleted", help="Whether to return results for a deleted dataset", @@ -16,13 +16,11 @@ help="Whether to show a history dataset ('hda' - the default) or library dataset ('ldda').", type=str ) + @pass_context @bioblend_exception @dict_output def cli(ctx, dataset_id, deleted=False, hda_ldda=""): - """Display information about and/or content of a dataset. This can be a history or a library dataset. + """Get details about a given dataset. This can be a history or a library dataset. """ - return ctx.gi.datasets.show_dataset( - dataset_id, - deleted=deleted, - hda_ldda=hda_ldda) + return ctx.gi.datasets.show_dataset(dataset_id, deleted=deleted, hda_ldda=hda_ldda) diff --git a/parsec/commands/datasets/show_stderr.py b/parsec/commands/datasets/show_stderr.py index 068db7d..eefb625 100644 --- a/parsec/commands/datasets/show_stderr.py +++ b/parsec/commands/datasets/show_stderr.py @@ -3,13 +3,14 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('datasets_show_stderr') +@click.command('show_stderr') @click.argument("dataset_id", type=str) + + @pass_context @bioblend_exception @dict_output def cli(ctx, dataset_id): - """Display stderr output of a dataset. + """Get the stderr output of a dataset. """ return ctx.gi.datasets.show_stderr(dataset_id) diff --git a/parsec/commands/datasets/show_stdout.py b/parsec/commands/datasets/show_stdout.py index 3b1d71c..40be771 100644 --- a/parsec/commands/datasets/show_stdout.py +++ b/parsec/commands/datasets/show_stdout.py @@ -3,13 +3,14 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('datasets_show_stdout') +@click.command('show_stdout') @click.argument("dataset_id", type=str) + + @pass_context @bioblend_exception @dict_output def cli(ctx, dataset_id): - """Display stdout output of a dataset. + """Get the stdout output of a dataset. """ return ctx.gi.datasets.show_stdout(dataset_id) diff --git a/parsec/commands/datatypes/get_datatypes.py b/parsec/commands/datatypes/get_datatypes.py index 7806014..22f7f43 100644 --- a/parsec/commands/datatypes/get_datatypes.py +++ b/parsec/commands/datatypes/get_datatypes.py @@ -3,8 +3,8 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output +@click.command('get_datatypes') -@click.command('datatypes_get_datatypes') @click.option( "--extension_only", help="None" @@ -13,12 +13,11 @@ "--upload_only", help="None" ) + @pass_context @bioblend_exception @dict_output def cli(ctx, extension_only=False, upload_only=False): - """Displays a collection (list) of datatypes. + """Get the list of all installed datatypes. """ - return ctx.gi.datatypes.get_datatypes( - extension_only=extension_only, - upload_only=upload_only) + return ctx.gi.datatypes.get_datatypes(extension_only=extension_only, upload_only=upload_only) diff --git a/parsec/commands/datatypes/get_sniffers.py b/parsec/commands/datatypes/get_sniffers.py index 06a163c..7eef12f 100644 --- a/parsec/commands/datatypes/get_sniffers.py +++ b/parsec/commands/datatypes/get_sniffers.py @@ -3,12 +3,13 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output +@click.command('get_sniffers') + -@click.command('datatypes_get_sniffers') @pass_context @bioblend_exception @dict_output def cli(ctx): - """Displays a collection (list) of sniffers. + """Get the list of all installed sniffers. """ return ctx.gi.datatypes.get_sniffers() diff --git a/parsec/commands/folders/delete_folder.py b/parsec/commands/folders/delete_folder.py index 4c02715..dcd16e9 100644 --- a/parsec/commands/folders/delete_folder.py +++ b/parsec/commands/folders/delete_folder.py @@ -3,14 +3,15 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('folders_delete_folder') +@click.command('delete_folder') @click.argument("folder_id", type=str) + @click.option( "--undelete", help="If set to True, the folder will be undeleted (i.e. the `deleted` mark will be removed)", is_flag=True ) + @pass_context @bioblend_exception @dict_output diff --git a/parsec/commands/folders/show_folder.py b/parsec/commands/folders/show_folder.py index f16c880..549059f 100644 --- a/parsec/commands/folders/show_folder.py +++ b/parsec/commands/folders/show_folder.py @@ -3,9 +3,10 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('folders_show_folder') +@click.command('show_folder') @click.argument("folder_id", type=str) + + @pass_context @bioblend_exception @dict_output diff --git a/parsec/commands/forms/create_form.py b/parsec/commands/forms/create_form.py index 7c2804e..2e86b6f 100644 --- a/parsec/commands/forms/create_form.py +++ b/parsec/commands/forms/create_form.py @@ -3,13 +3,14 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('forms_create_form') +@click.command('create_form') @click.argument("form_xml_text", type=str) + + @pass_context @bioblend_exception @dict_output def cli(ctx, form_xml_text): - """Create a new form + """Create a new form. """ return ctx.gi.forms.create_form(form_xml_text) diff --git a/parsec/commands/forms/get_forms.py b/parsec/commands/forms/get_forms.py index 66a4fca..13564f6 100644 --- a/parsec/commands/forms/get_forms.py +++ b/parsec/commands/forms/get_forms.py @@ -3,12 +3,13 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output +@click.command('get_forms') + -@click.command('forms_get_forms') @pass_context @bioblend_exception @dict_output def cli(ctx): - """Get a list of forms + """Get the list of all forms. """ return ctx.gi.forms.get_forms() diff --git a/parsec/commands/forms/show_form.py b/parsec/commands/forms/show_form.py index 4df4072..633ebf9 100644 --- a/parsec/commands/forms/show_form.py +++ b/parsec/commands/forms/show_form.py @@ -3,13 +3,14 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('forms_show_form') +@click.command('show_form') @click.argument("form_id", type=str) + + @pass_context @bioblend_exception @dict_output def cli(ctx, form_id): - """Display information on a single form + """Get details of a given form. """ return ctx.gi.forms.show_form(form_id) diff --git a/parsec/commands/ftpfiles/get_ftp_files.py b/parsec/commands/ftpfiles/get_ftp_files.py index 88f9079..1a070c3 100644 --- a/parsec/commands/ftpfiles/get_ftp_files.py +++ b/parsec/commands/ftpfiles/get_ftp_files.py @@ -3,16 +3,17 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output +@click.command('get_ftp_files') -@click.command('ftpfiles_get_ftp_files') @click.option( "--deleted", help="None" ) + @pass_context @bioblend_exception @dict_output def cli(ctx, deleted=False): - """Get a list of local files + """Get a list of local files. """ return ctx.gi.ftpfiles.get_ftp_files(deleted=deleted) diff --git a/parsec/commands/genomes/get_genomes.py b/parsec/commands/genomes/get_genomes.py index 1cbd7a3..5958eba 100644 --- a/parsec/commands/genomes/get_genomes.py +++ b/parsec/commands/genomes/get_genomes.py @@ -3,8 +3,9 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output +@click.command('get_genomes') + -@click.command('genomes_get_genomes') @pass_context @bioblend_exception @dict_output diff --git a/parsec/commands/genomes/install_genome.py b/parsec/commands/genomes/install_genome.py index dc2c7e9..593a4c5 100644 --- a/parsec/commands/genomes/install_genome.py +++ b/parsec/commands/genomes/install_genome.py @@ -3,8 +3,8 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output +@click.command('install_genome') -@click.command('genomes_install_genome') @click.option( "--func", help="Allowed values: 'download', Download and index; 'index', Index only", @@ -41,25 +41,11 @@ type=str, multiple=True ) + @pass_context @bioblend_exception @dict_output -def cli( - ctx, - func="", - source="", - dbkey="", - ncbi_name="", - ensembl_dbkey="", - url_dbkey="", - indexers=""): +def cli(ctx, func="", source="", dbkey="", ncbi_name="", ensembl_dbkey="", url_dbkey="", indexers=""): """Download and/or index a genome. """ - return ctx.gi.genomes.install_genome( - func=func, - source=source, - dbkey=dbkey, - ncbi_name=ncbi_name, - ensembl_dbkey=ensembl_dbkey, - url_dbkey=url_dbkey, - indexers=indexers) + return ctx.gi.genomes.install_genome(func=func, source=source, dbkey=dbkey, ncbi_name=ncbi_name, ensembl_dbkey=ensembl_dbkey, url_dbkey=url_dbkey, indexers=indexers) diff --git a/parsec/commands/genomes/show_genome.py b/parsec/commands/genomes/show_genome.py index 7e1cffd..c0990b7 100644 --- a/parsec/commands/genomes/show_genome.py +++ b/parsec/commands/genomes/show_genome.py @@ -3,9 +3,9 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('genomes_show_genome') +@click.command('show_genome') @click.argument("id", type=str) + @click.option( "--num", help="num", @@ -26,15 +26,11 @@ help="high", type=str ) + @pass_context @bioblend_exception @dict_output def cli(ctx, id, num="", chrom="", low="", high=""): """Returns information about build """ - return ctx.gi.genomes.show_genome( - id, - num=num, - chrom=chrom, - low=low, - high=high) + return ctx.gi.genomes.show_genome(id, num=num, chrom=chrom, low=low, high=high) diff --git a/parsec/commands/groups/add_group_role.py b/parsec/commands/groups/add_group_role.py new file mode 100644 index 0000000..540f1f9 --- /dev/null +++ b/parsec/commands/groups/add_group_role.py @@ -0,0 +1,17 @@ +import click + +from parsec.cli import pass_context +from parsec.decorators import bioblend_exception, dict_output + +@click.command('add_group_role') +@click.argument("group_id", type=str) +@click.argument("role_id", type=str) + + +@pass_context +@bioblend_exception +@dict_output +def cli(ctx, group_id, role_id): + """Add a role to the given group. + """ + return ctx.gi.groups.add_group_role(group_id, role_id) diff --git a/parsec/commands/groups/add_group_user.py b/parsec/commands/groups/add_group_user.py new file mode 100644 index 0000000..a4c51ea --- /dev/null +++ b/parsec/commands/groups/add_group_user.py @@ -0,0 +1,17 @@ +import click + +from parsec.cli import pass_context +from parsec.decorators import bioblend_exception, dict_output + +@click.command('add_group_user') +@click.argument("group_id", type=str) +@click.argument("user_id", type=str) + + +@pass_context +@bioblend_exception +@dict_output +def cli(ctx, group_id, user_id): + """Add a user to the given group. + """ + return ctx.gi.groups.add_group_user(group_id, user_id) diff --git a/parsec/commands/groups/create_group.py b/parsec/commands/groups/create_group.py index 4d04fcc..f0bc1fd 100644 --- a/parsec/commands/groups/create_group.py +++ b/parsec/commands/groups/create_group.py @@ -3,9 +3,9 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('groups_create_group') +@click.command('create_group') @click.argument("group_name", type=str) + @click.option( "--user_ids", help="A list of encoded user IDs to add to the new group", @@ -18,13 +18,11 @@ type=str, multiple=True ) + @pass_context @bioblend_exception @dict_output def cli(ctx, group_name, user_ids=None, role_ids=None): - """Create a new Galaxy group + """Create a new group. """ - return ctx.gi.groups.create_group( - group_name, - user_ids=user_ids, - role_ids=role_ids) + return ctx.gi.groups.create_group(group_name, user_ids=user_ids, role_ids=role_ids) diff --git a/parsec/commands/groups/delete_group_role.py b/parsec/commands/groups/delete_group_role.py new file mode 100644 index 0000000..41ff180 --- /dev/null +++ b/parsec/commands/groups/delete_group_role.py @@ -0,0 +1,17 @@ +import click + +from parsec.cli import pass_context +from parsec.decorators import bioblend_exception, dict_output + +@click.command('delete_group_role') +@click.argument("group_id", type=str) +@click.argument("role_id", type=str) + + +@pass_context +@bioblend_exception +@dict_output +def cli(ctx, group_id, role_id): + """Remove a role from the given group. + """ + return ctx.gi.groups.delete_group_role(group_id, role_id) diff --git a/parsec/commands/groups/delete_group_user.py b/parsec/commands/groups/delete_group_user.py new file mode 100644 index 0000000..0c9cb92 --- /dev/null +++ b/parsec/commands/groups/delete_group_user.py @@ -0,0 +1,17 @@ +import click + +from parsec.cli import pass_context +from parsec.decorators import bioblend_exception, dict_output + +@click.command('delete_group_user') +@click.argument("group_id", type=str) +@click.argument("user_id", type=str) + + +@pass_context +@bioblend_exception +@dict_output +def cli(ctx, group_id, user_id): + """Remove a user from the given group. + """ + return ctx.gi.groups.delete_group_user(group_id, user_id) diff --git a/parsec/commands/groups/get_group_roles.py b/parsec/commands/groups/get_group_roles.py new file mode 100644 index 0000000..bad5e70 --- /dev/null +++ b/parsec/commands/groups/get_group_roles.py @@ -0,0 +1,16 @@ +import click + +from parsec.cli import pass_context +from parsec.decorators import bioblend_exception, dict_output + +@click.command('get_group_roles') +@click.argument("group_id", type=str) + + +@pass_context +@bioblend_exception +@dict_output +def cli(ctx, group_id): + """Get the list of roles associated to the given group. + """ + return ctx.gi.groups.get_group_roles(group_id) diff --git a/parsec/commands/groups/get_group_users.py b/parsec/commands/groups/get_group_users.py new file mode 100644 index 0000000..c1f2a80 --- /dev/null +++ b/parsec/commands/groups/get_group_users.py @@ -0,0 +1,16 @@ +import click + +from parsec.cli import pass_context +from parsec.decorators import bioblend_exception, dict_output + +@click.command('get_group_users') +@click.argument("group_id", type=str) + + +@pass_context +@bioblend_exception +@dict_output +def cli(ctx, group_id): + """Get the list of users associated to the given group. + """ + return ctx.gi.groups.get_group_users(group_id) diff --git a/parsec/commands/groups/get_groups.py b/parsec/commands/groups/get_groups.py index 468ded7..bef5481 100644 --- a/parsec/commands/groups/get_groups.py +++ b/parsec/commands/groups/get_groups.py @@ -3,12 +3,13 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output +@click.command('get_groups') + -@click.command('groups_get_groups') @pass_context @bioblend_exception @dict_output def cli(ctx): - """Displays a collection (list) of groups. + """Get all (not deleted) groups. """ return ctx.gi.groups.get_groups() diff --git a/parsec/commands/groups/show_group.py b/parsec/commands/groups/show_group.py index 80ecdb5..ec1c349 100644 --- a/parsec/commands/groups/show_group.py +++ b/parsec/commands/groups/show_group.py @@ -3,13 +3,14 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('groups_show_group') +@click.command('show_group') @click.argument("group_id", type=str) + + @pass_context @bioblend_exception @dict_output def cli(ctx, group_id): - """Display information on a single group + """Get details of a given group. """ return ctx.gi.groups.show_group(group_id) diff --git a/parsec/commands/groups/update_group.py b/parsec/commands/groups/update_group.py new file mode 100644 index 0000000..88e4f5b --- /dev/null +++ b/parsec/commands/groups/update_group.py @@ -0,0 +1,33 @@ +import click + +from parsec.cli import pass_context +from parsec.decorators import bioblend_exception, dict_output + +@click.command('update_group') +@click.argument("group_id", type=str) + +@click.option( + "--group_name", + help="A new name for the group. If None, the group name is not changed.", + type=str +) +@click.option( + "--user_ids", + help="New list of encoded user IDs for the group. It will substitute the previous list of users (with [] if not specified)", + type=str, + multiple=True +) +@click.option( + "--role_ids", + help="New list of encoded role IDs for the group. It will substitute the previous list of roles (with [] if not specified)", + type=str, + multiple=True +) + +@pass_context +@bioblend_exception +@dict_output +def cli(ctx, group_id, group_name="", user_ids=None, role_ids=None): + """Update a group. + """ + return ctx.gi.groups.update_group(group_id, group_name=group_name, user_ids=user_ids, role_ids=role_ids) diff --git a/parsec/commands/histories/create_dataset_collection.py b/parsec/commands/histories/create_dataset_collection.py index df172d4..8304081 100644 --- a/parsec/commands/histories/create_dataset_collection.py +++ b/parsec/commands/histories/create_dataset_collection.py @@ -3,16 +3,15 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('histories_create_dataset_collection') +@click.command('create_dataset_collection') @click.argument("history_id", type=str) -@click.argument("collection_description", type=str) +@click.argument("collection_description") + + @pass_context @bioblend_exception @dict_output def cli(ctx, history_id, collection_description): """Create a new dataset collection """ - return ctx.gi.histories.create_dataset_collection( - history_id, - collection_description) + return ctx.gi.histories.create_dataset_collection(history_id, collection_description) diff --git a/parsec/commands/histories/create_history.py b/parsec/commands/histories/create_history.py index 37f4455..b4ee2e3 100644 --- a/parsec/commands/histories/create_history.py +++ b/parsec/commands/histories/create_history.py @@ -3,13 +3,14 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output +@click.command('create_history') -@click.command('histories_create_history') @click.option( "--name", help="Optional name for new history", type=str ) + @pass_context @bioblend_exception @dict_output diff --git a/parsec/commands/histories/create_history_tag.py b/parsec/commands/histories/create_history_tag.py index 2d4fe0b..c380ccc 100644 --- a/parsec/commands/histories/create_history_tag.py +++ b/parsec/commands/histories/create_history_tag.py @@ -3,10 +3,11 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('histories_create_history_tag') +@click.command('create_history_tag') @click.argument("history_id", type=str) @click.argument("tag", type=str) + + @pass_context @bioblend_exception @dict_output diff --git a/parsec/commands/histories/delete_dataset.py b/parsec/commands/histories/delete_dataset.py index dbb9578..fe2435f 100644 --- a/parsec/commands/histories/delete_dataset.py +++ b/parsec/commands/histories/delete_dataset.py @@ -3,10 +3,11 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('histories_delete_dataset') +@click.command('delete_dataset') @click.argument("history_id", type=str) @click.argument("dataset_id", type=str) + + @pass_context @bioblend_exception @dict_output diff --git a/parsec/commands/histories/delete_dataset_collection.py b/parsec/commands/histories/delete_dataset_collection.py index 511ee4b..315de34 100644 --- a/parsec/commands/histories/delete_dataset_collection.py +++ b/parsec/commands/histories/delete_dataset_collection.py @@ -3,16 +3,15 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('histories_delete_dataset_collection') +@click.command('delete_dataset_collection') @click.argument("history_id", type=str) @click.argument("dataset_collection_id", type=str) + + @pass_context @bioblend_exception @dict_output def cli(ctx, history_id, dataset_collection_id): """Mark corresponding dataset collection as deleted. """ - return ctx.gi.histories.delete_dataset_collection( - history_id, - dataset_collection_id) + return ctx.gi.histories.delete_dataset_collection(history_id, dataset_collection_id) diff --git a/parsec/commands/histories/delete_history.py b/parsec/commands/histories/delete_history.py index 289a6a8..5bda7b8 100644 --- a/parsec/commands/histories/delete_history.py +++ b/parsec/commands/histories/delete_history.py @@ -3,14 +3,15 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('histories_delete_history') +@click.command('delete_history') @click.argument("history_id", type=str) + @click.option( "--purge", help="if ``True``, also purge (permanently delete) the history", is_flag=True ) + @pass_context @bioblend_exception @dict_output diff --git a/parsec/commands/histories/download_dataset.py b/parsec/commands/histories/download_dataset.py new file mode 100644 index 0000000..4ce9c36 --- /dev/null +++ b/parsec/commands/histories/download_dataset.py @@ -0,0 +1,22 @@ +import click + +from parsec.cli import pass_context +from parsec.decorators import bioblend_exception, dict_output + +@click.command('download_dataset') +@click.argument("history_id") +@click.argument("dataset_id") +@click.argument("file_path") + +@click.option( + "--use_default_filename", + help="None" +) + +@pass_context +@bioblend_exception +@dict_output +def cli(ctx, history_id, dataset_id, file_path, use_default_filename=True): + """Deprecated method, use ``bioblend.galaxy.dataset.DatasetClient.download_dataset()`` instead. + """ + return ctx.gi.histories.download_dataset(history_id, dataset_id, file_path, use_default_filename=use_default_filename) diff --git a/parsec/commands/histories/download_history.py b/parsec/commands/histories/download_history.py index be61b78..87f4a47 100644 --- a/parsec/commands/histories/download_history.py +++ b/parsec/commands/histories/download_history.py @@ -3,24 +3,21 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('histories_download_history') +@click.command('download_history') @click.argument("history_id", type=str) @click.argument("jeha_id", type=str) @click.argument("outf", type=click.File('rb+')) + @click.option( "--chunk_size", help="how many bytes at a time should be read into memory", type=int ) + @pass_context @bioblend_exception @dict_output def cli(ctx, history_id, jeha_id, outf, chunk_size=4096): """Download a history export archive. Use :meth:`export_history` to create an export. """ - return ctx.gi.histories.download_history( - history_id, - jeha_id, - outf, - chunk_size=chunk_size) + return ctx.gi.histories.download_history(history_id, jeha_id, outf, chunk_size=chunk_size) diff --git a/parsec/commands/histories/export_history.py b/parsec/commands/histories/export_history.py index 9024302..8d8784b 100644 --- a/parsec/commands/histories/export_history.py +++ b/parsec/commands/histories/export_history.py @@ -3,12 +3,12 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('histories_export_history') +@click.command('export_history') @click.argument("history_id", type=str) + @click.option( "--gzip", - help="create .tar.gz archive if :obj:`True`, else .tar", + help="create .tar.gz archive if ``True``, else .tar", is_flag=True ) @click.option( @@ -23,24 +23,14 @@ ) @click.option( "--wait", - help="if :obj:`True`, block until the export is ready; else, return immediately", + help="if ``True``, block until the export is ready; else, return immediately", is_flag=True ) + @pass_context @bioblend_exception @dict_output -def cli( - ctx, - history_id, - gzip=True, - include_hidden=False, - include_deleted=False, - wait=False): +def cli(ctx, history_id, gzip=True, include_hidden=False, include_deleted=False, wait=False): """Start a job to create an export archive for the given history. """ - return ctx.gi.histories.export_history( - history_id, - gzip=gzip, - include_hidden=include_hidden, - include_deleted=include_deleted, - wait=wait) + return ctx.gi.histories.export_history(history_id, gzip=gzip, include_hidden=include_hidden, include_deleted=include_deleted, wait=wait) diff --git a/parsec/commands/histories/get_current_history.py b/parsec/commands/histories/get_current_history.py new file mode 100644 index 0000000..427e07a --- /dev/null +++ b/parsec/commands/histories/get_current_history.py @@ -0,0 +1,15 @@ +import click + +from parsec.cli import pass_context +from parsec.decorators import bioblend_exception, dict_output + +@click.command('get_current_history') + + +@pass_context +@bioblend_exception +@dict_output +def cli(ctx): + """Deprecated method. + """ + return ctx.gi.histories.get_current_history() diff --git a/parsec/commands/histories/get_histories.py b/parsec/commands/histories/get_histories.py index c37730a..3d9f100 100644 --- a/parsec/commands/histories/get_histories.py +++ b/parsec/commands/histories/get_histories.py @@ -3,8 +3,8 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output +@click.command('get_histories') -@click.command('histories_get_histories') @click.option( "--history_id", help="Encoded history ID to filter on", @@ -19,13 +19,11 @@ "--deleted", help="None" ) + @pass_context @bioblend_exception @dict_output def cli(ctx, history_id="", name="", deleted=False): """Get all histories or filter the specific one(s) via the provided ``name`` or ``history_id``. Provide only one argument, ``name`` or ``history_id``, but not both. """ - return ctx.gi.histories.get_histories( - history_id=history_id, - name=name, - deleted=deleted) + return ctx.gi.histories.get_histories(history_id=history_id, name=name, deleted=deleted) diff --git a/parsec/commands/histories/get_most_recently_used_history.py b/parsec/commands/histories/get_most_recently_used_history.py index 15cf9ac..1c1120b 100644 --- a/parsec/commands/histories/get_most_recently_used_history.py +++ b/parsec/commands/histories/get_most_recently_used_history.py @@ -3,8 +3,9 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output +@click.command('get_most_recently_used_history') + -@click.command('histories_get_most_recently_used_history') @pass_context @bioblend_exception @dict_output diff --git a/parsec/commands/histories/get_status.py b/parsec/commands/histories/get_status.py index f5eda70..3e8e844 100644 --- a/parsec/commands/histories/get_status.py +++ b/parsec/commands/histories/get_status.py @@ -3,9 +3,10 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('histories_get_status') +@click.command('get_status') @click.argument("history_id", type=str) + + @pass_context @bioblend_exception @dict_output diff --git a/parsec/commands/histories/show_dataset.py b/parsec/commands/histories/show_dataset.py index c0745a1..7bfeee4 100644 --- a/parsec/commands/histories/show_dataset.py +++ b/parsec/commands/histories/show_dataset.py @@ -3,10 +3,11 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('histories_show_dataset') +@click.command('show_dataset') @click.argument("history_id", type=str) @click.argument("dataset_id", type=str) + + @pass_context @bioblend_exception @dict_output diff --git a/parsec/commands/histories/show_dataset_collection.py b/parsec/commands/histories/show_dataset_collection.py index 065c08e..6d778ef 100644 --- a/parsec/commands/histories/show_dataset_collection.py +++ b/parsec/commands/histories/show_dataset_collection.py @@ -3,16 +3,15 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('histories_show_dataset_collection') +@click.command('show_dataset_collection') @click.argument("history_id", type=str) @click.argument("dataset_collection_id", type=str) + + @pass_context @bioblend_exception @dict_output def cli(ctx, history_id, dataset_collection_id): """Get details about a given history dataset collection. """ - return ctx.gi.histories.show_dataset_collection( - history_id, - dataset_collection_id) + return ctx.gi.histories.show_dataset_collection(history_id, dataset_collection_id) diff --git a/parsec/commands/histories/show_dataset_provenance.py b/parsec/commands/histories/show_dataset_provenance.py index c907cec..22cedfa 100644 --- a/parsec/commands/histories/show_dataset_provenance.py +++ b/parsec/commands/histories/show_dataset_provenance.py @@ -3,22 +3,20 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('histories_show_dataset_provenance') +@click.command('show_dataset_provenance') @click.argument("history_id", type=str) @click.argument("dataset_id", type=str) + @click.option( "--follow", - help="If ``follow`` is ``True``, recursively fetch dataset provenance information for all inputs and their inputs, etc....", + help="If ``follow`` is ``True``, recursively fetch dataset provenance information for all inputs and their inputs, etc...", is_flag=True ) + @pass_context @bioblend_exception @dict_output def cli(ctx, history_id, dataset_id, follow=False): """Get details related to how dataset was created (``id``, ``job_id``, ``tool_id``, ``stdout``, ``stderr``, ``parameters``, ``inputs``, etc...). """ - return ctx.gi.histories.show_dataset_provenance( - history_id, - dataset_id, - follow=follow) + return ctx.gi.histories.show_dataset_provenance(history_id, dataset_id, follow=follow) diff --git a/parsec/commands/histories/show_history.py b/parsec/commands/histories/show_history.py index ca10dad..b8c121e 100644 --- a/parsec/commands/histories/show_history.py +++ b/parsec/commands/histories/show_history.py @@ -3,22 +3,22 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('histories_show_history') +@click.command('show_history') @click.argument("history_id", type=str) + @click.option( "--contents", - help="When true, the complete list of datasets in the given history.", - type=str + help="When ``True``, the complete list of datasets in the given history.", + is_flag=True ) @click.option( "--deleted", - help="Used when contents=True, includes deleted datasets is history dataset list", + help="Used when contents=True, includes deleted datasets in history dataset list", type=str ) @click.option( "--visible", - help="Used when contents=True, includes only visible datasets is history dataset list", + help="Used when contents=True, includes only visible datasets in history dataset list", type=str ) @click.option( @@ -31,23 +31,11 @@ help="???", type=str ) + @pass_context @bioblend_exception @dict_output -def cli( - ctx, - history_id, - contents=False, - deleted="", - visible="", - details="", - types=""): +def cli(ctx, history_id, contents=False, deleted="", visible="", details="", types=""): """Get details of a given history. By default, just get the history meta information. """ - return ctx.gi.histories.show_history( - history_id, - contents=contents, - deleted=deleted, - visible=visible, - details=details, - types=types) + return ctx.gi.histories.show_history(history_id, contents=contents, deleted=deleted, visible=visible, details=details, types=types) diff --git a/parsec/commands/histories/show_matching_datasets.py b/parsec/commands/histories/show_matching_datasets.py index 2d50586..785b83d 100644 --- a/parsec/commands/histories/show_matching_datasets.py +++ b/parsec/commands/histories/show_matching_datasets.py @@ -3,20 +3,19 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('histories_show_matching_datasets') +@click.command('show_matching_datasets') @click.argument("history_id", type=str) + @click.option( "--name_filter", - help="Only datasets whose name matches the ``name_filter`` regular expression will be returned; use plain strings for exact matches and None to match all datasets in the history.", + help="Only datasets whose name matches the ``name_filter`` regular expression will be returned; use plain strings for exact matches and None to match all datasets in the history", type=str ) + @pass_context @bioblend_exception @dict_output def cli(ctx, history_id, name_filter=""): """Get dataset details for matching datasets within a history. """ - return ctx.gi.histories.show_matching_datasets( - history_id, - name_filter=name_filter) + return ctx.gi.histories.show_matching_datasets(history_id, name_filter=name_filter) diff --git a/parsec/commands/histories/undelete_history.py b/parsec/commands/histories/undelete_history.py index f1d35d1..9fea6e3 100644 --- a/parsec/commands/histories/undelete_history.py +++ b/parsec/commands/histories/undelete_history.py @@ -3,9 +3,10 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('histories_undelete_history') +@click.command('undelete_history') @click.argument("history_id", type=str) + + @pass_context @bioblend_exception @dict_output diff --git a/parsec/commands/histories/update_dataset.py b/parsec/commands/histories/update_dataset.py index ed14e86..27f26bf 100644 --- a/parsec/commands/histories/update_dataset.py +++ b/parsec/commands/histories/update_dataset.py @@ -3,10 +3,11 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('histories_update_dataset') +@click.command('update_dataset') @click.argument("history_id", type=str) @click.argument("dataset_id", type=str) + + @pass_context @bioblend_exception @dict_output diff --git a/parsec/commands/histories/update_dataset_collection.py b/parsec/commands/histories/update_dataset_collection.py index f5cfec1..12d393c 100644 --- a/parsec/commands/histories/update_dataset_collection.py +++ b/parsec/commands/histories/update_dataset_collection.py @@ -3,16 +3,15 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('histories_update_dataset_collection') +@click.command('update_dataset_collection') @click.argument("history_id", type=str) @click.argument("dataset_collection_id", type=str) + + @pass_context @bioblend_exception @dict_output def cli(ctx, history_id, dataset_collection_id): """Update history dataset collection metadata. Some of the attributes that can be modified are documented below. """ - return ctx.gi.histories.update_dataset_collection( - history_id, - dataset_collection_id) + return ctx.gi.histories.update_dataset_collection(history_id, dataset_collection_id) diff --git a/parsec/commands/histories/update_history.py b/parsec/commands/histories/update_history.py index 3741782..722cd17 100644 --- a/parsec/commands/histories/update_history.py +++ b/parsec/commands/histories/update_history.py @@ -3,9 +3,9 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('histories_update_history') +@click.command('update_history') @click.argument("history_id", type=str) + @click.option( "--name", help="Replace history name with the given string", @@ -16,33 +16,11 @@ help="Replace history annotation with given string", type=str ) -@click.option( - "--published", - help="Change history published status", - type=bool -) -@click.option( - "--importable", - help="Change history importable status", - type=bool -) + @pass_context @bioblend_exception @dict_output -def cli(ctx, history_id, name="", annotation="", published=False, importable=False): +def cli(ctx, history_id, name="", annotation=""): """Update history metadata information. Some of the attributes that can be modified are documented below. """ - kwargs = {} - if name and len(name) > 0: - kwargs['name'] = name - if annotation and len(annotation) > 0: - kwargs['annotation'] = annotation - if published is not None: - kwargs['published'] = published - if importable is not None: - kwargs['importable'] = importable - - return ctx.gi.histories.update_history( - history_id, - **kwargs - ) + return ctx.gi.histories.update_history(history_id, name=name, annotation=annotation) diff --git a/parsec/commands/histories/upload_dataset_from_library.py b/parsec/commands/histories/upload_dataset_from_library.py index ad0398b..431af07 100644 --- a/parsec/commands/histories/upload_dataset_from_library.py +++ b/parsec/commands/histories/upload_dataset_from_library.py @@ -3,16 +3,15 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('histories_upload_dataset_from_library') +@click.command('upload_dataset_from_library') @click.argument("history_id", type=str) @click.argument("lib_dataset_id", type=str) + + @pass_context @bioblend_exception @dict_output def cli(ctx, history_id, lib_dataset_id): """Upload a dataset into the history from a library. Requires the library dataset ID, which can be obtained from the library contents. """ - return ctx.gi.histories.upload_dataset_from_library( - history_id, - lib_dataset_id) + return ctx.gi.histories.upload_dataset_from_library(history_id, lib_dataset_id) diff --git a/parsec/commands/jobs/get_jobs.py b/parsec/commands/jobs/get_jobs.py index 642598c..b7b52a4 100644 --- a/parsec/commands/jobs/get_jobs.py +++ b/parsec/commands/jobs/get_jobs.py @@ -3,12 +3,13 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output +@click.command('get_jobs') + -@click.command('jobs_get_jobs') @pass_context @bioblend_exception @dict_output def cli(ctx): - """Get a list of jobs for current user + """Get the list of jobs of the current user. """ return ctx.gi.jobs.get_jobs() diff --git a/parsec/commands/jobs/get_state.py b/parsec/commands/jobs/get_state.py index fcd88ac..a5f36e8 100644 --- a/parsec/commands/jobs/get_state.py +++ b/parsec/commands/jobs/get_state.py @@ -3,13 +3,14 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('jobs_get_state') +@click.command('get_state') @click.argument("job_id", type=str) + + @pass_context @bioblend_exception @dict_output def cli(ctx, job_id): - """Display the current state for a single job from current user. + """Display the current state for a given job of the current user. """ return ctx.gi.jobs.get_state(job_id) diff --git a/parsec/commands/jobs/search_jobs.py b/parsec/commands/jobs/search_jobs.py index aa796d7..300cbea 100644 --- a/parsec/commands/jobs/search_jobs.py +++ b/parsec/commands/jobs/search_jobs.py @@ -3,13 +3,14 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('jobs_search_jobs') +@click.command('search_jobs') @click.argument("job_info", type=dict) + + @pass_context @bioblend_exception @dict_output def cli(ctx, job_info): - """Return jobs for current user based payload content + """Return jobs for the current user based payload content. """ return ctx.gi.jobs.search_jobs(job_info) diff --git a/parsec/commands/jobs/show_job.py b/parsec/commands/jobs/show_job.py index 6d1ae06..98be1d8 100644 --- a/parsec/commands/jobs/show_job.py +++ b/parsec/commands/jobs/show_job.py @@ -3,13 +3,19 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('jobs_show_job') +@click.command('show_job') @click.argument("job_id", type=str) + +@click.option( + "--full_details", + help="when ``True``, the complete list of details for the given job.", + is_flag=True +) + @pass_context @bioblend_exception @dict_output -def cli(ctx, job_id): - """Display information on a single job from current user +def cli(ctx, job_id, full_details=False): + """Get details of a given job of the current user. """ - return ctx.gi.jobs.show_job(job_id) + return ctx.gi.jobs.show_job(job_id, full_details=full_details) diff --git a/parsec/commands/libraries/copy_from_dataset.py b/parsec/commands/libraries/copy_from_dataset.py index 82b9bd8..4b018ac 100644 --- a/parsec/commands/libraries/copy_from_dataset.py +++ b/parsec/commands/libraries/copy_from_dataset.py @@ -3,10 +3,10 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('libraries_copy_from_dataset') +@click.command('copy_from_dataset') @click.argument("library_id", type=str) @click.argument("dataset_id", type=str) + @click.option( "--folder_id", help="id of the folder where to place the uploaded files. If not provided, the root folder will be used", @@ -17,14 +17,11 @@ help="message for copying action", type=str ) + @pass_context @bioblend_exception @dict_output def cli(ctx, library_id, dataset_id, folder_id="", message=""): """Copy a Galaxy dataset into a library. """ - return ctx.gi.libraries.copy_from_dataset( - library_id, - dataset_id, - folder_id=folder_id, - message=message) + return ctx.gi.libraries.copy_from_dataset(library_id, dataset_id, folder_id=folder_id, message=message) diff --git a/parsec/commands/libraries/create_folder.py b/parsec/commands/libraries/create_folder.py index d162cfe..f39d3b0 100644 --- a/parsec/commands/libraries/create_folder.py +++ b/parsec/commands/libraries/create_folder.py @@ -3,10 +3,10 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('libraries_create_folder') +@click.command('create_folder') @click.argument("library_id", type=str) @click.argument("folder_name", type=str) + @click.option( "--description", help="description of the new folder in the data library", @@ -17,14 +17,11 @@ help="id of the folder where to create the new folder. If not provided, the root folder will be used", type=str ) + @pass_context @bioblend_exception @dict_output def cli(ctx, library_id, folder_name, description="", base_folder_id=""): """Create a folder in a library. """ - return ctx.gi.libraries.create_folder( - library_id, - folder_name, - description=description, - base_folder_id=base_folder_id) + return ctx.gi.libraries.create_folder(library_id, folder_name, description=description, base_folder_id=base_folder_id) diff --git a/parsec/commands/libraries/create_library.py b/parsec/commands/libraries/create_library.py index ff69eb2..45b5f0a 100644 --- a/parsec/commands/libraries/create_library.py +++ b/parsec/commands/libraries/create_library.py @@ -3,9 +3,9 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('libraries_create_library') +@click.command('create_library') @click.argument("name", type=str) + @click.option( "--description", help="Optional data library description", @@ -16,13 +16,11 @@ help="Optional data library synopsis", type=str ) + @pass_context @bioblend_exception @dict_output def cli(ctx, name, description="", synopsis=""): - """Create a data library with the properties defined in the arguments. Return a list of JSON dicts, looking like so:: + """Create a data library with the properties defined in the arguments. """ - return ctx.gi.libraries.create_library( - name, - description=description, - synopsis=synopsis) + return ctx.gi.libraries.create_library(name, description=description, synopsis=synopsis) diff --git a/parsec/commands/libraries/delete_library.py b/parsec/commands/libraries/delete_library.py index 6451839..d242672 100644 --- a/parsec/commands/libraries/delete_library.py +++ b/parsec/commands/libraries/delete_library.py @@ -3,9 +3,10 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('libraries_delete_library') +@click.command('delete_library') @click.argument("library_id", type=str) + + @pass_context @bioblend_exception @dict_output diff --git a/parsec/commands/libraries/delete_library_dataset.py b/parsec/commands/libraries/delete_library_dataset.py index 0e246fb..61e6b7e 100644 --- a/parsec/commands/libraries/delete_library_dataset.py +++ b/parsec/commands/libraries/delete_library_dataset.py @@ -3,22 +3,20 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('libraries_delete_library_dataset') +@click.command('delete_library_dataset') @click.argument("library_id", type=str) @click.argument("dataset_id", type=str) + @click.option( "--purged", help="Indicate that the dataset should be purged (permanently deleted)", is_flag=True ) + @pass_context @bioblend_exception @dict_output def cli(ctx, library_id, dataset_id, purged=False): """Delete a library dataset in a data library. """ - return ctx.gi.libraries.delete_library_dataset( - library_id, - dataset_id, - purged=purged) + return ctx.gi.libraries.delete_library_dataset(library_id, dataset_id, purged=purged) diff --git a/parsec/commands/libraries/get_folders.py b/parsec/commands/libraries/get_folders.py index b00dabc..4c950d9 100644 --- a/parsec/commands/libraries/get_folders.py +++ b/parsec/commands/libraries/get_folders.py @@ -3,9 +3,9 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('libraries_get_folders') +@click.command('get_folders') @click.argument("library_id") + @click.option( "--folder_id", help="filter for folder by folder id", @@ -16,19 +16,11 @@ help="filter for folder by name. For ``name`` specify the full path of the folder starting from the library's root folder, e.g. ``/subfolder/subsubfolder``.", type=str ) -@click.option( - "--deleted", - help="If set to ``True``, return folders that have been deleted.", - is_flag=True -) + @pass_context @bioblend_exception @dict_output -def cli(ctx, library_id, folder_id="", name="", deleted=False): +def cli(ctx, library_id, folder_id="", name=""): """Get all the folders or filter specific one(s) via the provided ``name`` or ``folder_id`` in data library with id ``library_id``. Provide only one argument: ``name`` or ``folder_id``, but not both. """ - return ctx.gi.libraries.get_folders( - library_id, - folder_id=folder_id, - name=name, - deleted=deleted) + return ctx.gi.libraries.get_folders(library_id, folder_id=folder_id, name=name) diff --git a/parsec/commands/libraries/get_libraries.py b/parsec/commands/libraries/get_libraries.py index ab3f40e..5cd28b8 100644 --- a/parsec/commands/libraries/get_libraries.py +++ b/parsec/commands/libraries/get_libraries.py @@ -3,8 +3,8 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output +@click.command('get_libraries') -@click.command('libraries_get_libraries') @click.option( "--library_id", help="filter for library by library id", @@ -12,21 +12,19 @@ ) @click.option( "--name", - help="If ``name`` is set and multiple names match the given name, all the libraries matching the argument will be returned.", + help="If ``name`` is set and multiple names match the given name, all the libraries matching the argument will be returned", type=str ) @click.option( "--deleted", - help="If set to ``True``, return libraries that have been deleted.", + help="If set to ``True``, return libraries that have been deleted", is_flag=True ) + @pass_context @bioblend_exception @dict_output def cli(ctx, library_id="", name="", deleted=False): """Get all the libraries or filter for specific one(s) via the provided name or ID. Provide only one argument: ``name`` or ``library_id``, but not both. """ - return ctx.gi.libraries.get_libraries( - library_id=library_id, - name=name, - deleted=deleted) + return ctx.gi.libraries.get_libraries(library_id=library_id, name=name, deleted=deleted) diff --git a/parsec/commands/libraries/get_library_permissions.py b/parsec/commands/libraries/get_library_permissions.py new file mode 100644 index 0000000..86b425a --- /dev/null +++ b/parsec/commands/libraries/get_library_permissions.py @@ -0,0 +1,16 @@ +import click + +from parsec.cli import pass_context +from parsec.decorators import bioblend_exception, dict_output + +@click.command('get_library_permissions') +@click.argument("library_id", type=str) + + +@pass_context +@bioblend_exception +@dict_output +def cli(ctx, library_id): + """Get the permessions for a library. + """ + return ctx.gi.libraries.get_library_permissions(library_id) diff --git a/parsec/commands/libraries/set_library_permissions.py b/parsec/commands/libraries/set_library_permissions.py index 21c220b..bc76924 100644 --- a/parsec/commands/libraries/set_library_permissions.py +++ b/parsec/commands/libraries/set_library_permissions.py @@ -3,42 +3,38 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('libraries_set_library_permissions') +@click.command('set_library_permissions') @click.argument("library_id", type=str) + @click.option( "--access_in", - help="list of user ids", + help="list of role ids", type=str, multiple=True ) @click.option( "--modify_in", - help="list of user ids", + help="list of role ids", type=str, multiple=True ) @click.option( "--add_in", - help="list of user ids", + help="list of role ids", type=str, multiple=True ) @click.option( "--manage_in", - help="list of user ids", + help="list of role ids", type=str, multiple=True ) + @pass_context @bioblend_exception @dict_output def cli(ctx, library_id, access_in="", modify_in="", add_in="", manage_in=""): - """Sets the permissions for a library. Note: it will override all security for this library even if you leave out a permission type. + """Set the permissions for a library. Note: it will override all security for this library even if you leave out a permission type. """ - return ctx.gi.libraries.set_library_permissions( - library_id, - access_in=access_in, - modify_in=modify_in, - add_in=add_in, - manage_in=manage_in) + return ctx.gi.libraries.set_library_permissions(library_id, access_in=access_in, modify_in=modify_in, add_in=add_in, manage_in=manage_in) diff --git a/parsec/commands/libraries/show_dataset.py b/parsec/commands/libraries/show_dataset.py index 8490195..f617072 100644 --- a/parsec/commands/libraries/show_dataset.py +++ b/parsec/commands/libraries/show_dataset.py @@ -3,10 +3,11 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('libraries_show_dataset') +@click.command('show_dataset') @click.argument("library_id", type=str) @click.argument("dataset_id", type=str) + + @pass_context @bioblend_exception @dict_output diff --git a/parsec/commands/libraries/show_folder.py b/parsec/commands/libraries/show_folder.py index a48356e..f85d16e 100644 --- a/parsec/commands/libraries/show_folder.py +++ b/parsec/commands/libraries/show_folder.py @@ -3,10 +3,11 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('libraries_show_folder') +@click.command('show_folder') @click.argument("library_id", type=str) @click.argument("folder_id", type=str) + + @pass_context @bioblend_exception @dict_output diff --git a/parsec/commands/libraries/show_library.py b/parsec/commands/libraries/show_library.py index 62de503..0b5f92a 100644 --- a/parsec/commands/libraries/show_library.py +++ b/parsec/commands/libraries/show_library.py @@ -3,14 +3,15 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('libraries_show_library') +@click.command('show_library') @click.argument("library_id", type=str) + @click.option( "--contents", - help="True if want to get contents of the library (rather than just the library details).", + help="True if want to get contents of the library (rather than just the library details)", is_flag=True ) + @pass_context @bioblend_exception @dict_output diff --git a/parsec/commands/libraries/upload_file_contents.py b/parsec/commands/libraries/upload_file_contents.py index cd567cb..2f3eb5b 100644 --- a/parsec/commands/libraries/upload_file_contents.py +++ b/parsec/commands/libraries/upload_file_contents.py @@ -3,10 +3,10 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('libraries_upload_file_contents') +@click.command('upload_file_contents') @click.argument("library_id", type=str) @click.argument("pasted_content", type=str) + @click.option( "--folder_id", help="id of the folder where to place the uploaded file. If not provided, the root folder will be used", @@ -22,15 +22,11 @@ help="Dbkey", type=str ) + @pass_context @bioblend_exception @dict_output def cli(ctx, library_id, pasted_content, folder_id="", file_type="", dbkey=""): """Upload pasted_content to a data library as a new file. """ - return ctx.gi.libraries.upload_file_contents( - library_id, - pasted_content, - folder_id=folder_id, - file_type=file_type, - dbkey=dbkey) + return ctx.gi.libraries.upload_file_contents(library_id, pasted_content, folder_id=folder_id, file_type=file_type, dbkey=dbkey) diff --git a/parsec/commands/libraries/upload_file_from_local_path.py b/parsec/commands/libraries/upload_file_from_local_path.py index 84900c1..b0a26e8 100644 --- a/parsec/commands/libraries/upload_file_from_local_path.py +++ b/parsec/commands/libraries/upload_file_from_local_path.py @@ -3,10 +3,10 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('libraries_upload_file_from_local_path') +@click.command('upload_file_from_local_path') @click.argument("library_id", type=str) @click.argument("file_local_path", type=str) + @click.option( "--folder_id", help="id of the folder where to place the uploaded file. If not provided, the root folder will be used", @@ -22,21 +22,11 @@ help="Dbkey", type=str ) + @pass_context @bioblend_exception @dict_output -def cli( - ctx, - library_id, - file_local_path, - folder_id="", - file_type="", - dbkey=""): +def cli(ctx, library_id, file_local_path, folder_id="", file_type="", dbkey=""): """Read local file contents from file_local_path and upload data to a library. """ - return ctx.gi.libraries.upload_file_from_local_path( - library_id, - file_local_path, - folder_id=folder_id, - file_type=file_type, - dbkey=dbkey) + return ctx.gi.libraries.upload_file_from_local_path(library_id, file_local_path, folder_id=folder_id, file_type=file_type, dbkey=dbkey) diff --git a/parsec/commands/libraries/upload_file_from_server.py b/parsec/commands/libraries/upload_file_from_server.py index a5d43e6..178f39f 100644 --- a/parsec/commands/libraries/upload_file_from_server.py +++ b/parsec/commands/libraries/upload_file_from_server.py @@ -3,10 +3,10 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('libraries_upload_file_from_server') +@click.command('upload_file_from_server') @click.argument("library_id", type=str) @click.argument("server_dir", type=str) + @click.option( "--folder_id", help="id of the folder where to place the uploaded files. If not provided, the root folder will be used", @@ -32,25 +32,11 @@ help="???", type=str ) + @pass_context @bioblend_exception @dict_output -def cli( - ctx, - library_id, - server_dir, - folder_id="", - file_type="", - dbkey="", - link_data_only="", - roles=""): +def cli(ctx, library_id, server_dir, folder_id="", file_type="", dbkey="", link_data_only="", roles=""): """Upload all files in the specified subdirectory of the Galaxy library import directory to a library. """ - return ctx.gi.libraries.upload_file_from_server( - library_id, - server_dir, - folder_id=folder_id, - file_type=file_type, - dbkey=dbkey, - link_data_only=link_data_only, - roles=roles) + return ctx.gi.libraries.upload_file_from_server(library_id, server_dir, folder_id=folder_id, file_type=file_type, dbkey=dbkey, link_data_only=link_data_only, roles=roles) diff --git a/parsec/commands/libraries/upload_file_from_url.py b/parsec/commands/libraries/upload_file_from_url.py index a150967..d7a4e67 100644 --- a/parsec/commands/libraries/upload_file_from_url.py +++ b/parsec/commands/libraries/upload_file_from_url.py @@ -3,10 +3,10 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('libraries_upload_file_from_url') +@click.command('upload_file_from_url') @click.argument("library_id", type=str) @click.argument("file_url", type=str) + @click.option( "--folder_id", help="id of the folder where to place the uploaded file. If not provided, the root folder will be used", @@ -22,15 +22,11 @@ help="Dbkey", type=str ) + @pass_context @bioblend_exception @dict_output def cli(ctx, library_id, file_url, folder_id="", file_type="", dbkey=""): """Upload a file to a library from a URL. """ - return ctx.gi.libraries.upload_file_from_url( - library_id, - file_url, - folder_id=folder_id, - file_type=file_type, - dbkey=dbkey) + return ctx.gi.libraries.upload_file_from_url(library_id, file_url, folder_id=folder_id, file_type=file_type, dbkey=dbkey) diff --git a/parsec/commands/libraries/upload_from_galaxy_filesystem.py b/parsec/commands/libraries/upload_from_galaxy_filesystem.py index 36c3971..04865a2 100644 --- a/parsec/commands/libraries/upload_from_galaxy_filesystem.py +++ b/parsec/commands/libraries/upload_from_galaxy_filesystem.py @@ -3,10 +3,10 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('libraries_upload_from_galaxy_filesystem') +@click.command('upload_from_galaxy_filesystem') @click.argument("library_id", type=str) @click.argument("filesystem_paths", type=str) + @click.option( "--folder_id", help="id of the folder where to place the uploaded files. If not provided, the root folder will be used", @@ -32,25 +32,11 @@ help="???", type=str ) + @pass_context @bioblend_exception @dict_output -def cli( - ctx, - library_id, - filesystem_paths, - folder_id="", - file_type="", - dbkey="", - link_data_only="", - roles=""): +def cli(ctx, library_id, filesystem_paths, folder_id="", file_type="", dbkey="", link_data_only="", roles=""): """Upload a set of files already present on the filesystem of the Galaxy server to a library. """ - return ctx.gi.libraries.upload_from_galaxy_filesystem( - library_id, - filesystem_paths, - folder_id=folder_id, - file_type=file_type, - dbkey=dbkey, - link_data_only=link_data_only, - roles=roles) + return ctx.gi.libraries.upload_from_galaxy_filesystem(library_id, filesystem_paths, folder_id=folder_id, file_type=file_type, dbkey=dbkey, link_data_only=link_data_only, roles=roles) diff --git a/parsec/commands/quotas/get_quotas.py b/parsec/commands/quotas/get_quotas.py index bb86aea..b2ad3de 100644 --- a/parsec/commands/quotas/get_quotas.py +++ b/parsec/commands/quotas/get_quotas.py @@ -3,13 +3,14 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output +@click.command('get_quotas') -@click.command('quotas_get_quotas') @click.option( "--deleted", help="Only return quota(s) that have been deleted", is_flag=True ) + @pass_context @bioblend_exception @dict_output diff --git a/parsec/commands/quotas/show_quota.py b/parsec/commands/quotas/show_quota.py index a55d590..9125ea4 100644 --- a/parsec/commands/quotas/show_quota.py +++ b/parsec/commands/quotas/show_quota.py @@ -3,14 +3,15 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('quotas_show_quota') +@click.command('show_quota') @click.argument("quota_id", type=str) + @click.option( "--deleted", help="Search for quota in list of ones already marked as deleted", is_flag=True ) + @pass_context @bioblend_exception @dict_output diff --git a/parsec/commands/roles/get_roles.py b/parsec/commands/roles/get_roles.py index 8b350a2..4de3fdc 100644 --- a/parsec/commands/roles/get_roles.py +++ b/parsec/commands/roles/get_roles.py @@ -3,8 +3,9 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output +@click.command('get_roles') + -@click.command('roles_get_roles') @pass_context @bioblend_exception @dict_output diff --git a/parsec/commands/roles/show_role.py b/parsec/commands/roles/show_role.py index d8c92dc..ee803bc 100644 --- a/parsec/commands/roles/show_role.py +++ b/parsec/commands/roles/show_role.py @@ -3,9 +3,10 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('roles_show_role') +@click.command('show_role') @click.argument("role_id", type=str) + + @pass_context @bioblend_exception @dict_output diff --git a/scripts/autobuilder.py b/scripts/autobuilder.py index 53ef262..d4b8baf 100644 --- a/scripts/autobuilder.py +++ b/scripts/autobuilder.py @@ -198,13 +198,12 @@ def process(self): def process_client(self, module, sm, ssm_name): log.info("Processing bioblend.%s.%s", module, ssm_name) ssm = getattr(sm, ssm_name) - wrote_modules = [] for f in dir(ssm): if f[0] == '_' or f[0].upper() == f[0]: continue if f in IGNORE_LIST or '%s.%s' % (ssm, f) in IGNORE_LIST: continue - wrote_modules.append(self.orig(module, sm, ssm, f)) + self.orig(module, sm, ssm, f) # Write module __init__ with open(os.path.join('parsec', 'commands', module, '__init__.py'), 'w') as handle: pass @@ -212,13 +211,16 @@ def process_client(self, module, sm, ssm_name): with open(os.path.join('parsec', 'commands', 'cmd_%s.py' % module), 'w') as handle: handle.write('import click\n') # for function: - for idx, (module, func) in enumerate(wrote_modules): - handle.write('from parsec.commands.%s.%s import cli as func%s\n' % (module, func, idx)) + files = list(glob.glob("parsec/commands/%s/*.py" % module)) + files = [f for f in files if "__init__.py" not in f] + for idx, path in enumerate(files): + fn = path.replace('/', '.')[0:-3] + handle.write('from %s import cli as func%s\n' % (fn, idx)) handle.write('\n@click.group()\n') handle.write('def cli():\n') handle.write('\tpass\n\n') - for i in range(len(wrote_modules)): + for i in range(len(files) - 1): handle.write('cli.add_command(func%d)\n' % i) def orig(self, module_name, submodule, subsubmodule, function_name): @@ -315,7 +317,6 @@ def orig(self, module_name, submodule, subsubmodule, function_name): # Save file with open(cmd_path, 'w') as handle: handle.write(self.template('click', data)) - return [module_name, function_name] if __name__ == '__main__': z = ScriptBuilder() From 14052e29eabca59e00735e161cbc350313298640 Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Tue, 2 May 2017 18:49:29 +0000 Subject: [PATCH 10/80] dropped a function --- parsec/commands/cmd_config.py | 1 + parsec/commands/cmd_datasets.py | 1 + parsec/commands/cmd_datatypes.py | 1 + parsec/commands/cmd_folders.py | 1 + parsec/commands/cmd_forms.py | 1 + parsec/commands/cmd_ftpfiles.py | 1 + parsec/commands/cmd_genomes.py | 1 + parsec/commands/cmd_groups.py | 1 + parsec/commands/cmd_histories.py | 1 + parsec/commands/cmd_jobs.py | 1 + parsec/commands/cmd_libraries.py | 1 + parsec/commands/cmd_quotas.py | 1 + parsec/commands/cmd_roles.py | 1 + parsec/commands/histories/delete_dataset.py | 9 +++++++-- parsec/commands/histories/download_dataset.py | 2 +- parsec/commands/histories/update_history.py | 14 ++------------ scripts/autobuilder.py | 2 +- 17 files changed, 24 insertions(+), 16 deletions(-) diff --git a/parsec/commands/cmd_config.py b/parsec/commands/cmd_config.py index c864194..6723f23 100644 --- a/parsec/commands/cmd_config.py +++ b/parsec/commands/cmd_config.py @@ -9,3 +9,4 @@ def cli(): cli.add_command(func0) cli.add_command(func1) +cli.add_command(func2) diff --git a/parsec/commands/cmd_datasets.py b/parsec/commands/cmd_datasets.py index 90b9e63..3a70451 100644 --- a/parsec/commands/cmd_datasets.py +++ b/parsec/commands/cmd_datasets.py @@ -11,3 +11,4 @@ def cli(): cli.add_command(func0) cli.add_command(func1) cli.add_command(func2) +cli.add_command(func3) diff --git a/parsec/commands/cmd_datatypes.py b/parsec/commands/cmd_datatypes.py index 188eb1f..71ffc2a 100644 --- a/parsec/commands/cmd_datatypes.py +++ b/parsec/commands/cmd_datatypes.py @@ -7,3 +7,4 @@ def cli(): pass cli.add_command(func0) +cli.add_command(func1) diff --git a/parsec/commands/cmd_folders.py b/parsec/commands/cmd_folders.py index 3a3f8fe..6cfb816 100644 --- a/parsec/commands/cmd_folders.py +++ b/parsec/commands/cmd_folders.py @@ -7,3 +7,4 @@ def cli(): pass cli.add_command(func0) +cli.add_command(func1) diff --git a/parsec/commands/cmd_forms.py b/parsec/commands/cmd_forms.py index 0b535c5..7cf8d41 100644 --- a/parsec/commands/cmd_forms.py +++ b/parsec/commands/cmd_forms.py @@ -9,3 +9,4 @@ def cli(): cli.add_command(func0) cli.add_command(func1) +cli.add_command(func2) diff --git a/parsec/commands/cmd_ftpfiles.py b/parsec/commands/cmd_ftpfiles.py index c57d96c..87ff200 100644 --- a/parsec/commands/cmd_ftpfiles.py +++ b/parsec/commands/cmd_ftpfiles.py @@ -5,3 +5,4 @@ def cli(): pass +cli.add_command(func0) diff --git a/parsec/commands/cmd_genomes.py b/parsec/commands/cmd_genomes.py index 2a47ebd..d9bdbe1 100644 --- a/parsec/commands/cmd_genomes.py +++ b/parsec/commands/cmd_genomes.py @@ -9,3 +9,4 @@ def cli(): cli.add_command(func0) cli.add_command(func1) +cli.add_command(func2) diff --git a/parsec/commands/cmd_groups.py b/parsec/commands/cmd_groups.py index eed98f6..692f00b 100644 --- a/parsec/commands/cmd_groups.py +++ b/parsec/commands/cmd_groups.py @@ -23,3 +23,4 @@ def cli(): cli.add_command(func6) cli.add_command(func7) cli.add_command(func8) +cli.add_command(func9) diff --git a/parsec/commands/cmd_histories.py b/parsec/commands/cmd_histories.py index 0253db3..614ddb1 100644 --- a/parsec/commands/cmd_histories.py +++ b/parsec/commands/cmd_histories.py @@ -49,3 +49,4 @@ def cli(): cli.add_command(func19) cli.add_command(func20) cli.add_command(func21) +cli.add_command(func22) diff --git a/parsec/commands/cmd_jobs.py b/parsec/commands/cmd_jobs.py index a0b2bd2..a3b551e 100644 --- a/parsec/commands/cmd_jobs.py +++ b/parsec/commands/cmd_jobs.py @@ -11,3 +11,4 @@ def cli(): cli.add_command(func0) cli.add_command(func1) cli.add_command(func2) +cli.add_command(func3) diff --git a/parsec/commands/cmd_libraries.py b/parsec/commands/cmd_libraries.py index e36e014..d170c18 100644 --- a/parsec/commands/cmd_libraries.py +++ b/parsec/commands/cmd_libraries.py @@ -37,3 +37,4 @@ def cli(): cli.add_command(func13) cli.add_command(func14) cli.add_command(func15) +cli.add_command(func16) diff --git a/parsec/commands/cmd_quotas.py b/parsec/commands/cmd_quotas.py index ecbba3c..011c284 100644 --- a/parsec/commands/cmd_quotas.py +++ b/parsec/commands/cmd_quotas.py @@ -7,3 +7,4 @@ def cli(): pass cli.add_command(func0) +cli.add_command(func1) diff --git a/parsec/commands/cmd_roles.py b/parsec/commands/cmd_roles.py index 00ddae5..80121e7 100644 --- a/parsec/commands/cmd_roles.py +++ b/parsec/commands/cmd_roles.py @@ -7,3 +7,4 @@ def cli(): pass cli.add_command(func0) +cli.add_command(func1) diff --git a/parsec/commands/histories/delete_dataset.py b/parsec/commands/histories/delete_dataset.py index fe2435f..f842399 100644 --- a/parsec/commands/histories/delete_dataset.py +++ b/parsec/commands/histories/delete_dataset.py @@ -7,11 +7,16 @@ @click.argument("history_id", type=str) @click.argument("dataset_id", type=str) +@click.option( + "--purge", + help="if ``True``, also purge (permanently delete) the dataset", + is_flag=True +) @pass_context @bioblend_exception @dict_output -def cli(ctx, history_id, dataset_id): +def cli(ctx, history_id, dataset_id, purge=False): """Mark corresponding dataset as deleted. """ - return ctx.gi.histories.delete_dataset(history_id, dataset_id) + return ctx.gi.histories.delete_dataset(history_id, dataset_id, purge=purge) diff --git a/parsec/commands/histories/download_dataset.py b/parsec/commands/histories/download_dataset.py index 4ce9c36..56b8df0 100644 --- a/parsec/commands/histories/download_dataset.py +++ b/parsec/commands/histories/download_dataset.py @@ -17,6 +17,6 @@ @bioblend_exception @dict_output def cli(ctx, history_id, dataset_id, file_path, use_default_filename=True): - """Deprecated method, use ``bioblend.galaxy.dataset.DatasetClient.download_dataset()`` instead. + """Deprecated method, use :meth:`~bioblend.galaxy.datasets.DatasetClient.download_dataset` instead. """ return ctx.gi.histories.download_dataset(history_id, dataset_id, file_path, use_default_filename=use_default_filename) diff --git a/parsec/commands/histories/update_history.py b/parsec/commands/histories/update_history.py index 722cd17..26382e2 100644 --- a/parsec/commands/histories/update_history.py +++ b/parsec/commands/histories/update_history.py @@ -6,21 +6,11 @@ @click.command('update_history') @click.argument("history_id", type=str) -@click.option( - "--name", - help="Replace history name with the given string", - type=str -) -@click.option( - "--annotation", - help="Replace history annotation with given string", - type=str -) @pass_context @bioblend_exception @dict_output -def cli(ctx, history_id, name="", annotation=""): +def cli(ctx, history_id): """Update history metadata information. Some of the attributes that can be modified are documented below. """ - return ctx.gi.histories.update_history(history_id, name=name, annotation=annotation) + return ctx.gi.histories.update_history(history_id) diff --git a/scripts/autobuilder.py b/scripts/autobuilder.py index d4b8baf..d84bda7 100644 --- a/scripts/autobuilder.py +++ b/scripts/autobuilder.py @@ -220,7 +220,7 @@ def process_client(self, module, sm, ssm_name): handle.write('\n@click.group()\n') handle.write('def cli():\n') handle.write('\tpass\n\n') - for i in range(len(files) - 1): + for i in range(len(files)): handle.write('cli.add_command(func%d)\n' % i) def orig(self, module_name, submodule, subsubmodule, function_name): From 3798d30d5d3eb3606921334618b2708cbf4a67a2 Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Tue, 2 May 2017 18:50:30 +0000 Subject: [PATCH 11/80] ok, better --- parsec/cli.py | 2 +- parsec/commands/cmd_config.py | 4 +- parsec/commands/config/cmd_config_init.py | 58 ----------------------- 3 files changed, 2 insertions(+), 62 deletions(-) delete mode 100644 parsec/commands/config/cmd_config_init.py diff --git a/parsec/cli.py b/parsec/cli.py index e860eac..3d05a9f 100644 --- a/parsec/cli.py +++ b/parsec/cli.py @@ -54,7 +54,7 @@ def name_to_command(name): try: if sys.version_info[0] == 2: name = name.encode('ascii', 'replace') - mod_name = 'parsec.commands.config.cmd_' + name + mod_name = 'parsec.commands.cmd_' + name mod = __import__(mod_name, None, None, ['cli']) except ImportError as e: error("Problem loading command %s, exception %s" % (name, e)) diff --git a/parsec/commands/cmd_config.py b/parsec/commands/cmd_config.py index 6723f23..aedfdf4 100644 --- a/parsec/commands/cmd_config.py +++ b/parsec/commands/cmd_config.py @@ -1,7 +1,6 @@ import click from parsec.commands.config.init import cli as func0 -from parsec.commands.config.cmd_config_init import cli as func1 -from parsec.commands.config.get_config import cli as func2 +from parsec.commands.config.get_config import cli as func1 @click.group() def cli(): @@ -9,4 +8,3 @@ def cli(): cli.add_command(func0) cli.add_command(func1) -cli.add_command(func2) diff --git a/parsec/commands/config/cmd_config_init.py b/parsec/commands/config/cmd_config_init.py deleted file mode 100644 index 2af61c1..0000000 --- a/parsec/commands/config/cmd_config_init.py +++ /dev/null @@ -1,58 +0,0 @@ -import os - -import click - -from parsec.cli import pass_context -from parsec import config -from parsec.io import warn, info - -CONFIG_TEMPLATE = """## Parsec Global Configuration File. -# Each stanza should contian a single galaxy server to control. -# -# You can set the key __default to the name of a default instance -# __default: local - -local: - key: "%(key)s" - email: "" - password: "" - url: "%(url)s" - admin: %(admin)s -""" - -SUCCESS_MESSAGE = ( - "Wrote configuration template to %s, " - "please open with editor and fill out." -) - - -@click.command("config_init") -@click.option( - '--url', - help="URL to galaxy server", -) -@click.option( - '--api_key', - help="API key for galaxy server", -) -@click.option( - '--admin', - is_flag=True, - help="This API key is an admin/master API key", -) -@pass_context -def cli(ctx, url=None, api_key=None, admin=False, **kwds): - """Help initialize global configuration (in home directory) - """ - # TODO: prompt for values someday. - config_path = config.global_config_path() - if os.path.exists(config_path): - warn("File %s already exists, exiting." % config_path) - return -1 - with open(config_path, "w") as f: - f.write( - CONFIG_TEMPLATE % { - 'key': '' if api_key is None else api_key, - 'url': '' if url is None else url, - 'admin': admin}) - info(SUCCESS_MESSAGE % config_path) From 6938df9b074926dca48ec55ad8a4e47dd49014c9 Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Tue, 2 May 2017 18:53:00 +0000 Subject: [PATCH 12/80] Finish run --- parsec/commands/cmd_tool_data.py | 14 +++++ parsec/commands/cmd_tools.py | 24 +++++++++ parsec/commands/cmd_toolshed.py | 12 +++++ parsec/commands/cmd_users.py | 22 ++++++++ parsec/commands/cmd_visual.py | 10 ++++ parsec/commands/cmd_workflows.py | 42 +++++++++++++++ parsec/commands/tool_data/__init__.py | 0 .../commands/tool_data/delete_data_table.py | 17 +++++++ parsec/commands/tool_data/get_data_tables.py | 15 ++++++ .../commands/tool_data/reload_data_table.py | 16 ++++++ parsec/commands/tool_data/show_data_table.py | 16 ++++++ parsec/commands/tools/get_tool_panel.py | 3 +- parsec/commands/tools/get_tools.py | 11 ++-- parsec/commands/tools/install_dependencies.py | 16 ++++++ parsec/commands/tools/paste_content.py | 5 +- parsec/commands/tools/put_url.py | 5 +- parsec/commands/tools/run_tool.py | 5 +- parsec/commands/tools/show_tool.py | 10 ++-- parsec/commands/tools/upload_file.py | 7 +-- parsec/commands/tools/upload_from_ftp.py | 17 +++++++ parsec/commands/toolshed/__init__.py | 0 parsec/commands/toolshed/get_repositories.py | 15 ++++++ .../toolshed/install_repository_revision.py | 44 ++++++++++++++++ parsec/commands/toolshed/show_repository.py | 16 ++++++ parsec/commands/users/create_local_user.py | 7 +-- parsec/commands/users/create_remote_user.py | 5 +- parsec/commands/users/create_user_apikey.py | 7 +-- parsec/commands/users/delete_user.py | 21 ++++++++ parsec/commands/users/get_current_user.py | 5 +- parsec/commands/users/get_users.py | 3 +- parsec/commands/users/show_user.py | 9 ++-- parsec/commands/visual/get_visualizations.py | 5 +- parsec/commands/visual/show_visualization.py | 7 +-- .../commands/workflows/cancel_invocation.py | 17 +++++++ parsec/commands/workflows/delete_workflow.py | 5 +- .../workflows/export_workflow_dict.py | 16 ++++++ .../workflows/export_workflow_json.py | 7 +-- .../export_workflow_to_local_path.py | 12 ++--- parsec/commands/workflows/get_invocations.py | 16 ++++++ .../commands/workflows/get_workflow_inputs.py | 5 +- parsec/commands/workflows/get_workflows.py | 10 ++-- .../workflows/import_shared_workflow.py | 7 +-- .../workflows/import_workflow_dict.py | 16 ++++++ .../import_workflow_from_local_path.py | 5 +- .../workflows/import_workflow_json.py | 7 +-- parsec/commands/workflows/invoke_workflow.py | 51 +++++++++++++++++++ .../workflows/run_invocation_step_action.py | 19 +++++++ parsec/commands/workflows/run_workflow.py | 36 +++++-------- parsec/commands/workflows/show_invocation.py | 17 +++++++ .../workflows/show_invocation_step.py | 18 +++++++ parsec/commands/workflows/show_workflow.py | 5 +- 51 files changed, 584 insertions(+), 96 deletions(-) create mode 100644 parsec/commands/cmd_tool_data.py create mode 100644 parsec/commands/cmd_tools.py create mode 100644 parsec/commands/cmd_toolshed.py create mode 100644 parsec/commands/cmd_users.py create mode 100644 parsec/commands/cmd_visual.py create mode 100644 parsec/commands/cmd_workflows.py create mode 100644 parsec/commands/tool_data/__init__.py create mode 100644 parsec/commands/tool_data/delete_data_table.py create mode 100644 parsec/commands/tool_data/get_data_tables.py create mode 100644 parsec/commands/tool_data/reload_data_table.py create mode 100644 parsec/commands/tool_data/show_data_table.py create mode 100644 parsec/commands/tools/install_dependencies.py create mode 100644 parsec/commands/tools/upload_from_ftp.py create mode 100644 parsec/commands/toolshed/__init__.py create mode 100644 parsec/commands/toolshed/get_repositories.py create mode 100644 parsec/commands/toolshed/install_repository_revision.py create mode 100644 parsec/commands/toolshed/show_repository.py create mode 100644 parsec/commands/users/delete_user.py create mode 100644 parsec/commands/workflows/cancel_invocation.py create mode 100644 parsec/commands/workflows/export_workflow_dict.py create mode 100644 parsec/commands/workflows/get_invocations.py create mode 100644 parsec/commands/workflows/import_workflow_dict.py create mode 100644 parsec/commands/workflows/invoke_workflow.py create mode 100644 parsec/commands/workflows/run_invocation_step_action.py create mode 100644 parsec/commands/workflows/show_invocation.py create mode 100644 parsec/commands/workflows/show_invocation_step.py diff --git a/parsec/commands/cmd_tool_data.py b/parsec/commands/cmd_tool_data.py new file mode 100644 index 0000000..8bb5963 --- /dev/null +++ b/parsec/commands/cmd_tool_data.py @@ -0,0 +1,14 @@ +import click +from parsec.commands.tool_data.get_data_tables import cli as func0 +from parsec.commands.tool_data.show_data_table import cli as func1 +from parsec.commands.tool_data.delete_data_table import cli as func2 +from parsec.commands.tool_data.reload_data_table import cli as func3 + +@click.group() +def cli(): + pass + +cli.add_command(func0) +cli.add_command(func1) +cli.add_command(func2) +cli.add_command(func3) diff --git a/parsec/commands/cmd_tools.py b/parsec/commands/cmd_tools.py new file mode 100644 index 0000000..a55a311 --- /dev/null +++ b/parsec/commands/cmd_tools.py @@ -0,0 +1,24 @@ +import click +from parsec.commands.tools.upload_from_ftp import cli as func0 +from parsec.commands.tools.get_tool_panel import cli as func1 +from parsec.commands.tools.paste_content import cli as func2 +from parsec.commands.tools.show_tool import cli as func3 +from parsec.commands.tools.install_dependencies import cli as func4 +from parsec.commands.tools.run_tool import cli as func5 +from parsec.commands.tools.upload_file import cli as func6 +from parsec.commands.tools.get_tools import cli as func7 +from parsec.commands.tools.put_url import cli as func8 + +@click.group() +def cli(): + pass + +cli.add_command(func0) +cli.add_command(func1) +cli.add_command(func2) +cli.add_command(func3) +cli.add_command(func4) +cli.add_command(func5) +cli.add_command(func6) +cli.add_command(func7) +cli.add_command(func8) diff --git a/parsec/commands/cmd_toolshed.py b/parsec/commands/cmd_toolshed.py new file mode 100644 index 0000000..4c2d86e --- /dev/null +++ b/parsec/commands/cmd_toolshed.py @@ -0,0 +1,12 @@ +import click +from parsec.commands.toolshed.install_repository_revision import cli as func0 +from parsec.commands.toolshed.get_repositories import cli as func1 +from parsec.commands.toolshed.show_repository import cli as func2 + +@click.group() +def cli(): + pass + +cli.add_command(func0) +cli.add_command(func1) +cli.add_command(func2) diff --git a/parsec/commands/cmd_users.py b/parsec/commands/cmd_users.py new file mode 100644 index 0000000..dab3d74 --- /dev/null +++ b/parsec/commands/cmd_users.py @@ -0,0 +1,22 @@ +import click +from parsec.commands.users.get_users import cli as func0 +from parsec.commands.users.delete_user import cli as func1 +from parsec.commands.users.get_current_user import cli as func2 +from parsec.commands.users.show_user import cli as func3 +from parsec.commands.users.create_user_apikey import cli as func4 +from parsec.commands.users.create_local_user import cli as func5 +from parsec.commands.users.create_remote_user import cli as func6 +from parsec.commands.users.create_user import cli as func7 + +@click.group() +def cli(): + pass + +cli.add_command(func0) +cli.add_command(func1) +cli.add_command(func2) +cli.add_command(func3) +cli.add_command(func4) +cli.add_command(func5) +cli.add_command(func6) +cli.add_command(func7) diff --git a/parsec/commands/cmd_visual.py b/parsec/commands/cmd_visual.py new file mode 100644 index 0000000..15dd6a6 --- /dev/null +++ b/parsec/commands/cmd_visual.py @@ -0,0 +1,10 @@ +import click +from parsec.commands.visual.show_visualization import cli as func0 +from parsec.commands.visual.get_visualizations import cli as func1 + +@click.group() +def cli(): + pass + +cli.add_command(func0) +cli.add_command(func1) diff --git a/parsec/commands/cmd_workflows.py b/parsec/commands/cmd_workflows.py new file mode 100644 index 0000000..fe702e7 --- /dev/null +++ b/parsec/commands/cmd_workflows.py @@ -0,0 +1,42 @@ +import click +from parsec.commands.workflows.get_invocations import cli as func0 +from parsec.commands.workflows.import_workflow_dict import cli as func1 +from parsec.commands.workflows.get_workflow_inputs import cli as func2 +from parsec.commands.workflows.import_workflow_from_local_path import cli as func3 +from parsec.commands.workflows.delete_workflow import cli as func4 +from parsec.commands.workflows.export_workflow_to_local_path import cli as func5 +from parsec.commands.workflows.run_invocation_step_action import cli as func6 +from parsec.commands.workflows.invoke_workflow import cli as func7 +from parsec.commands.workflows.import_workflow_json import cli as func8 +from parsec.commands.workflows.run_workflow import cli as func9 +from parsec.commands.workflows.get_workflows import cli as func10 +from parsec.commands.workflows.export_workflow_json import cli as func11 +from parsec.commands.workflows.export_workflow_dict import cli as func12 +from parsec.commands.workflows.show_workflow import cli as func13 +from parsec.commands.workflows.show_invocation import cli as func14 +from parsec.commands.workflows.import_shared_workflow import cli as func15 +from parsec.commands.workflows.show_invocation_step import cli as func16 +from parsec.commands.workflows.cancel_invocation import cli as func17 + +@click.group() +def cli(): + pass + +cli.add_command(func0) +cli.add_command(func1) +cli.add_command(func2) +cli.add_command(func3) +cli.add_command(func4) +cli.add_command(func5) +cli.add_command(func6) +cli.add_command(func7) +cli.add_command(func8) +cli.add_command(func9) +cli.add_command(func10) +cli.add_command(func11) +cli.add_command(func12) +cli.add_command(func13) +cli.add_command(func14) +cli.add_command(func15) +cli.add_command(func16) +cli.add_command(func17) diff --git a/parsec/commands/tool_data/__init__.py b/parsec/commands/tool_data/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/parsec/commands/tool_data/delete_data_table.py b/parsec/commands/tool_data/delete_data_table.py new file mode 100644 index 0000000..d8c04bc --- /dev/null +++ b/parsec/commands/tool_data/delete_data_table.py @@ -0,0 +1,17 @@ +import click + +from parsec.cli import pass_context +from parsec.decorators import bioblend_exception, dict_output + +@click.command('delete_data_table') +@click.argument("data_table_id", type=str) +@click.argument("values", type=str) + + +@pass_context +@bioblend_exception +@dict_output +def cli(ctx, data_table_id, values): + """Delete an item from a data table. + """ + return ctx.gi.tool_data.delete_data_table(data_table_id, values) diff --git a/parsec/commands/tool_data/get_data_tables.py b/parsec/commands/tool_data/get_data_tables.py new file mode 100644 index 0000000..dfa3d5a --- /dev/null +++ b/parsec/commands/tool_data/get_data_tables.py @@ -0,0 +1,15 @@ +import click + +from parsec.cli import pass_context +from parsec.decorators import bioblend_exception, dict_output + +@click.command('get_data_tables') + + +@pass_context +@bioblend_exception +@dict_output +def cli(ctx): + """Get the list of all data tables. + """ + return ctx.gi.tool_data.get_data_tables() diff --git a/parsec/commands/tool_data/reload_data_table.py b/parsec/commands/tool_data/reload_data_table.py new file mode 100644 index 0000000..becf3d0 --- /dev/null +++ b/parsec/commands/tool_data/reload_data_table.py @@ -0,0 +1,16 @@ +import click + +from parsec.cli import pass_context +from parsec.decorators import bioblend_exception, dict_output + +@click.command('reload_data_table') +@click.argument("data_table_id", type=str) + + +@pass_context +@bioblend_exception +@dict_output +def cli(ctx, data_table_id): + """Reload a data table. + """ + return ctx.gi.tool_data.reload_data_table(data_table_id) diff --git a/parsec/commands/tool_data/show_data_table.py b/parsec/commands/tool_data/show_data_table.py new file mode 100644 index 0000000..9c038a9 --- /dev/null +++ b/parsec/commands/tool_data/show_data_table.py @@ -0,0 +1,16 @@ +import click + +from parsec.cli import pass_context +from parsec.decorators import bioblend_exception, dict_output + +@click.command('show_data_table') +@click.argument("data_table_id", type=str) + + +@pass_context +@bioblend_exception +@dict_output +def cli(ctx, data_table_id): + """Get details of a given data table. + """ + return ctx.gi.tool_data.show_data_table(data_table_id) diff --git a/parsec/commands/tools/get_tool_panel.py b/parsec/commands/tools/get_tool_panel.py index 6342217..442940d 100644 --- a/parsec/commands/tools/get_tool_panel.py +++ b/parsec/commands/tools/get_tool_panel.py @@ -3,8 +3,9 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output +@click.command('get_tool_panel') + -@click.command('tools_get_tool_panel') @pass_context @bioblend_exception @dict_output diff --git a/parsec/commands/tools/get_tools.py b/parsec/commands/tools/get_tools.py index 748c4cf..5375713 100644 --- a/parsec/commands/tools/get_tools.py +++ b/parsec/commands/tools/get_tools.py @@ -3,8 +3,8 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output +@click.command('get_tools') -@click.command('tools_get_tools') @click.option( "--tool_id", help="id of the requested tool", @@ -17,15 +17,14 @@ ) @click.option( "--trackster", - help="if True, only tools that are compatible with Trackster are returned" + help="if True, only tools that are compatible with Trackster are returned", + is_flag=True ) + @pass_context @bioblend_exception @dict_output def cli(ctx, tool_id="", name="", trackster=""): """Get all tools or filter the specific one(s) via the provided ``name`` or ``tool_id``. Provide only one argument, ``name`` or ``tool_id``, but not both. """ - return ctx.gi.tools.get_tools( - tool_id=tool_id, - name=name, - trackster=trackster) + return ctx.gi.tools.get_tools(tool_id=tool_id, name=name, trackster=trackster) diff --git a/parsec/commands/tools/install_dependencies.py b/parsec/commands/tools/install_dependencies.py new file mode 100644 index 0000000..2ebf491 --- /dev/null +++ b/parsec/commands/tools/install_dependencies.py @@ -0,0 +1,16 @@ +import click + +from parsec.cli import pass_context +from parsec.decorators import bioblend_exception, dict_output + +@click.command('install_dependencies') +@click.argument("tool_id", type=str) + + +@pass_context +@bioblend_exception +@dict_output +def cli(ctx, tool_id): + """Install dependencies for a given tool via a resolver. This works only for Conda currently. This functionality is available since Galaxy release_16.10 and is available only to Galaxy admins. + """ + return ctx.gi.tools.install_dependencies(tool_id) diff --git a/parsec/commands/tools/paste_content.py b/parsec/commands/tools/paste_content.py index 14fbf3f..d1b803c 100644 --- a/parsec/commands/tools/paste_content.py +++ b/parsec/commands/tools/paste_content.py @@ -3,10 +3,11 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('tools_paste_content') +@click.command('paste_content') @click.argument("content", type=str) @click.argument("history_id", type=str) + + @pass_context @bioblend_exception @dict_output diff --git a/parsec/commands/tools/put_url.py b/parsec/commands/tools/put_url.py index 00131ba..612d2a9 100644 --- a/parsec/commands/tools/put_url.py +++ b/parsec/commands/tools/put_url.py @@ -3,10 +3,11 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('tools_put_url') +@click.command('put_url') @click.argument("content", type=str) @click.argument("history_id", type=str) + + @pass_context @bioblend_exception @dict_output diff --git a/parsec/commands/tools/run_tool.py b/parsec/commands/tools/run_tool.py index ed32438..bad4353 100644 --- a/parsec/commands/tools/run_tool.py +++ b/parsec/commands/tools/run_tool.py @@ -3,11 +3,12 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('tools_run_tool') +@click.command('run_tool') @click.argument("history_id", type=str) @click.argument("tool_id", type=str) @click.argument("tool_inputs", type=dict) + + @pass_context @bioblend_exception @dict_output diff --git a/parsec/commands/tools/show_tool.py b/parsec/commands/tools/show_tool.py index bc4f05c..0cbcfc4 100644 --- a/parsec/commands/tools/show_tool.py +++ b/parsec/commands/tools/show_tool.py @@ -3,9 +3,9 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('tools_show_tool') +@click.command('show_tool') @click.argument("tool_id", type=str) + @click.option( "--io_details", help="if True, get also input and output details", @@ -16,13 +16,11 @@ help="if True, get also link details", is_flag=True ) + @pass_context @bioblend_exception @dict_output def cli(ctx, tool_id, io_details=False, link_details=False): """Get details of a given tool. """ - return ctx.gi.tools.show_tool( - tool_id, - io_details=io_details, - link_details=link_details) + return ctx.gi.tools.show_tool(tool_id, io_details=io_details, link_details=link_details) diff --git a/parsec/commands/tools/upload_file.py b/parsec/commands/tools/upload_file.py index 3959826..fd3d14a 100644 --- a/parsec/commands/tools/upload_file.py +++ b/parsec/commands/tools/upload_file.py @@ -3,14 +3,15 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('tools_upload_file') +@click.command('upload_file') @click.argument("path", type=str) @click.argument("history_id", type=str) + + @pass_context @bioblend_exception @dict_output def cli(ctx, path, history_id): - """Upload file specified by ``path`` to the history specified by ``history_id``. + """Upload the file specified by ``path`` to the history specified by ``history_id``. """ return ctx.gi.tools.upload_file(path, history_id) diff --git a/parsec/commands/tools/upload_from_ftp.py b/parsec/commands/tools/upload_from_ftp.py new file mode 100644 index 0000000..e7e0475 --- /dev/null +++ b/parsec/commands/tools/upload_from_ftp.py @@ -0,0 +1,17 @@ +import click + +from parsec.cli import pass_context +from parsec.decorators import bioblend_exception, dict_output + +@click.command('upload_from_ftp') +@click.argument("path", type=str) +@click.argument("history_id", type=str) + + +@pass_context +@bioblend_exception +@dict_output +def cli(ctx, path, history_id): + """Upload the file specified by ``path`` from the user's FTP directory to the history specified by ``history_id``. + """ + return ctx.gi.tools.upload_from_ftp(path, history_id) diff --git a/parsec/commands/toolshed/__init__.py b/parsec/commands/toolshed/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/parsec/commands/toolshed/get_repositories.py b/parsec/commands/toolshed/get_repositories.py new file mode 100644 index 0000000..60a65fc --- /dev/null +++ b/parsec/commands/toolshed/get_repositories.py @@ -0,0 +1,15 @@ +import click + +from parsec.cli import pass_context +from parsec.decorators import bioblend_exception, dict_output + +@click.command('get_repositories') + + +@pass_context +@bioblend_exception +@dict_output +def cli(ctx): + """Get the list of all installed Tool Shed repositories on this Galaxy instance. + """ + return ctx.gi.toolshed.get_repositories() diff --git a/parsec/commands/toolshed/install_repository_revision.py b/parsec/commands/toolshed/install_repository_revision.py new file mode 100644 index 0000000..34e5c45 --- /dev/null +++ b/parsec/commands/toolshed/install_repository_revision.py @@ -0,0 +1,44 @@ +import click + +from parsec.cli import pass_context +from parsec.decorators import bioblend_exception, dict_output + +@click.command('install_repository_revision') +@click.argument("tool_shed_url", type=str) +@click.argument("name", type=str) +@click.argument("owner", type=str) +@click.argument("changeset_revision", type=str) + +@click.option( + "--install_tool_dependencies", + help="Whether or not to automatically handle tool dependencies (see http://wiki.galaxyproject.org/AToolOrASuitePerRepository for more details)", + is_flag=True +) +@click.option( + "--install_repository_dependencies", + help="Whether or not to automatically handle repository dependencies (see http://wiki.galaxyproject.org/DefiningRepositoryDependencies for more details)", + is_flag=True +) +@click.option( + "--install_resolver_dependencies", + help="Whether or not to automatically install resolver dependencies (e.g. conda). This parameter is silently ignored in Galaxy ``release_2016.04`` and earlier.", + is_flag=True +) +@click.option( + "--tool_panel_section_id", + help="The ID of the Galaxy tool panel section where the tool should be insterted under. Note that you should specify either this parameter or the ``new_tool_panel_section_label``. If both are specified, this one will take precedence.", + type=str +) +@click.option( + "--new_tool_panel_section_label", + help="The name of a Galaxy tool panel section that should be created and the repository installed into.", + type=str +) + +@pass_context +@bioblend_exception +@dict_output +def cli(ctx, tool_shed_url, name, owner, changeset_revision, install_tool_dependencies=False, install_repository_dependencies=False, install_resolver_dependencies=False, tool_panel_section_id="", new_tool_panel_section_label=""): + """Install a specified repository revision from a specified Tool Shed into this Galaxy instance. This example demonstrates installation of a repository that contains valid tools, loading them into a section of the Galaxy tool panel or creating a new tool panel section. You can choose if tool dependencies or repository dependencies should be installed through the Tool Shed, (use ``install_tool_dependencies`` or ``install_repository_dependencies``) or through a resolver that supports installing dependencies (use ``install_resolver_dependencies``). Note that any combination of the three dependency resolving variables is valid. + """ + return ctx.gi.toolshed.install_repository_revision(tool_shed_url, name, owner, changeset_revision, install_tool_dependencies=install_tool_dependencies, install_repository_dependencies=install_repository_dependencies, install_resolver_dependencies=install_resolver_dependencies, tool_panel_section_id=tool_panel_section_id, new_tool_panel_section_label=new_tool_panel_section_label) diff --git a/parsec/commands/toolshed/show_repository.py b/parsec/commands/toolshed/show_repository.py new file mode 100644 index 0000000..d1b8e1c --- /dev/null +++ b/parsec/commands/toolshed/show_repository.py @@ -0,0 +1,16 @@ +import click + +from parsec.cli import pass_context +from parsec.decorators import bioblend_exception, dict_output + +@click.command('show_repository') +@click.argument("toolShed_id", type=str) + + +@pass_context +@bioblend_exception +@dict_output +def cli(ctx, toolShed_id): + """Get details of a given Tool Shed repository as it is installed on this Galaxy instance. + """ + return ctx.gi.toolshed.show_repository(toolShed_id) diff --git a/parsec/commands/users/create_local_user.py b/parsec/commands/users/create_local_user.py index 218ff07..5cbb2fb 100644 --- a/parsec/commands/users/create_local_user.py +++ b/parsec/commands/users/create_local_user.py @@ -3,15 +3,16 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('users_create_local_user') +@click.command('create_local_user') @click.argument("username", type=str) @click.argument("user_email", type=str) @click.argument("password", type=str) + + @pass_context @bioblend_exception @dict_output def cli(ctx, username, user_email, password): - """Create a new Galaxy user. + """Create a new Galaxy local user. """ return ctx.gi.users.create_local_user(username, user_email, password) diff --git a/parsec/commands/users/create_remote_user.py b/parsec/commands/users/create_remote_user.py index c61ab4a..d440bf5 100644 --- a/parsec/commands/users/create_remote_user.py +++ b/parsec/commands/users/create_remote_user.py @@ -3,9 +3,10 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('users_create_remote_user') +@click.command('create_remote_user') @click.argument("user_email", type=str) + + @pass_context @bioblend_exception @dict_output diff --git a/parsec/commands/users/create_user_apikey.py b/parsec/commands/users/create_user_apikey.py index b89b0ca..03fa870 100644 --- a/parsec/commands/users/create_user_apikey.py +++ b/parsec/commands/users/create_user_apikey.py @@ -3,13 +3,14 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('users_create_user_apikey') +@click.command('create_user_apikey') @click.argument("user_id", type=str) + + @pass_context @bioblend_exception @dict_output def cli(ctx, user_id): - """Create a new api key for a user + """Create a new API key for a given user. """ return ctx.gi.users.create_user_apikey(user_id) diff --git a/parsec/commands/users/delete_user.py b/parsec/commands/users/delete_user.py new file mode 100644 index 0000000..fb6d219 --- /dev/null +++ b/parsec/commands/users/delete_user.py @@ -0,0 +1,21 @@ +import click + +from parsec.cli import pass_context +from parsec.decorators import bioblend_exception, dict_output + +@click.command('delete_user') +@click.argument("user_id", type=str) + +@click.option( + "--purge", + help="if ``True``, also purge (permanently delete) the history", + is_flag=True +) + +@pass_context +@bioblend_exception +@dict_output +def cli(ctx, user_id, purge=False): + """Delete a user. + """ + return ctx.gi.users.delete_user(user_id, purge=purge) diff --git a/parsec/commands/users/get_current_user.py b/parsec/commands/users/get_current_user.py index d0cc3e1..065ecf6 100644 --- a/parsec/commands/users/get_current_user.py +++ b/parsec/commands/users/get_current_user.py @@ -3,12 +3,13 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output +@click.command('get_current_user') + -@click.command('users_get_current_user') @pass_context @bioblend_exception @dict_output def cli(ctx): - """Returns the user id associated with this Galaxy connection + """Display information about the user associated with this Galaxy connection. """ return ctx.gi.users.get_current_user() diff --git a/parsec/commands/users/get_users.py b/parsec/commands/users/get_users.py index 5fbf47b..2b3f059 100644 --- a/parsec/commands/users/get_users.py +++ b/parsec/commands/users/get_users.py @@ -3,12 +3,13 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output +@click.command('get_users') -@click.command('users_get_users') @click.option( "--deleted", help="None" ) + @pass_context @bioblend_exception @dict_output diff --git a/parsec/commands/users/show_user.py b/parsec/commands/users/show_user.py index 55fb0a2..a893e6e 100644 --- a/parsec/commands/users/show_user.py +++ b/parsec/commands/users/show_user.py @@ -3,18 +3,19 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('users_show_user') +@click.command('show_user') @click.argument("user_id", type=str) + @click.option( "--deleted", - help="Whether to return results for a deleted user", + help="whether to return results for a deleted user", is_flag=True ) + @pass_context @bioblend_exception @dict_output def cli(ctx, user_id, deleted=False): - """Display information about a user. If ``deleted`` is set to ``True``, display information about a deleted user. + """Display information about a user. """ return ctx.gi.users.show_user(user_id, deleted=deleted) diff --git a/parsec/commands/visual/get_visualizations.py b/parsec/commands/visual/get_visualizations.py index 69ec192..474a75f 100644 --- a/parsec/commands/visual/get_visualizations.py +++ b/parsec/commands/visual/get_visualizations.py @@ -3,12 +3,13 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output +@click.command('get_visualizations') + -@click.command('visual_get_visualizations') @pass_context @bioblend_exception @dict_output def cli(ctx): - """Get a list of visualizations + """Get the list of all visualizations. """ return ctx.gi.visual.get_visualizations() diff --git a/parsec/commands/visual/show_visualization.py b/parsec/commands/visual/show_visualization.py index bdc77f8..41912aa 100644 --- a/parsec/commands/visual/show_visualization.py +++ b/parsec/commands/visual/show_visualization.py @@ -3,13 +3,14 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('visual_show_visualization') +@click.command('show_visualization') @click.argument("visual_id", type=str) + + @pass_context @bioblend_exception @dict_output def cli(ctx, visual_id): - """Display information on a visualization + """Get details of a given visualization. """ return ctx.gi.visual.show_visualization(visual_id) diff --git a/parsec/commands/workflows/cancel_invocation.py b/parsec/commands/workflows/cancel_invocation.py new file mode 100644 index 0000000..328bfd2 --- /dev/null +++ b/parsec/commands/workflows/cancel_invocation.py @@ -0,0 +1,17 @@ +import click + +from parsec.cli import pass_context +from parsec.decorators import bioblend_exception, dict_output + +@click.command('cancel_invocation') +@click.argument("workflow_id", type=str) +@click.argument("invocation_id", type=str) + + +@pass_context +@bioblend_exception +@dict_output +def cli(ctx, workflow_id, invocation_id): + """Cancel the scheduling of a workflow. + """ + return ctx.gi.workflows.cancel_invocation(workflow_id, invocation_id) diff --git a/parsec/commands/workflows/delete_workflow.py b/parsec/commands/workflows/delete_workflow.py index 49a1c42..84f9b8d 100644 --- a/parsec/commands/workflows/delete_workflow.py +++ b/parsec/commands/workflows/delete_workflow.py @@ -3,9 +3,10 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('workflows_delete_workflow') +@click.command('delete_workflow') @click.argument("workflow_id", type=str) + + @pass_context @bioblend_exception @dict_output diff --git a/parsec/commands/workflows/export_workflow_dict.py b/parsec/commands/workflows/export_workflow_dict.py new file mode 100644 index 0000000..ea7508b --- /dev/null +++ b/parsec/commands/workflows/export_workflow_dict.py @@ -0,0 +1,16 @@ +import click + +from parsec.cli import pass_context +from parsec.decorators import bioblend_exception, dict_output + +@click.command('export_workflow_dict') +@click.argument("workflow_id", type=str) + + +@pass_context +@bioblend_exception +@dict_output +def cli(ctx, workflow_id): + """Exports a workflow. + """ + return ctx.gi.workflows.export_workflow_dict(workflow_id) diff --git a/parsec/commands/workflows/export_workflow_json.py b/parsec/commands/workflows/export_workflow_json.py index 8514ef4..6725a14 100644 --- a/parsec/commands/workflows/export_workflow_json.py +++ b/parsec/commands/workflows/export_workflow_json.py @@ -3,13 +3,14 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output +@click.command('export_workflow_json') +@click.argument("workflow_id") + -@click.command('workflows_export_workflow_json') -@click.argument("workflow_id", type=str) @pass_context @bioblend_exception @dict_output def cli(ctx, workflow_id): - """Exports a workflow + """Deprecated method. """ return ctx.gi.workflows.export_workflow_json(workflow_id) diff --git a/parsec/commands/workflows/export_workflow_to_local_path.py b/parsec/commands/workflows/export_workflow_to_local_path.py index 214d73e..0b99fde 100644 --- a/parsec/commands/workflows/export_workflow_to_local_path.py +++ b/parsec/commands/workflows/export_workflow_to_local_path.py @@ -3,22 +3,20 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('workflows_export_workflow_to_local_path') +@click.command('export_workflow_to_local_path') @click.argument("workflow_id", type=str) @click.argument("file_local_path", type=str) + @click.option( "--use_default_filename", help="If the use_default_name parameter is True, the exported file will be saved as file_local_path/Galaxy-Workflow-%s.ga, where %s is the workflow name. If use_default_name is False, file_local_path is assumed to contain the full file path including filename.", is_flag=True ) + @pass_context @bioblend_exception @dict_output def cli(ctx, workflow_id, file_local_path, use_default_filename=True): - """Exports a workflow in json format to a given local path. + """Exports a workflow in JSON format to a given local path. """ - return ctx.gi.workflows.export_workflow_to_local_path( - workflow_id, - file_local_path, - use_default_filename=use_default_filename) + return ctx.gi.workflows.export_workflow_to_local_path(workflow_id, file_local_path, use_default_filename=use_default_filename) diff --git a/parsec/commands/workflows/get_invocations.py b/parsec/commands/workflows/get_invocations.py new file mode 100644 index 0000000..5214b97 --- /dev/null +++ b/parsec/commands/workflows/get_invocations.py @@ -0,0 +1,16 @@ +import click + +from parsec.cli import pass_context +from parsec.decorators import bioblend_exception, dict_output + +@click.command('get_invocations') +@click.argument("workflow_id", type=str) + + +@pass_context +@bioblend_exception +@dict_output +def cli(ctx, workflow_id): + """Get a list containing all the workflow invocations corresponding to the specified workflow. + """ + return ctx.gi.workflows.get_invocations(workflow_id) diff --git a/parsec/commands/workflows/get_workflow_inputs.py b/parsec/commands/workflows/get_workflow_inputs.py index ea18300..0394bf5 100644 --- a/parsec/commands/workflows/get_workflow_inputs.py +++ b/parsec/commands/workflows/get_workflow_inputs.py @@ -3,10 +3,11 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('workflows_get_workflow_inputs') +@click.command('get_workflow_inputs') @click.argument("workflow_id", type=str) @click.argument("label", type=str) + + @pass_context @bioblend_exception @dict_output diff --git a/parsec/commands/workflows/get_workflows.py b/parsec/commands/workflows/get_workflows.py index 5b600c6..b549f58 100644 --- a/parsec/commands/workflows/get_workflows.py +++ b/parsec/commands/workflows/get_workflows.py @@ -3,8 +3,8 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output +@click.command('get_workflows') -@click.command('workflows_get_workflows') @click.option( "--workflow_id", help="Encoded workflow ID (incompatible with ``name``)", @@ -20,13 +20,11 @@ help="if ``True``, return also published workflows", is_flag=True ) + @pass_context @bioblend_exception @dict_output -def cli(ctx, workflow_id="", name="", deleted=False, published=False): +def cli(ctx, workflow_id="", name="", published=False): """Get all workflows or filter the specific one(s) via the provided ``name`` or ``workflow_id``. Provide only one argument, ``name`` or ``workflow_id``, but not both. """ - return ctx.gi.workflows.get_workflows( - workflow_id=workflow_id, - name=name, - published=published) + return ctx.gi.workflows.get_workflows(workflow_id=workflow_id, name=name, published=published) diff --git a/parsec/commands/workflows/import_shared_workflow.py b/parsec/commands/workflows/import_shared_workflow.py index 65d3d35..0e4f2f3 100644 --- a/parsec/commands/workflows/import_shared_workflow.py +++ b/parsec/commands/workflows/import_shared_workflow.py @@ -3,13 +3,14 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('workflows_import_shared_workflow') +@click.command('import_shared_workflow') @click.argument("workflow_id", type=str) + + @pass_context @bioblend_exception @dict_output def cli(ctx, workflow_id): - """Imports a new workflow from the shared published workflows + """Imports a new workflow from the shared published workflows. """ return ctx.gi.workflows.import_shared_workflow(workflow_id) diff --git a/parsec/commands/workflows/import_workflow_dict.py b/parsec/commands/workflows/import_workflow_dict.py new file mode 100644 index 0000000..bd370b2 --- /dev/null +++ b/parsec/commands/workflows/import_workflow_dict.py @@ -0,0 +1,16 @@ +import click + +from parsec.cli import pass_context +from parsec.decorators import bioblend_exception, dict_output + +@click.command('import_workflow_dict') +@click.argument("workflow_dict", type=dict) + + +@pass_context +@bioblend_exception +@dict_output +def cli(ctx, workflow_dict): + """Imports a new workflow given a dictionary representing a previously exported workflow. + """ + return ctx.gi.workflows.import_workflow_dict(workflow_dict) diff --git a/parsec/commands/workflows/import_workflow_from_local_path.py b/parsec/commands/workflows/import_workflow_from_local_path.py index 7bcccff..326fdb2 100644 --- a/parsec/commands/workflows/import_workflow_from_local_path.py +++ b/parsec/commands/workflows/import_workflow_from_local_path.py @@ -3,9 +3,10 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('workflows_import_workflow_from_local_path') +@click.command('import_workflow_from_local_path') @click.argument("file_local_path", type=str) + + @pass_context @bioblend_exception @dict_output diff --git a/parsec/commands/workflows/import_workflow_json.py b/parsec/commands/workflows/import_workflow_json.py index 9bd2ea1..a38a4f3 100644 --- a/parsec/commands/workflows/import_workflow_json.py +++ b/parsec/commands/workflows/import_workflow_json.py @@ -3,13 +3,14 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output +@click.command('import_workflow_json') +@click.argument("workflow_json") + -@click.command('workflows_import_workflow_json') -@click.argument("workflow_json", type=str) @pass_context @bioblend_exception @dict_output def cli(ctx, workflow_json): - """Imports a new workflow given a json representation of a previously exported workflow. + """Deprecated method. """ return ctx.gi.workflows.import_workflow_json(workflow_json) diff --git a/parsec/commands/workflows/invoke_workflow.py b/parsec/commands/workflows/invoke_workflow.py new file mode 100644 index 0000000..6f62140 --- /dev/null +++ b/parsec/commands/workflows/invoke_workflow.py @@ -0,0 +1,51 @@ +import click + +from parsec.cli import pass_context +from parsec.decorators import bioblend_exception, dict_output + +@click.command('invoke_workflow') +@click.argument("workflow_id", type=str) + +@click.option( + "--inputs", + help="A mapping of workflow inputs to datasets and dataset collections. The datasets source can be a LibraryDatasetDatasetAssociation (``ldda``), LibraryDataset (``ld``), HistoryDatasetAssociation (``hda``), or HistoryDatasetCollectionAssociation (``hdca``).", + type=dict +) +@click.option( + "--params", + help="A mapping of non-datasets tool parameters (see below)", + type=dict +) +@click.option( + "--history_id", + help="The encoded history ID where to store the workflow output. Alternatively, ``history_name`` may be specified to create a new history.", + type=str +) +@click.option( + "--history_name", + help="Create a new history with the given name to store the workflow output. If both ``history_id`` and ``history_name`` are provided, ``history_name`` is ignored. If neither is specified, a new 'Unnamed history' is created.", + type=str +) +@click.option( + "--import_inputs_to_history", + help="If ``True``, used workflow inputs will be imported into the history. If ``False``, only workflow outputs will be visible in the given history.", + is_flag=True +) +@click.option( + "--replacement_params", + help="pattern-based replacements for post-job actions (see below)", + type=dict +) +@click.option( + "--allow_tool_state_corrections", + help="If True, allow Galaxy to fill in missing tool state when running workflows. This may be useful for workflows using tools that have changed over time or for workflows built outside of Galaxy with only a subset of inputs defined.", + is_flag=True +) + +@pass_context +@bioblend_exception +@dict_output +def cli(ctx, workflow_id, inputs="", params="", history_id="", history_name="", import_inputs_to_history=False, replacement_params="", allow_tool_state_corrections=""): + """Invoke the workflow identified by ``workflow_id``. This will cause a workflow to be scheduled and return an object describing the workflow invocation. + """ + return ctx.gi.workflows.invoke_workflow(workflow_id, inputs=inputs, params=params, history_id=history_id, history_name=history_name, import_inputs_to_history=import_inputs_to_history, replacement_params=replacement_params, allow_tool_state_corrections=allow_tool_state_corrections) diff --git a/parsec/commands/workflows/run_invocation_step_action.py b/parsec/commands/workflows/run_invocation_step_action.py new file mode 100644 index 0000000..c2c1661 --- /dev/null +++ b/parsec/commands/workflows/run_invocation_step_action.py @@ -0,0 +1,19 @@ +import click + +from parsec.cli import pass_context +from parsec.decorators import bioblend_exception, dict_output + +@click.command('run_invocation_step_action') +@click.argument("workflow_id", type=str) +@click.argument("invocation_id", type=str) +@click.argument("step_id", type=str) +@click.argument("action") + + +@pass_context +@bioblend_exception +@dict_output +def cli(ctx, workflow_id, invocation_id, step_id, action): + """nature of this action and what is expected will vary based on the the type of workflow step (the only currently valid action is True/False for pause steps). + """ + return ctx.gi.workflows.run_invocation_step_action(workflow_id, invocation_id, step_id, action) diff --git a/parsec/commands/workflows/run_workflow.py b/parsec/commands/workflows/run_workflow.py index 7627770..011e12c 100644 --- a/parsec/commands/workflows/run_workflow.py +++ b/parsec/commands/workflows/run_workflow.py @@ -3,25 +3,27 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('workflows_run_workflow') +@click.command('run_workflow') @click.argument("workflow_id", type=str) + @click.option( "--dataset_map", - help="A mapping of workflow inputs to datasets. The datasets source can be a LibraryDatasetDatasetAssociation (``ldda``), LibraryDataset (``ld``), or HistoryDatasetAssociation (``hda``). The map must be in the following format: ``{'': {'id': , 'src': '[ldda, ld, hda]'}}`` (e.g. ``{'23': {'id': '29beef4fadeed09f', 'src': 'ld'}}``)" + help="A mapping of workflow inputs to datasets. The datasets source can be a LibraryDatasetDatasetAssociation (``ldda``), LibraryDataset (``ld``), or HistoryDatasetAssociation (``hda``). The map must be in the following format: ``{'': {'id': , 'src': '[ldda, ld, hda]'}}`` (e.g. ``{'23': {'id': '29beef4fadeed09f', 'src': 'ld'}}``)", + type=dict ) @click.option( "--params", - help="A mapping of tool parameters that are non-datasets parameters. The map must be in the following format: ``{'blastn': {'param': 'evalue', 'value': '1e-06'}}``" + help="A mapping of non-datasets tool parameters (see below)", + type=dict ) @click.option( "--history_id", - help="The encoded history ID where to store the workflow output. ``history_id`` OR ``history_name`` should be provided but not both!", + help="The encoded history ID where to store the workflow output. Alternatively, ``history_name`` may be specified to create a new history.", type=str ) @click.option( "--history_name", - help="Create a new history with the given name to store the workflow output. ``history_id`` OR ``history_name`` should be provided but not both!", + help="Create a new history with the given name to store the workflow output. If both ``history_id`` and ``history_name`` are provided, ``history_name`` is ignored. If neither is specified, a new 'Unnamed history' is created.", type=str ) @click.option( @@ -34,25 +36,11 @@ help="pattern-based replacements for post-job actions (see below)", type=dict ) + @pass_context @bioblend_exception @dict_output -def cli( - ctx, - workflow_id, - dataset_map="", - params="", - history_id="", - history_name="", - import_inputs_to_history=False, - replacement_params=""): - """Run the workflow identified by ``workflow_id`` +def cli(ctx, workflow_id, dataset_map="", params="", history_id="", history_name="", import_inputs_to_history=False, replacement_params=""): + """Run the workflow identified by ``workflow_id``. This method is deprecated, please use :meth:`invoke_workflow` instead. """ - return ctx.gi.workflows.run_workflow( - workflow_id, - dataset_map=dataset_map, - params=params, - history_id=history_id, - history_name=history_name, - import_inputs_to_history=import_inputs_to_history, - replacement_params=replacement_params) + return ctx.gi.workflows.run_workflow(workflow_id, dataset_map=dataset_map, params=params, history_id=history_id, history_name=history_name, import_inputs_to_history=import_inputs_to_history, replacement_params=replacement_params) diff --git a/parsec/commands/workflows/show_invocation.py b/parsec/commands/workflows/show_invocation.py new file mode 100644 index 0000000..17af5f7 --- /dev/null +++ b/parsec/commands/workflows/show_invocation.py @@ -0,0 +1,17 @@ +import click + +from parsec.cli import pass_context +from parsec.decorators import bioblend_exception, dict_output + +@click.command('show_invocation') +@click.argument("workflow_id", type=str) +@click.argument("invocation_id", type=str) + + +@pass_context +@bioblend_exception +@dict_output +def cli(ctx, workflow_id, invocation_id): + """Get a workflow invocation object representing the scheduling of a workflow. This object may be sparse at first (missing inputs and invocation steps) and will become more populated as the workflow is actually scheduled. + """ + return ctx.gi.workflows.show_invocation(workflow_id, invocation_id) diff --git a/parsec/commands/workflows/show_invocation_step.py b/parsec/commands/workflows/show_invocation_step.py new file mode 100644 index 0000000..db91655 --- /dev/null +++ b/parsec/commands/workflows/show_invocation_step.py @@ -0,0 +1,18 @@ +import click + +from parsec.cli import pass_context +from parsec.decorators import bioblend_exception, dict_output + +@click.command('show_invocation_step') +@click.argument("workflow_id", type=str) +@click.argument("invocation_id", type=str) +@click.argument("step_id", type=str) + + +@pass_context +@bioblend_exception +@dict_output +def cli(ctx, workflow_id, invocation_id, step_id): + """See the details of a particular workflow invocation step. + """ + return ctx.gi.workflows.show_invocation_step(workflow_id, invocation_id, step_id) diff --git a/parsec/commands/workflows/show_workflow.py b/parsec/commands/workflows/show_workflow.py index f302243..1762cd9 100644 --- a/parsec/commands/workflows/show_workflow.py +++ b/parsec/commands/workflows/show_workflow.py @@ -3,9 +3,10 @@ from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output - -@click.command('workflows_show_workflow') +@click.command('show_workflow') @click.argument("workflow_id", type=str) + + @pass_context @bioblend_exception @dict_output From e039c5a49fbee804f12576b3d5e15011ad007e09 Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Tue, 2 May 2017 18:53:10 +0000 Subject: [PATCH 13/80] unused --- parsec/commands/toolShed/__init__.py | 0 parsec/commands/toolShed/get_repositories.py | 14 ----- .../toolShed/install_repository_revision.py | 55 ------------------- parsec/commands/toolShed/show_repository.py | 15 ----- 4 files changed, 84 deletions(-) delete mode 100644 parsec/commands/toolShed/__init__.py delete mode 100644 parsec/commands/toolShed/get_repositories.py delete mode 100644 parsec/commands/toolShed/install_repository_revision.py delete mode 100644 parsec/commands/toolShed/show_repository.py diff --git a/parsec/commands/toolShed/__init__.py b/parsec/commands/toolShed/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/parsec/commands/toolShed/get_repositories.py b/parsec/commands/toolShed/get_repositories.py deleted file mode 100644 index ab4127d..0000000 --- a/parsec/commands/toolShed/get_repositories.py +++ /dev/null @@ -1,14 +0,0 @@ -import click - -from parsec.cli import pass_context -from parsec.decorators import bioblend_exception, dict_output - - -@click.command('toolshed_get_repositories') -@pass_context -@bioblend_exception -@dict_output -def cli(ctx): - """Get a list of all repositories in the Tool Shed - """ - return ctx.ti.repositories.get_repositories() diff --git a/parsec/commands/toolShed/install_repository_revision.py b/parsec/commands/toolShed/install_repository_revision.py deleted file mode 100644 index 72722f4..0000000 --- a/parsec/commands/toolShed/install_repository_revision.py +++ /dev/null @@ -1,55 +0,0 @@ -import click - -from parsec.cli import pass_context -from parsec.decorators import bioblend_exception, dict_output - - -@click.command('toolshed_install_repository_revision') -@click.argument("tool_shed_url", type=str) -@click.argument("name", type=str) -@click.argument("owner", type=str) -@click.argument("changeset_revision", type=str) -@click.option( - "--install_tool_dependencies", - help="Whether or not to automatically handle tool dependencies (see http://wiki.galaxyproject.org/AToolOrASuitePerRepository for more details)", - is_flag=True -) -@click.option( - "--install_repository_dependencies", - help="Whether or not to automatically handle repository dependencies (see http://wiki.galaxyproject.org/DefiningRepositoryDependencies for more details)", - is_flag=True -) -@click.option( - "--tool_panel_section_id", - help="The ID of the Galaxy tool panel section where the tool should be insterted under. Note that you should specify either this parameter or the ``new_tool_panel_section_label``. If both are specified, this one will take precedence.", - type=str -) -@click.option( - "--new_tool_panel_section_label", - help="The name of a Galaxy tool panel section that should be created and the repository installed into.", - type=str -) -@pass_context -@bioblend_exception -@dict_output -def cli( - ctx, - tool_shed_url, - name, - owner, - changeset_revision, - install_tool_dependencies=False, - install_repository_dependencies=False, - tool_panel_section_id="", - new_tool_panel_section_label=""): - """Install a specified repository revision from a specified Tool Shed into this Galaxy instance. This example demonstrates installation of a repository that contains valid tools, loading them into a section of the Galaxy tool panel or creating a new tool panel section. You can choose if tool dependencies or repository dependencies should be installed, use ``install_tool_dependencies`` or ``install_repository_dependencies``. - """ - return ctx.ti.repositories.install_repository_revision( - tool_shed_url, - name, - owner, - changeset_revision, - install_tool_dependencies=install_tool_dependencies, - install_repository_dependencies=install_repository_dependencies, - tool_panel_section_id=tool_panel_section_id, - new_tool_panel_section_label=new_tool_panel_section_label) diff --git a/parsec/commands/toolShed/show_repository.py b/parsec/commands/toolShed/show_repository.py deleted file mode 100644 index 0515152..0000000 --- a/parsec/commands/toolShed/show_repository.py +++ /dev/null @@ -1,15 +0,0 @@ -import click - -from parsec.cli import pass_context -from parsec.decorators import bioblend_exception, dict_output - - -@click.command('toolshed_show_repository') -@click.argument("toolshed_id", type=str) -@pass_context -@bioblend_exception -@dict_output -def cli(ctx, toolshed_id): - """Display information of a repository from the Tool Shed - """ - return ctx.ti.repositories.show_repository(toolshed_id) From d5af8ff3942d854989cb1470e7b4a408d105f8f3 Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Tue, 2 May 2017 18:55:22 +0000 Subject: [PATCH 14/80] never should have been added --- histories | 119 ------------------------------------------------------ 1 file changed, 119 deletions(-) delete mode 100644 histories diff --git a/histories b/histories deleted file mode 100644 index 7e9e267..0000000 --- a/histories +++ /dev/null @@ -1,119 +0,0 @@ -{ - "importable": false, - "create_time": "2014-01-24T21:47:12.241548", - "contents_url": "/galaxy/api/histories/6b188bb407694a42/contents", - "id": "6b188bb407694a42", - "size": 89132491410, - "user_id": "f570ade6e7840ba0", - "username_and_slug": "u/eric-rasche/h/rna-seq-project-with-jberry-1", - "annotation": null, - "state_details": { - "discarded": 0, - "ok": 56, - "failed_metadata": 0, - "upload": 0, - "paused": 0, - "running": 0, - "setting_metadata": 0, - "error": 1, - "new": 0, - "queued": 0, - "empty": 0 - }, - "state": "error", - "empty": false, - "update_time": "2014-02-21T16:49:39.468641", - "tags": [], - "deleted": false, - "genome_build": "?", - "slug": "rna-seq-project-with-jberry-1", - "name": "RNA Seq Project with JBerry", - "url": "/galaxy/api/histories/6b188bb407694a42", - "state_ids": { - "discarded": [ - "38deb6e287a4132b", - "897ae45496b08e80", - "3ff826d4cbffb600", - "bcc880c3e1f61eb3", - "8c44679860e713aa", - "9d7de7642bbfa9c8", - "2ae04582a96f1201", - "1ade6cb87c5e2b2d", - "358d66d6868f5613" - ], - "ok": [ - "a9a5ff1ee36b33af", - "19cc3c7867dc8bc7", - "5af643171964d8a3", - "dd1bd0e5486395f9", - "3ebd9de69ab977f5", - "a3b5b8412dec9d7b", - "715ade64dcd14d9d", - "a19aac5815cfcbb6", - "0e07476da6304b0f", - "1537b26a636f9ecd", - "b1b3588a17fd7ae6", - "cca73b5ec2c28e46", - "3bffd800ebe4b7ee", - "b069c2740a800913", - "5cf0b140bcf80529", - "6df2ceb97bc8fa56", - "a850a8087522a461", - "d91cc1147195f5fb", - "5b446ee938854d9d", - "91ce7c82a2c6fcfb", - "0affbc36d2ae5bcc", - "7ab07da33d2a5538", - "07ce6b6bc07f4a38", - "95e85f0f1f290936", - "9e653b7f5f5702a6", - "25792331bca74fb4", - "7ea43ce6ecbabfa1", - "9ba61bd940377451", - "22c90e50782e734f", - "94d1ced4656872bf", - "dea1f5b756a61293", - "3530871e2ac7f391", - "8a68132b8acb7fe3", - "e9a9a0c8f0357423", - "7713dbabccc390ed", - "6ac752f664170fc6", - "79c50b1f33e89854", - "1b3e885a1ffb3ce0", - "2c72aab1bf34202f", - "4a7e4c934a9111f6", - "b6612f2d81fbdd93", - "1be8cfe0e90435b2", - "2fbed837881ec790", - "36eca512efbcaa34", - "e9f244b9b806ca10", - "32f91baa200ea81c", - "84ad56e83dd6da14", - "454b5bf20d3a2249", - "264370ce19c11b98", - "24d3b32324845672", - "35f569c7d25616d4", - "fec72c2e90e5f702", - "8d423b2bfde914c9", - "e7955fd2ea4d2c9e", - "833ae49569369e20", - "1d6783925042dc6b", - "cf3e933262433c0e", - "adc947cd4be019f3" - ], - "failed_metadata": [], - "upload": [], - "paused": [], - "running": [], - "setting_metadata": [], - "error": [ - "e1a42552f1d5a2a8" - ], - "new": [], - "queued": [], - "empty": [] - }, - "published": false, - "model_class": "History", - "purged": false -} From 0fa915e0c9a4d1782db4415cb9f262094bc36d3d Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Tue, 2 May 2017 19:44:31 +0000 Subject: [PATCH 15/80] Handle half documented kwargs --- parsec/commands/histories/update_dataset.py | 39 ++++++++++++- .../histories/update_dataset_collection.py | 25 ++++++++- parsec/commands/histories/update_history.py | 54 +++++++++++++++++- parsec/commands/tools/upload_file.py | 39 ++++++++++++- scripts/autobuilder.py | 55 ++++++++++++++----- scripts/templates/click.txt | 2 +- 6 files changed, 194 insertions(+), 20 deletions(-) diff --git a/parsec/commands/histories/update_dataset.py b/parsec/commands/histories/update_dataset.py index 27f26bf..ed92a03 100644 --- a/parsec/commands/histories/update_dataset.py +++ b/parsec/commands/histories/update_dataset.py @@ -7,6 +7,31 @@ @click.argument("history_id", type=str) @click.argument("dataset_id", type=str) +@click.option( + "--name", + help="Replace history dataset name with the given string", + type=str +) +@click.option( + "--annotation", + help="Replace history dataset annotation with given string", + type=str +) +@click.option( + "--deleted", + help="Mark or unmark history dataset as deleted", + is_flag=True +) +@click.option( + "--visible", + help="Mark or unmark history dataset as visible", + is_flag=True +) +@click.option( + "--genome_build", + help="Replace history dataset genome build (dbkey)", + type=str +) @pass_context @bioblend_exception @@ -14,4 +39,16 @@ def cli(ctx, history_id, dataset_id): """Update history dataset metadata. Some of the attributes that can be modified are documented below. """ - return ctx.gi.histories.update_dataset(history_id, dataset_id) + kwargs = {} + if name and len(name) > 0: + kwargs['name'] = name + if annotation and len(annotation) > 0: + kwargs['annotation'] = annotation + if deleted is not None: + kwargs['deleted'] = deleted + if visible is not None: + kwargs['visible'] = visible + if genome_build and len(genome_build) > 0: + kwargs['genome_build'] = genome_build + + return ctx.gi.histories.update_dataset(history_id, dataset_id, **kwargs) diff --git a/parsec/commands/histories/update_dataset_collection.py b/parsec/commands/histories/update_dataset_collection.py index 12d393c..1d795e5 100644 --- a/parsec/commands/histories/update_dataset_collection.py +++ b/parsec/commands/histories/update_dataset_collection.py @@ -7,6 +7,21 @@ @click.argument("history_id", type=str) @click.argument("dataset_collection_id", type=str) +@click.option( + "--name", + help="Replace history dataset collection name with the given string", + type=str +) +@click.option( + "--deleted", + help="Mark or unmark history dataset collection as deleted", + is_flag=True +) +@click.option( + "--visible", + help="Mark or unmark history dataset collection as visible", + is_flag=True +) @pass_context @bioblend_exception @@ -14,4 +29,12 @@ def cli(ctx, history_id, dataset_collection_id): """Update history dataset collection metadata. Some of the attributes that can be modified are documented below. """ - return ctx.gi.histories.update_dataset_collection(history_id, dataset_collection_id) + kwargs = {} + if name and len(name) > 0: + kwargs['name'] = name + if deleted is not None: + kwargs['deleted'] = deleted + if visible is not None: + kwargs['visible'] = visible + + return ctx.gi.histories.update_dataset_collection(history_id, dataset_collection_id, **kwargs) diff --git a/parsec/commands/histories/update_history.py b/parsec/commands/histories/update_history.py index 26382e2..7e35f56 100644 --- a/parsec/commands/histories/update_history.py +++ b/parsec/commands/histories/update_history.py @@ -6,11 +6,61 @@ @click.command('update_history') @click.argument("history_id", type=str) +@click.option( + "--tags", + help="Replace history tags with the given list", + type=str, + multiple=True +) +@click.option( + "--importable", + help="Mark or unmark history as importable", + is_flag=True +) +@click.option( + "--purged", + help="If True, mark history as purged (permanently deleted). Ignored on Galaxy release_15.01 and earlier", + is_flag=True +) +@click.option( + "--name", + help="Replace history name with the given string", + type=str +) +@click.option( + "--annotation", + help="Replace history annotation with given string", + type=str +) +@click.option( + "--deleted", + help="Mark or unmark history as deleted", + is_flag=True +) +@click.option( + "--published", + help="Mark or unmark history as published", + is_flag=True +) @pass_context @bioblend_exception @dict_output -def cli(ctx, history_id): +def cli(ctx, history_id, tags=None): """Update history metadata information. Some of the attributes that can be modified are documented below. """ - return ctx.gi.histories.update_history(history_id) + kwargs = {} + if importable is not None: + kwargs['importable'] = importable + if purged is not None: + kwargs['purged'] = purged + if name and len(name) > 0: + kwargs['name'] = name + if annotation and len(annotation) > 0: + kwargs['annotation'] = annotation + if deleted is not None: + kwargs['deleted'] = deleted + if published is not None: + kwargs['published'] = published + + return ctx.gi.histories.update_history(history_id, tags=tags, **kwargs) diff --git a/parsec/commands/tools/upload_file.py b/parsec/commands/tools/upload_file.py index fd3d14a..4730a86 100644 --- a/parsec/commands/tools/upload_file.py +++ b/parsec/commands/tools/upload_file.py @@ -7,6 +7,31 @@ @click.argument("path", type=str) @click.argument("history_id", type=str) +@click.option( + "--dbkey", + help="(optional) genome dbkey", + type=str +) +@click.option( + "--to_posix_lines", + help="if True, convert universal line endings to POSIX line endings. Default is True. Set to False if you upload a gzip, bz2 or zip archive containing a binary file", + is_flag=True +) +@click.option( + "--file_name", + help="(optional) name of the new history dataset", + type=str +) +@click.option( + "--space_to_tab", + help="whether to convert spaces to tabs. Default is False. Applicable only if to_posix_lines is True", + is_flag=True +) +@click.option( + "--file_type", + help="Galaxy datatype for the new dataset, default is auto", + type=str +) @pass_context @bioblend_exception @@ -14,4 +39,16 @@ def cli(ctx, path, history_id): """Upload the file specified by ``path`` to the history specified by ``history_id``. """ - return ctx.gi.tools.upload_file(path, history_id) + kwargs = {} + if dbkey and len(dbkey) > 0: + kwargs['dbkey'] = dbkey + if to_posix_lines is not None: + kwargs['to_posix_lines'] = to_posix_lines + if file_name and len(file_name) > 0: + kwargs['file_name'] = file_name + if space_to_tab is not None: + kwargs['space_to_tab'] = space_to_tab + if file_type and len(file_type) > 0: + kwargs['file_type'] = file_type + + return ctx.gi.tools.upload_file(path, history_id, **kwargs) diff --git a/scripts/autobuilder.py b/scripts/autobuilder.py index d84bda7..58b8256 100644 --- a/scripts/autobuilder.py +++ b/scripts/autobuilder.py @@ -69,10 +69,7 @@ def __init__(self): self.obj = bg.GalaxyInstance("http://localhost:8080", "API_KEY") def template(self, template, opts): - try: - return self.templates[template] % opts - except: - raise Exception("Template not found") + return self.templates[template] % opts @classmethod def __click_option(cls, name='arg', helpstr='TODO', ptype=None): @@ -252,6 +249,8 @@ def orig(self, module_name, submodule, subsubmodule, function_name): 'desc': m.group('desc')} argspec = list(self.pair_arguments(func)) + data['kwarg_updates'] = '' + data['empty_kwargs'] = '' # Ignore with only cls/self if len(argspec) > 0: method_signature = ['ctx'] @@ -261,17 +260,13 @@ def orig(self, module_name, submodule, subsubmodule, function_name): method_exec_args = [] method_exec_kwargs = [] - for k, v in argspec: - try: - param_type = self.parameter_translation(param_docs[k]['type']) - except Exception as e: - param_type = [] - print(candidate, e) - + def process_arg(k, v, param_type): # If v is not None, then it's a kwargs, otherwise an arg if v is not None: # Strings must be treated specially by removing their value - if isinstance(v, str): + if v == '__None__': + v = 'None' + elif isinstance(v, str): v = '""' if v == []: @@ -279,8 +274,9 @@ def orig(self, module_name, submodule, subsubmodule, function_name): # All other instances of V are fine, e.g. boolean=False or int=1000 # Register twice as the method invocation uses v=k - method_signature_kwargs.append("%s=%s" % (k, v)) - method_exec_kwargs.append('%s=%s' % (k, k)) + if v != 'None': + method_signature_kwargs.append("%s=%s" % (k, v)) + method_exec_kwargs.append('%s=%s' % (k, k)) # TODO: refactor try: @@ -296,6 +292,33 @@ def orig(self, module_name, submodule, subsubmodule, function_name): data['click_arguments'] += self.__click_argument(name=k, ptype=param_type) + argspec_keys = [x[0] for x in argspec] + for k, v in argspec: + try: + param_type = self.parameter_translation(param_docs[k]['type']) + except Exception as e: + param_type = [] + print(candidate, e) + process_arg(k, v, param_type) + + had_weird_kwargs = False + for k in param_docs.keys(): + # Ignore things we've seen before + if k in argspec_keys: + continue + param_type = param_docs[k]['type'] + if param_type == 'list': + default_value = [] + else: + default_value = '__None__' + + process_arg(k, default_value, self.parameter_translation(param_type)) + # Booleans are diff + if param_type == 'bool': + data['kwarg_updates'] += " if %s is not None:\n kwargs['%s'] = %s\n" % (k, k, k) + elif param_type == 'str': + data['kwarg_updates'] += " if %s and len(%s) > 0:\n kwargs['%s'] = %s\n" % (k, k, k, k) + had_weird_kwargs = True # Complete args data['args_with_defaults'] = ', '.join(method_signature + @@ -303,6 +326,10 @@ def orig(self, module_name, submodule, subsubmodule, function_name): method_signature_kwargs) data['wrapped_method_args'] = ', '.join(method_exec_args + method_exec_kwargs) + if had_weird_kwargs: + data['wrapped_method_args'] += ', **kwargs' + data['empty_kwargs'] = '\n kwargs = {}\n' + # My function is more effective until can figure out docstring data['short_docstring'] = self.important_doc(argdoc) diff --git a/scripts/templates/click.txt b/scripts/templates/click.txt index 33e92d1..4560572 100644 --- a/scripts/templates/click.txt +++ b/scripts/templates/click.txt @@ -11,5 +11,5 @@ from parsec.decorators import bioblend_exception, dict_output @dict_output def cli(%(args_with_defaults)s): """%(short_docstring)s - """ + """%(empty_kwargs)s%(kwarg_updates)s return %(wrapped_method)s(%(wrapped_method_args)s) From 4b0e05be3875381cd5710ad9934e81d39d7810be Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Tue, 2 May 2017 20:29:19 +0000 Subject: [PATCH 16/80] update documentation --- docs/commands.rst | 125 +---- docs/commands/add_user.rst | 27 - docs/commands/config.rst | 37 ++ docs/commands/config_get_config.rst | 23 - docs/commands/config_init.rst | 24 - docs/commands/dataset_download.rst | 27 - docs/commands/dataset_upload.rst | 26 - docs/commands/datasets.rst | 103 ++++ docs/commands/datasets_download_dataset.rst | 45 -- docs/commands/datasets_show_dataset.rst | 26 - docs/commands/datasets_show_stderr.rst | 23 - docs/commands/datasets_show_stdout.rst | 23 - docs/commands/datatypes.rst | 44 ++ docs/commands/datatypes_get_datatypes.rst | 25 - docs/commands/datatypes_get_sniffers.rst | 23 - docs/commands/folders.rst | 44 ++ docs/commands/folders_delete_folder.rst | 25 - docs/commands/folders_show_folder.rst | 23 - docs/commands/forms.rst | 62 +++ docs/commands/forms_create_form.rst | 23 - docs/commands/forms_get_forms.rst | 23 - docs/commands/forms_show_form.rst | 23 - docs/commands/ftpfiles.rst | 23 + docs/commands/ftpfiles_get_ftp_files.rst | 24 - docs/commands/genomes.rst | 80 +++ docs/commands/genomes_get_genomes.rst | 23 - docs/commands/genomes_install_genome.rst | 37 -- docs/commands/genomes_show_genome.rst | 27 - docs/commands/groups.rst | 212 ++++++++ docs/commands/groups_create_group.rst | 25 - docs/commands/groups_get_groups.rst | 23 - docs/commands/groups_show_group.rst | 23 - docs/commands/histories.rst | 506 ++++++++++++++++++ .../histories_create_dataset_collection.rst | 23 - docs/commands/histories_create_history.rst | 24 - .../commands/histories_create_history_tag.rst | 23 - docs/commands/histories_delete_dataset.rst | 23 - .../histories_delete_dataset_collection.rst | 23 - docs/commands/histories_delete_history.rst | 24 - docs/commands/histories_download_history.rst | 24 - docs/commands/histories_export_history.rst | 28 - docs/commands/histories_get_histories.rst | 26 - ...stories_get_most_recently_used_history.rst | 23 - docs/commands/histories_get_status.rst | 23 - docs/commands/histories_show_dataset.rst | 23 - .../histories_show_dataset_collection.rst | 23 - .../histories_show_dataset_provenance.rst | 26 - docs/commands/histories_show_history.rst | 32 -- .../histories_show_matching_datasets.rst | 27 - docs/commands/histories_undelete_history.rst | 23 - docs/commands/histories_update_dataset.rst | 23 - .../histories_update_dataset_collection.rst | 23 - docs/commands/histories_update_history.rst | 25 - .../histories_upload_dataset_from_library.rst | 23 - docs/commands/history_create.rst | 24 - docs/commands/history_delete.rst | 24 - docs/commands/history_list.rst | 24 - docs/commands/jobs.rst | 83 +++ docs/commands/jobs_get_jobs.rst | 23 - docs/commands/jobs_get_state.rst | 23 - docs/commands/jobs_search_jobs.rst | 23 - docs/commands/jobs_show_job.rst | 23 - docs/commands/libraries.rst | 393 ++++++++++++++ docs/commands/libraries_copy_from_dataset.rst | 26 - docs/commands/libraries_create_folder.rst | 26 - docs/commands/libraries_create_library.rst | 25 - docs/commands/libraries_delete_library.rst | 23 - .../libraries_delete_library_dataset.rst | 25 - docs/commands/libraries_get_folders.rst | 29 - docs/commands/libraries_get_libraries.rst | 29 - .../libraries_set_library_permissions.rst | 27 - docs/commands/libraries_show_dataset.rst | 23 - docs/commands/libraries_show_folder.rst | 23 - docs/commands/libraries_show_library.rst | 25 - .../libraries_upload_file_contents.rst | 26 - .../libraries_upload_file_from_local_path.rst | 26 - .../libraries_upload_file_from_server.rst | 31 -- .../libraries_upload_file_from_url.rst | 26 - ...ibraries_upload_from_galaxy_filesystem.rst | 31 -- docs/commands/new_api_key.rst | 23 - docs/commands/quotas.rst | 44 ++ docs/commands/quotas_get_quotas.rst | 24 - docs/commands/quotas_show_quota.rst | 25 - docs/commands/roles.rst | 42 ++ docs/commands/roles_get_roles.rst | 23 - docs/commands/roles_show_role.rst | 23 - docs/commands/toolShed_get_repositories.rst | 23 - .../toolShed_install_repository_revision.rst | 43 -- docs/commands/toolShed_show_repository.rst | 23 - docs/commands/tool_data.rst | 82 +++ docs/commands/tool_data_delete_data_table.rst | 23 - docs/commands/tool_data_get_data_tables.rst | 23 - docs/commands/tool_data_show_data_table.rst | 23 - docs/commands/tools.rst | 196 +++++++ docs/commands/tools_get_tool_panel.rst | 23 - docs/commands/tools_get_tools.rst | 27 - docs/commands/tools_paste_content.rst | 23 - docs/commands/tools_put_url.rst | 23 - docs/commands/tools_run_tool.rst | 23 - docs/commands/tools_show_tool.rst | 25 - docs/commands/tools_upload_file.rst | 23 - docs/commands/toolshed.rst | 84 +++ docs/commands/users.rst | 160 ++++++ docs/commands/users_create_local_user.rst | 23 - docs/commands/users_create_remote_user.rst | 23 - docs/commands/users_create_user.rst | 23 - docs/commands/users_create_user_apikey.rst | 23 - docs/commands/users_get_current_user.rst | 23 - docs/commands/users_get_users.rst | 24 - docs/commands/users_show_user.rst | 24 - docs/commands/visual.rst | 42 ++ docs/commands/visual_get_visualizations.rst | 23 - docs/commands/visual_show_visualization.rst | 23 - docs/commands/workflows.rst | 427 +++++++++++++++ docs/commands/workflows_delete_workflow.rst | 23 - .../workflows_export_workflow_json.rst | 23 - ...orkflows_export_workflow_to_local_path.rst | 29 - .../workflows_get_workflow_inputs.rst | 23 - docs/commands/workflows_get_workflows.rst | 31 -- .../workflows_import_shared_workflow.rst | 23 - ...kflows_import_workflow_from_local_path.rst | 23 - .../workflows_import_workflow_json.rst | 23 - docs/commands/workflows_run_workflow.rst | 50 -- docs/commands/workflows_show_workflow.rst | 23 - parsec/cli.py | 23 +- scripts/commands_to_rst.py | 109 ++-- 126 files changed, 2764 insertions(+), 2768 deletions(-) delete mode 100644 docs/commands/add_user.rst create mode 100644 docs/commands/config.rst delete mode 100644 docs/commands/config_get_config.rst delete mode 100644 docs/commands/config_init.rst delete mode 100644 docs/commands/dataset_download.rst delete mode 100644 docs/commands/dataset_upload.rst create mode 100644 docs/commands/datasets.rst delete mode 100644 docs/commands/datasets_download_dataset.rst delete mode 100644 docs/commands/datasets_show_dataset.rst delete mode 100644 docs/commands/datasets_show_stderr.rst delete mode 100644 docs/commands/datasets_show_stdout.rst create mode 100644 docs/commands/datatypes.rst delete mode 100644 docs/commands/datatypes_get_datatypes.rst delete mode 100644 docs/commands/datatypes_get_sniffers.rst create mode 100644 docs/commands/folders.rst delete mode 100644 docs/commands/folders_delete_folder.rst delete mode 100644 docs/commands/folders_show_folder.rst create mode 100644 docs/commands/forms.rst delete mode 100644 docs/commands/forms_create_form.rst delete mode 100644 docs/commands/forms_get_forms.rst delete mode 100644 docs/commands/forms_show_form.rst create mode 100644 docs/commands/ftpfiles.rst delete mode 100644 docs/commands/ftpfiles_get_ftp_files.rst create mode 100644 docs/commands/genomes.rst delete mode 100644 docs/commands/genomes_get_genomes.rst delete mode 100644 docs/commands/genomes_install_genome.rst delete mode 100644 docs/commands/genomes_show_genome.rst create mode 100644 docs/commands/groups.rst delete mode 100644 docs/commands/groups_create_group.rst delete mode 100644 docs/commands/groups_get_groups.rst delete mode 100644 docs/commands/groups_show_group.rst create mode 100644 docs/commands/histories.rst delete mode 100644 docs/commands/histories_create_dataset_collection.rst delete mode 100644 docs/commands/histories_create_history.rst delete mode 100644 docs/commands/histories_create_history_tag.rst delete mode 100644 docs/commands/histories_delete_dataset.rst delete mode 100644 docs/commands/histories_delete_dataset_collection.rst delete mode 100644 docs/commands/histories_delete_history.rst delete mode 100644 docs/commands/histories_download_history.rst delete mode 100644 docs/commands/histories_export_history.rst delete mode 100644 docs/commands/histories_get_histories.rst delete mode 100644 docs/commands/histories_get_most_recently_used_history.rst delete mode 100644 docs/commands/histories_get_status.rst delete mode 100644 docs/commands/histories_show_dataset.rst delete mode 100644 docs/commands/histories_show_dataset_collection.rst delete mode 100644 docs/commands/histories_show_dataset_provenance.rst delete mode 100644 docs/commands/histories_show_history.rst delete mode 100644 docs/commands/histories_show_matching_datasets.rst delete mode 100644 docs/commands/histories_undelete_history.rst delete mode 100644 docs/commands/histories_update_dataset.rst delete mode 100644 docs/commands/histories_update_dataset_collection.rst delete mode 100644 docs/commands/histories_update_history.rst delete mode 100644 docs/commands/histories_upload_dataset_from_library.rst delete mode 100644 docs/commands/history_create.rst delete mode 100644 docs/commands/history_delete.rst delete mode 100644 docs/commands/history_list.rst create mode 100644 docs/commands/jobs.rst delete mode 100644 docs/commands/jobs_get_jobs.rst delete mode 100644 docs/commands/jobs_get_state.rst delete mode 100644 docs/commands/jobs_search_jobs.rst delete mode 100644 docs/commands/jobs_show_job.rst create mode 100644 docs/commands/libraries.rst delete mode 100644 docs/commands/libraries_copy_from_dataset.rst delete mode 100644 docs/commands/libraries_create_folder.rst delete mode 100644 docs/commands/libraries_create_library.rst delete mode 100644 docs/commands/libraries_delete_library.rst delete mode 100644 docs/commands/libraries_delete_library_dataset.rst delete mode 100644 docs/commands/libraries_get_folders.rst delete mode 100644 docs/commands/libraries_get_libraries.rst delete mode 100644 docs/commands/libraries_set_library_permissions.rst delete mode 100644 docs/commands/libraries_show_dataset.rst delete mode 100644 docs/commands/libraries_show_folder.rst delete mode 100644 docs/commands/libraries_show_library.rst delete mode 100644 docs/commands/libraries_upload_file_contents.rst delete mode 100644 docs/commands/libraries_upload_file_from_local_path.rst delete mode 100644 docs/commands/libraries_upload_file_from_server.rst delete mode 100644 docs/commands/libraries_upload_file_from_url.rst delete mode 100644 docs/commands/libraries_upload_from_galaxy_filesystem.rst delete mode 100644 docs/commands/new_api_key.rst create mode 100644 docs/commands/quotas.rst delete mode 100644 docs/commands/quotas_get_quotas.rst delete mode 100644 docs/commands/quotas_show_quota.rst create mode 100644 docs/commands/roles.rst delete mode 100644 docs/commands/roles_get_roles.rst delete mode 100644 docs/commands/roles_show_role.rst delete mode 100644 docs/commands/toolShed_get_repositories.rst delete mode 100644 docs/commands/toolShed_install_repository_revision.rst delete mode 100644 docs/commands/toolShed_show_repository.rst create mode 100644 docs/commands/tool_data.rst delete mode 100644 docs/commands/tool_data_delete_data_table.rst delete mode 100644 docs/commands/tool_data_get_data_tables.rst delete mode 100644 docs/commands/tool_data_show_data_table.rst create mode 100644 docs/commands/tools.rst delete mode 100644 docs/commands/tools_get_tool_panel.rst delete mode 100644 docs/commands/tools_get_tools.rst delete mode 100644 docs/commands/tools_paste_content.rst delete mode 100644 docs/commands/tools_put_url.rst delete mode 100644 docs/commands/tools_run_tool.rst delete mode 100644 docs/commands/tools_show_tool.rst delete mode 100644 docs/commands/tools_upload_file.rst create mode 100644 docs/commands/toolshed.rst create mode 100644 docs/commands/users.rst delete mode 100644 docs/commands/users_create_local_user.rst delete mode 100644 docs/commands/users_create_remote_user.rst delete mode 100644 docs/commands/users_create_user.rst delete mode 100644 docs/commands/users_create_user_apikey.rst delete mode 100644 docs/commands/users_get_current_user.rst delete mode 100644 docs/commands/users_get_users.rst delete mode 100644 docs/commands/users_show_user.rst create mode 100644 docs/commands/visual.rst delete mode 100644 docs/commands/visual_get_visualizations.rst delete mode 100644 docs/commands/visual_show_visualization.rst create mode 100644 docs/commands/workflows.rst delete mode 100644 docs/commands/workflows_delete_workflow.rst delete mode 100644 docs/commands/workflows_export_workflow_json.rst delete mode 100644 docs/commands/workflows_export_workflow_to_local_path.rst delete mode 100644 docs/commands/workflows_get_workflow_inputs.rst delete mode 100644 docs/commands/workflows_get_workflows.rst delete mode 100644 docs/commands/workflows_import_shared_workflow.rst delete mode 100644 docs/commands/workflows_import_workflow_from_local_path.rst delete mode 100644 docs/commands/workflows_import_workflow_json.rst delete mode 100644 docs/commands/workflows_run_workflow.rst delete mode 100644 docs/commands/workflows_show_workflow.rst diff --git a/docs/commands.rst b/docs/commands.rst index 28e6711..f922a88 100644 --- a/docs/commands.rst +++ b/docs/commands.rst @@ -2,105 +2,30 @@ Commands ======== -parsec is a set of utilities for talking to Galaxy servers. Each utility is -implemented as a subcommand of the ``parsec`` executable. This section of the -documentation describes these commands. +parsec is a set of wrappers for BioBlend's API. It builds a set of small, +useful utilities for talking to Galaxy servers. Each utility is implemented as +a subcommand of ``parsec``. This section of the documentation +describes these commands. +.. toctree:: + :maxdepth: 0 -.. include:: commands/config_get_config.rst -.. include:: commands/config_init.rst -.. include:: commands/datasets_download_dataset.rst -.. include:: commands/datasets_show_dataset.rst -.. include:: commands/datasets_show_stderr.rst -.. include:: commands/datasets_show_stdout.rst -.. include:: commands/datatypes_get_datatypes.rst -.. include:: commands/datatypes_get_sniffers.rst -.. include:: commands/folders_delete_folder.rst -.. include:: commands/folders_show_folder.rst -.. include:: commands/forms_create_form.rst -.. include:: commands/forms_get_forms.rst -.. include:: commands/forms_show_form.rst -.. include:: commands/ftpfiles_get_ftp_files.rst -.. include:: commands/genomes_get_genomes.rst -.. include:: commands/genomes_install_genome.rst -.. include:: commands/genomes_show_genome.rst -.. include:: commands/groups_create_group.rst -.. include:: commands/groups_get_groups.rst -.. include:: commands/groups_show_group.rst -.. include:: commands/histories_create_dataset_collection.rst -.. include:: commands/histories_create_history.rst -.. include:: commands/histories_create_history_tag.rst -.. include:: commands/histories_delete_dataset.rst -.. include:: commands/histories_delete_dataset_collection.rst -.. include:: commands/histories_delete_history.rst -.. include:: commands/histories_download_history.rst -.. include:: commands/histories_export_history.rst -.. include:: commands/histories_get_histories.rst -.. include:: commands/histories_get_most_recently_used_history.rst -.. include:: commands/histories_get_status.rst -.. include:: commands/histories_show_dataset.rst -.. include:: commands/histories_show_dataset_collection.rst -.. include:: commands/histories_show_dataset_provenance.rst -.. include:: commands/histories_show_history.rst -.. include:: commands/histories_show_matching_datasets.rst -.. include:: commands/histories_undelete_history.rst -.. include:: commands/histories_update_dataset.rst -.. include:: commands/histories_update_dataset_collection.rst -.. include:: commands/histories_update_history.rst -.. include:: commands/histories_upload_dataset_from_library.rst -.. include:: commands/jobs_get_jobs.rst -.. include:: commands/jobs_get_state.rst -.. include:: commands/jobs_search_jobs.rst -.. include:: commands/jobs_show_job.rst -.. include:: commands/libraries_copy_from_dataset.rst -.. include:: commands/libraries_create_folder.rst -.. include:: commands/libraries_create_library.rst -.. include:: commands/libraries_delete_library.rst -.. include:: commands/libraries_delete_library_dataset.rst -.. include:: commands/libraries_get_folders.rst -.. include:: commands/libraries_get_libraries.rst -.. include:: commands/libraries_set_library_permissions.rst -.. include:: commands/libraries_show_dataset.rst -.. include:: commands/libraries_show_folder.rst -.. include:: commands/libraries_show_library.rst -.. include:: commands/libraries_upload_file_contents.rst -.. include:: commands/libraries_upload_file_from_local_path.rst -.. include:: commands/libraries_upload_file_from_server.rst -.. include:: commands/libraries_upload_file_from_url.rst -.. include:: commands/libraries_upload_from_galaxy_filesystem.rst -.. include:: commands/quotas_get_quotas.rst -.. include:: commands/quotas_show_quota.rst -.. include:: commands/roles_get_roles.rst -.. include:: commands/roles_show_role.rst -.. include:: commands/toolShed_get_repositories.rst -.. include:: commands/toolShed_install_repository_revision.rst -.. include:: commands/toolShed_show_repository.rst -.. include:: commands/tool_data_delete_data_table.rst -.. include:: commands/tool_data_get_data_tables.rst -.. include:: commands/tool_data_show_data_table.rst -.. include:: commands/tools_get_tool_panel.rst -.. include:: commands/tools_get_tools.rst -.. include:: commands/tools_paste_content.rst -.. include:: commands/tools_put_url.rst -.. include:: commands/tools_run_tool.rst -.. include:: commands/tools_show_tool.rst -.. include:: commands/tools_upload_file.rst -.. include:: commands/users_create_local_user.rst -.. include:: commands/users_create_remote_user.rst -.. include:: commands/users_create_user.rst -.. include:: commands/users_create_user_apikey.rst -.. include:: commands/users_get_current_user.rst -.. include:: commands/users_get_users.rst -.. include:: commands/users_show_user.rst -.. include:: commands/visual_get_visualizations.rst -.. include:: commands/visual_show_visualization.rst -.. include:: commands/workflows_delete_workflow.rst -.. include:: commands/workflows_export_workflow_json.rst -.. include:: commands/workflows_export_workflow_to_local_path.rst -.. include:: commands/workflows_get_workflow_inputs.rst -.. include:: commands/workflows_get_workflows.rst -.. include:: commands/workflows_import_shared_workflow.rst -.. include:: commands/workflows_import_workflow_from_local_path.rst -.. include:: commands/workflows_import_workflow_json.rst -.. include:: commands/workflows_run_workflow.rst -.. include:: commands/workflows_show_workflow.rst \ No newline at end of file + commands/config.rst + commands/datasets.rst + commands/datatypes.rst + commands/folders.rst + commands/forms.rst + commands/ftpfiles.rst + commands/genomes.rst + commands/groups.rst + commands/histories.rst + commands/jobs.rst + commands/libraries.rst + commands/quotas.rst + commands/roles.rst + commands/tool_data.rst + commands/tools.rst + commands/toolshed.rst + commands/users.rst + commands/visual.rst + commands/workflows.rst \ No newline at end of file diff --git a/docs/commands/add_user.rst b/docs/commands/add_user.rst deleted file mode 100644 index 48d03bc..0000000 --- a/docs/commands/add_user.rst +++ /dev/null @@ -1,27 +0,0 @@ - -``add_user`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``add_user``. This help message can be generated with ``parsec add_user ---help``. - -**Usage**:: - - parsec add_user [OPTIONS] - -**Help** - -Add a user to a galaxy instance - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --username TEXT Username for the new user [required] - --email TEXT Email for the new user [required] - --password TEXT Password for the new user [required] - --remote This galaxy instance is configured for REMOTE_USER - --help Show this message and exit. - diff --git a/docs/commands/config.rst b/docs/commands/config.rst new file mode 100644 index 0000000..5405e00 --- /dev/null +++ b/docs/commands/config.rst @@ -0,0 +1,37 @@ +config +====== + +``get_config`` command +---------------------- + +This section is auto-generated from the help text for the parsec command +``config``. + +**Usage**:: + + parsec config get_config [OPTIONS] + +**Help** + +Get a list of attributes about the Galaxy instance. More attributes will be present if the user is an admin. + +**Options**:: + + + --help Show this message and exit. + + +``init`` command +---------------- + +This section is auto-generated from the help text for the parsec command +``config``. + +**Usage**:: + + parsec config [OPTIONS] COMMAND [ARGS]... + +**Help** + +Help initialize global configuration (in home directory) + diff --git a/docs/commands/config_get_config.rst b/docs/commands/config_get_config.rst deleted file mode 100644 index 892f51e..0000000 --- a/docs/commands/config_get_config.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``config_get_config`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``config_get_config``. This help message can be generated with ``parsec config_get_config ---help``. - -**Usage**:: - - parsec config_get_config [OPTIONS] - -**Help** - -Get a list of attributes about galaxy instance. More attributes will be present if user is an admin - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/config_init.rst b/docs/commands/config_init.rst deleted file mode 100644 index 2a3c1cf..0000000 --- a/docs/commands/config_init.rst +++ /dev/null @@ -1,24 +0,0 @@ - -``config_init`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``config_init``. This help message can be generated with ``parsec config_init ---help``. - -**Usage**:: - - parsec config_init [OPTIONS] - -**Help** - -Help initialize global configuration (in home directory) - -**Options**:: - - - --url TEXT URL to galaxy server - --api_key TEXT API key for galaxy server - --admin This API key is an admin/master API key - --help Show this message and exit. - diff --git a/docs/commands/dataset_download.rst b/docs/commands/dataset_download.rst deleted file mode 100644 index 637f6f7..0000000 --- a/docs/commands/dataset_download.rst +++ /dev/null @@ -1,27 +0,0 @@ - -``dataset_download`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``dataset_download``. This help message can be generated with ``parsec dataset_download ---help``. - -**Usage**:: - - parsec dataset_download [OPTIONS] DATASET_ID - -**Help** - -Download a dataset from Galaxy - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --file_path TEXT Where to download the file to, leave empty to use - Galaxy history name - --maxwait INTEGER Maximum amount of time to wait for a dataset to - download - --help Show this message and exit. - diff --git a/docs/commands/dataset_upload.rst b/docs/commands/dataset_upload.rst deleted file mode 100644 index 151e0d3..0000000 --- a/docs/commands/dataset_upload.rst +++ /dev/null @@ -1,26 +0,0 @@ - -``dataset_upload`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``dataset_upload``. This help message can be generated with ``parsec dataset_upload ---help``. - -**Usage**:: - - parsec dataset_upload [OPTIONS] PATH HISTORY_ID - -**Help** - -Upload a dataset to a Galaxy history - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --file_name TEXT Name of the new history dataset - --file_type TEXT Galaxy datatype for the new dataset - --dbkey TEXT Genome dbkey - --help Show this message and exit. - diff --git a/docs/commands/datasets.rst b/docs/commands/datasets.rst new file mode 100644 index 0000000..0f4a42a --- /dev/null +++ b/docs/commands/datasets.rst @@ -0,0 +1,103 @@ +datasets +======== + +``download_dataset`` command +---------------------------- + +This section is auto-generated from the help text for the parsec command +``datasets``. + +**Usage**:: + + parsec datasets download_dataset [OPTIONS] DATASET_ID + +**Help** + +Download a dataset to file or in memory. + +**Options**:: + + + --file_path TEXT If this argument is provided, the dataset will be + streamed to disk at that path (should be a directory + if use_default_filename=True). If the file_path + argument is not provided, the dataset content is + loaded into memory and returned by the method (Memory + consumption may be heavy as the entire file will be in + memory). + --use_default_filename If this argument is True, the exported file will be + saved as file_path/%s, where %s is the dataset name. + If this argument is False, file_path is assumed to + contain the full file path including the filename. + --wait_for_completion If this argument is True, this method call will block + until the dataset is ready. If the dataset state + becomes invalid, a DatasetStateException will be + thrown. + --maxwait FLOAT Time (in seconds) to wait for dataset to complete. If + the dataset state is not complete within this time, a + DatasetTimeoutException will be thrown. + --help Show this message and exit. + + +``show_dataset`` command +------------------------ + +This section is auto-generated from the help text for the parsec command +``datasets``. + +**Usage**:: + + parsec datasets show_dataset [OPTIONS] DATASET_ID + +**Help** + +Get details about a given dataset. This can be a history or a library dataset. + +**Options**:: + + + --deleted Whether to return results for a deleted dataset + --hda_ldda TEXT Whether to show a history dataset ('hda' - the default) or + library dataset ('ldda'). + --help Show this message and exit. + + +``show_stderr`` command +----------------------- + +This section is auto-generated from the help text for the parsec command +``datasets``. + +**Usage**:: + + parsec datasets show_stderr [OPTIONS] DATASET_ID + +**Help** + +Get the stderr output of a dataset. + +**Options**:: + + + --help Show this message and exit. + + +``show_stdout`` command +----------------------- + +This section is auto-generated from the help text for the parsec command +``datasets``. + +**Usage**:: + + parsec datasets show_stdout [OPTIONS] DATASET_ID + +**Help** + +Get the stdout output of a dataset. + +**Options**:: + + + --help Show this message and exit. + diff --git a/docs/commands/datasets_download_dataset.rst b/docs/commands/datasets_download_dataset.rst deleted file mode 100644 index ce8a778..0000000 --- a/docs/commands/datasets_download_dataset.rst +++ /dev/null @@ -1,45 +0,0 @@ - -``datasets_download_dataset`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``datasets_download_dataset``. This help message can be generated with ``parsec datasets_download_dataset ---help``. - -**Usage**:: - - parsec datasets_download_dataset [OPTIONS] DATASET_ID - -**Help** - -Downloads the dataset identified by 'id'. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --file_path TEXT If the file_path argument is provided, the dataset - will be streamed to disk at that path (Should not - contain filename if use_default_name=True). If the - file_path argument is not provided, the dataset - content is loaded into memory and returned by the - method (Memory consumption may be heavy as the - entire file will be in memory). - --use_default_filename If the use_default_name parameter is True, the - exported file will be saved as file_path/%s, where - %s is the dataset name. If use_default_name is - False, file_path is assumed to contain the full file - path including filename. - --wait_for_completion If wait_for_completion is True, this call will block - until the dataset is ready. If the dataset state - becomes invalid, a DatasetStateException will be - thrown. - --maxwait FLOAT Time (in seconds) to wait for dataset to complete. - If the dataset state is not complete within this - time, a DatasetTimeoutException will be thrown. - --file_ext TEXT Extension to request from Galaxy. Will default to - dataset file_ext value. Provided for backwards - compatability with HistoryClient.download_dataset() - --help Show this message and exit. - diff --git a/docs/commands/datasets_show_dataset.rst b/docs/commands/datasets_show_dataset.rst deleted file mode 100644 index 808ba31..0000000 --- a/docs/commands/datasets_show_dataset.rst +++ /dev/null @@ -1,26 +0,0 @@ - -``datasets_show_dataset`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``datasets_show_dataset``. This help message can be generated with ``parsec datasets_show_dataset ---help``. - -**Usage**:: - - parsec datasets_show_dataset [OPTIONS] DATASET_ID - -**Help** - -Display information about and/or content of a dataset. This can be a history or a library dataset. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --deleted Whether to return results for a deleted dataset - --hda_ldda TEXT Whether to show a history dataset ('hda' - the - default) or library dataset ('ldda'). - --help Show this message and exit. - diff --git a/docs/commands/datasets_show_stderr.rst b/docs/commands/datasets_show_stderr.rst deleted file mode 100644 index fe35742..0000000 --- a/docs/commands/datasets_show_stderr.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``datasets_show_stderr`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``datasets_show_stderr``. This help message can be generated with ``parsec datasets_show_stderr ---help``. - -**Usage**:: - - parsec datasets_show_stderr [OPTIONS] DATASET_ID - -**Help** - -Display stderr output of a dataset. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/datasets_show_stdout.rst b/docs/commands/datasets_show_stdout.rst deleted file mode 100644 index c8c1828..0000000 --- a/docs/commands/datasets_show_stdout.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``datasets_show_stdout`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``datasets_show_stdout``. This help message can be generated with ``parsec datasets_show_stdout ---help``. - -**Usage**:: - - parsec datasets_show_stdout [OPTIONS] DATASET_ID - -**Help** - -Display stdout output of a dataset. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/datatypes.rst b/docs/commands/datatypes.rst new file mode 100644 index 0000000..2c7afd2 --- /dev/null +++ b/docs/commands/datatypes.rst @@ -0,0 +1,44 @@ +datatypes +========= + +``get_datatypes`` command +------------------------- + +This section is auto-generated from the help text for the parsec command +``datatypes``. + +**Usage**:: + + parsec datatypes get_datatypes [OPTIONS] + +**Help** + +Get the list of all installed datatypes. + +**Options**:: + + + --extension_only TEXT None + --upload_only TEXT None + --help Show this message and exit. + + +``get_sniffers`` command +------------------------ + +This section is auto-generated from the help text for the parsec command +``datatypes``. + +**Usage**:: + + parsec datatypes get_sniffers [OPTIONS] + +**Help** + +Get the list of all installed sniffers. + +**Options**:: + + + --help Show this message and exit. + diff --git a/docs/commands/datatypes_get_datatypes.rst b/docs/commands/datatypes_get_datatypes.rst deleted file mode 100644 index d72de12..0000000 --- a/docs/commands/datatypes_get_datatypes.rst +++ /dev/null @@ -1,25 +0,0 @@ - -``datatypes_get_datatypes`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``datatypes_get_datatypes``. This help message can be generated with ``parsec datatypes_get_datatypes ---help``. - -**Usage**:: - - parsec datatypes_get_datatypes [OPTIONS] - -**Help** - -Displays a collection (list) of datatypes. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --extension_only TEXT None - --upload_only TEXT None - --help Show this message and exit. - diff --git a/docs/commands/datatypes_get_sniffers.rst b/docs/commands/datatypes_get_sniffers.rst deleted file mode 100644 index da246e1..0000000 --- a/docs/commands/datatypes_get_sniffers.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``datatypes_get_sniffers`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``datatypes_get_sniffers``. This help message can be generated with ``parsec datatypes_get_sniffers ---help``. - -**Usage**:: - - parsec datatypes_get_sniffers [OPTIONS] - -**Help** - -Displays a collection (list) of sniffers. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/folders.rst b/docs/commands/folders.rst new file mode 100644 index 0000000..93a623c --- /dev/null +++ b/docs/commands/folders.rst @@ -0,0 +1,44 @@ +folders +======= + +``delete_folder`` command +------------------------- + +This section is auto-generated from the help text for the parsec command +``folders``. + +**Usage**:: + + parsec folders delete_folder [OPTIONS] FOLDER_ID + +**Help** + +Marks the folder with the given ``id`` as `deleted` (or removes the `deleted` mark if the `undelete` param is True). + +**Options**:: + + + --undelete If set to True, the folder will be undeleted (i.e. the `deleted` + mark will be removed) + --help Show this message and exit. + + +``show_folder`` command +----------------------- + +This section is auto-generated from the help text for the parsec command +``folders``. + +**Usage**:: + + parsec folders show_folder [OPTIONS] FOLDER_ID + +**Help** + +Display information about a folder. + +**Options**:: + + + --help Show this message and exit. + diff --git a/docs/commands/folders_delete_folder.rst b/docs/commands/folders_delete_folder.rst deleted file mode 100644 index c4e3ad9..0000000 --- a/docs/commands/folders_delete_folder.rst +++ /dev/null @@ -1,25 +0,0 @@ - -``folders_delete_folder`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``folders_delete_folder``. This help message can be generated with ``parsec folders_delete_folder ---help``. - -**Usage**:: - - parsec folders_delete_folder [OPTIONS] FOLDER_ID - -**Help** - -Marks the folder with the given ``id`` as `deleted` (or removes the `deleted` mark if the `undelete` param is True). - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --undelete If set to True, the folder will be undeleted (i.e. - the `deleted` mark will be removed) - --help Show this message and exit. - diff --git a/docs/commands/folders_show_folder.rst b/docs/commands/folders_show_folder.rst deleted file mode 100644 index 2bd3f14..0000000 --- a/docs/commands/folders_show_folder.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``folders_show_folder`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``folders_show_folder``. This help message can be generated with ``parsec folders_show_folder ---help``. - -**Usage**:: - - parsec folders_show_folder [OPTIONS] FOLDER_ID - -**Help** - -Display information about a folder. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/forms.rst b/docs/commands/forms.rst new file mode 100644 index 0000000..9656153 --- /dev/null +++ b/docs/commands/forms.rst @@ -0,0 +1,62 @@ +forms +===== + +``create_form`` command +----------------------- + +This section is auto-generated from the help text for the parsec command +``forms``. + +**Usage**:: + + parsec forms create_form [OPTIONS] FORM_XML_TEXT + +**Help** + +Create a new form. + +**Options**:: + + + --help Show this message and exit. + + +``get_forms`` command +--------------------- + +This section is auto-generated from the help text for the parsec command +``forms``. + +**Usage**:: + + parsec forms get_forms [OPTIONS] + +**Help** + +Get the list of all forms. + +**Options**:: + + + --help Show this message and exit. + + +``show_form`` command +--------------------- + +This section is auto-generated from the help text for the parsec command +``forms``. + +**Usage**:: + + parsec forms show_form [OPTIONS] FORM_ID + +**Help** + +Get details of a given form. + +**Options**:: + + + --help Show this message and exit. + diff --git a/docs/commands/forms_create_form.rst b/docs/commands/forms_create_form.rst deleted file mode 100644 index 0c1ed21..0000000 --- a/docs/commands/forms_create_form.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``forms_create_form`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``forms_create_form``. This help message can be generated with ``parsec forms_create_form ---help``. - -**Usage**:: - - parsec forms_create_form [OPTIONS] FORM_XML_TEXT - -**Help** - -Create a new form - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/forms_get_forms.rst b/docs/commands/forms_get_forms.rst deleted file mode 100644 index 99a3be8..0000000 --- a/docs/commands/forms_get_forms.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``forms_get_forms`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``forms_get_forms``. This help message can be generated with ``parsec forms_get_forms ---help``. - -**Usage**:: - - parsec forms_get_forms [OPTIONS] - -**Help** - -Get a list of forms - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/forms_show_form.rst b/docs/commands/forms_show_form.rst deleted file mode 100644 index 52ff44c..0000000 --- a/docs/commands/forms_show_form.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``forms_show_form`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``forms_show_form``. This help message can be generated with ``parsec forms_show_form ---help``. - -**Usage**:: - - parsec forms_show_form [OPTIONS] FORM_ID - -**Help** - -Display information on a single form - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/ftpfiles.rst b/docs/commands/ftpfiles.rst new file mode 100644 index 0000000..e228553 --- /dev/null +++ b/docs/commands/ftpfiles.rst @@ -0,0 +1,23 @@ +ftpfiles +======== + +``get_ftp_files`` command +------------------------- + +This section is auto-generated from the help text for the parsec command +``ftpfiles``. + +**Usage**:: + + parsec ftpfiles get_ftp_files [OPTIONS] + +**Help** + +Get a list of local files. + +**Options**:: + + + --deleted TEXT None + --help Show this message and exit. + diff --git a/docs/commands/ftpfiles_get_ftp_files.rst b/docs/commands/ftpfiles_get_ftp_files.rst deleted file mode 100644 index c56c6bd..0000000 --- a/docs/commands/ftpfiles_get_ftp_files.rst +++ /dev/null @@ -1,24 +0,0 @@ - -``ftpfiles_get_ftp_files`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``ftpfiles_get_ftp_files``. This help message can be generated with ``parsec ftpfiles_get_ftp_files ---help``. - -**Usage**:: - - parsec ftpfiles_get_ftp_files [OPTIONS] - -**Help** - -Get a list of local files - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --deleted TEXT None - --help Show this message and exit. - diff --git a/docs/commands/genomes.rst b/docs/commands/genomes.rst new file mode 100644 index 0000000..d5d527f --- /dev/null +++ b/docs/commands/genomes.rst @@ -0,0 +1,80 @@ +genomes +======= + +``get_genomes`` command +----------------------- + +This section is auto-generated from the help text for the parsec command +``genomes``. + +**Usage**:: + + parsec genomes get_genomes [OPTIONS] + +**Help** + +Returns a list of installed genomes + +**Options**:: + + + --help Show this message and exit. + + +``install_genome`` command +-------------------------- + +This section is auto-generated from the help text for the parsec command +``genomes``. + +**Usage**:: + + parsec genomes install_genome [OPTIONS] + +**Help** + +Download and/or index a genome. + +**Options**:: + + + --func TEXT Allowed values: 'download', Download and index; 'index', + Index only + --source TEXT Data source for this build. Can be: UCSC, Ensembl, NCBI, + URL + --dbkey TEXT DB key of the build to download, ignored unless 'UCSC' + is specified as the source + --ncbi_name TEXT NCBI's genome identifier, ignored unless NCBI is + specified as the source + --ensembl_dbkey TEXT Ensembl's genome identifier, ignored unless Ensembl is + specified as the source + --url_dbkey TEXT DB key to use for this build, ignored unless URL is + specified as the source + --indexers TEXT POST array of indexers to run after downloading + (indexers[] = first, indexers[] = second, ...) + --help Show this message and exit. + + +``show_genome`` command +----------------------- + +This section is auto-generated from the help text for the parsec command +``genomes``. + +**Usage**:: + + parsec genomes show_genome [OPTIONS] ID + +**Help** + +Returns information about build + +**Options**:: + + + --num TEXT num + --chrom TEXT chrom + --low TEXT low + --high TEXT high + --help Show this message and exit. + diff --git a/docs/commands/genomes_get_genomes.rst b/docs/commands/genomes_get_genomes.rst deleted file mode 100644 index 922620e..0000000 --- a/docs/commands/genomes_get_genomes.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``genomes_get_genomes`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``genomes_get_genomes``. This help message can be generated with ``parsec genomes_get_genomes ---help``. - -**Usage**:: - - parsec genomes_get_genomes [OPTIONS] - -**Help** - -Returns a list of installed genomes - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/genomes_install_genome.rst b/docs/commands/genomes_install_genome.rst deleted file mode 100644 index 0aec19e..0000000 --- a/docs/commands/genomes_install_genome.rst +++ /dev/null @@ -1,37 +0,0 @@ - -``genomes_install_genome`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``genomes_install_genome``. This help message can be generated with ``parsec genomes_install_genome ---help``. - -**Usage**:: - - parsec genomes_install_genome [OPTIONS] - -**Help** - -Download and/or index a genome. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --func TEXT Allowed values: 'download', Download and index; - 'index', Index only - --source TEXT Data source for this build. Can be: UCSC, Ensembl, - NCBI, URL - --dbkey TEXT DB key of the build to download, ignored unless - 'UCSC' is specified as the source - --ncbi_name TEXT NCBI's genome identifier, ignored unless NCBI is - specified as the source - --ensembl_dbkey TEXT Ensembl's genome identifier, ignored unless Ensembl - is specified as the source - --url_dbkey TEXT DB key to use for this build, ignored unless URL is - specified as the source - --indexers TEXT POST array of indexers to run after downloading - (indexers[] = first, indexers[] = second, ...) - --help Show this message and exit. - diff --git a/docs/commands/genomes_show_genome.rst b/docs/commands/genomes_show_genome.rst deleted file mode 100644 index 5e29bd2..0000000 --- a/docs/commands/genomes_show_genome.rst +++ /dev/null @@ -1,27 +0,0 @@ - -``genomes_show_genome`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``genomes_show_genome``. This help message can be generated with ``parsec genomes_show_genome ---help``. - -**Usage**:: - - parsec genomes_show_genome [OPTIONS] ID - -**Help** - -Returns information about build - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --num TEXT num - --chrom TEXT chrom - --low TEXT low - --high TEXT high - --help Show this message and exit. - diff --git a/docs/commands/groups.rst b/docs/commands/groups.rst new file mode 100644 index 0000000..5e3c52c --- /dev/null +++ b/docs/commands/groups.rst @@ -0,0 +1,212 @@ +groups +====== + +``add_group_role`` command +-------------------------- + +This section is auto-generated from the help text for the parsec command +``groups``. + +**Usage**:: + + parsec groups add_group_role [OPTIONS] GROUP_ID ROLE_ID + +**Help** + +Add a role to the given group. + +**Options**:: + + + --help Show this message and exit. + + +``add_group_user`` command +-------------------------- + +This section is auto-generated from the help text for the parsec command +``groups``. + +**Usage**:: + + parsec groups add_group_user [OPTIONS] GROUP_ID USER_ID + +**Help** + +Add a user to the given group. + +**Options**:: + + + --help Show this message and exit. + + +``create_group`` command +------------------------ + +This section is auto-generated from the help text for the parsec command +``groups``. + +**Usage**:: + + parsec groups create_group [OPTIONS] GROUP_NAME + +**Help** + +Create a new group. + +**Options**:: + + + --user_ids TEXT A list of encoded user IDs to add to the new group + --role_ids TEXT A list of encoded role IDs to add to the new group + --help Show this message and exit. + + +``delete_group_role`` command +----------------------------- + +This section is auto-generated from the help text for the parsec command +``groups``. + +**Usage**:: + + parsec groups delete_group_role [OPTIONS] GROUP_ID ROLE_ID + +**Help** + +Remove a role from the given group. + +**Options**:: + + + --help Show this message and exit. + + +``delete_group_user`` command +----------------------------- + +This section is auto-generated from the help text for the parsec command +``groups``. + +**Usage**:: + + parsec groups delete_group_user [OPTIONS] GROUP_ID USER_ID + +**Help** + +Remove a user from the given group. + +**Options**:: + + + --help Show this message and exit. + + +``get_group_roles`` command +--------------------------- + +This section is auto-generated from the help text for the parsec command +``groups``. + +**Usage**:: + + parsec groups get_group_roles [OPTIONS] GROUP_ID + +**Help** + +Get the list of roles associated to the given group. + +**Options**:: + + + --help Show this message and exit. + + +``get_group_users`` command +--------------------------- + +This section is auto-generated from the help text for the parsec command +``groups``. + +**Usage**:: + + parsec groups get_group_users [OPTIONS] GROUP_ID + +**Help** + +Get the list of users associated to the given group. + +**Options**:: + + + --help Show this message and exit. + + +``get_groups`` command +---------------------- + +This section is auto-generated from the help text for the parsec command +``groups``. + +**Usage**:: + + parsec groups get_groups [OPTIONS] + +**Help** + +Get all (not deleted) groups. + +**Options**:: + + + --help Show this message and exit. + + +``show_group`` command +---------------------- + +This section is auto-generated from the help text for the parsec command +``groups``. + +**Usage**:: + + parsec groups show_group [OPTIONS] GROUP_ID + +**Help** + +Get details of a given group. + +**Options**:: + + + --help Show this message and exit. + + +``update_group`` command +------------------------ + +This section is auto-generated from the help text for the parsec command +``groups``. + +**Usage**:: + + parsec groups update_group [OPTIONS] GROUP_ID + +**Help** + +Update a group. + +**Options**:: + + + --group_name TEXT A new name for the group. If None, the group name is not + changed. + --user_ids TEXT New list of encoded user IDs for the group. It will + substitute the previous list of users (with [] if not + specified) + --role_ids TEXT New list of encoded role IDs for the group. It will + substitute the previous list of roles (with [] if not + specified) + --help Show this message and exit. + diff --git a/docs/commands/groups_create_group.rst b/docs/commands/groups_create_group.rst deleted file mode 100644 index 48a4d6e..0000000 --- a/docs/commands/groups_create_group.rst +++ /dev/null @@ -1,25 +0,0 @@ - -``groups_create_group`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``groups_create_group``. This help message can be generated with ``parsec groups_create_group ---help``. - -**Usage**:: - - parsec groups_create_group [OPTIONS] GROUP_NAME - -**Help** - -Create a new Galaxy group - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --user_ids TEXT A list of encoded user IDs to add to the new group - --role_ids TEXT A list of encoded role IDs to add to the new group - --help Show this message and exit. - diff --git a/docs/commands/groups_get_groups.rst b/docs/commands/groups_get_groups.rst deleted file mode 100644 index 44f79b0..0000000 --- a/docs/commands/groups_get_groups.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``groups_get_groups`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``groups_get_groups``. This help message can be generated with ``parsec groups_get_groups ---help``. - -**Usage**:: - - parsec groups_get_groups [OPTIONS] - -**Help** - -Displays a collection (list) of groups. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/groups_show_group.rst b/docs/commands/groups_show_group.rst deleted file mode 100644 index 4aa8591..0000000 --- a/docs/commands/groups_show_group.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``groups_show_group`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``groups_show_group``. This help message can be generated with ``parsec groups_show_group ---help``. - -**Usage**:: - - parsec groups_show_group [OPTIONS] GROUP_ID - -**Help** - -Display information on a single group - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/histories.rst b/docs/commands/histories.rst new file mode 100644 index 0000000..092585a --- /dev/null +++ b/docs/commands/histories.rst @@ -0,0 +1,506 @@ +histories +========= + +``create_dataset_collection`` command +------------------------------------- + +This section is auto-generated from the help text for the parsec command +``histories``. + +**Usage**:: + + parsec histories create_dataset_collection [OPTIONS] HISTORY_ID + +**Help** + +Create a new dataset collection + +**Options**:: + + + --help Show this message and exit. + + +``create_history`` command +-------------------------- + +This section is auto-generated from the help text for the parsec command +``histories``. + +**Usage**:: + + parsec histories create_history [OPTIONS] + +**Help** + +Create a new history, optionally setting the ``name``. + +**Options**:: + + + --name TEXT Optional name for new history + --help Show this message and exit. + + +``create_history_tag`` command +------------------------------ + +This section is auto-generated from the help text for the parsec command +``histories``. + +**Usage**:: + + parsec histories create_history_tag [OPTIONS] HISTORY_ID TAG + +**Help** + +Create history tag + +**Options**:: + + + --help Show this message and exit. + + +``delete_dataset`` command +-------------------------- + +This section is auto-generated from the help text for the parsec command +``histories``. + +**Usage**:: + + parsec histories delete_dataset [OPTIONS] HISTORY_ID DATASET_ID + +**Help** + +Mark corresponding dataset as deleted. + +**Options**:: + + + --purge if ``True``, also purge (permanently delete) the dataset + --help Show this message and exit. + + +``delete_dataset_collection`` command +------------------------------------- + +This section is auto-generated from the help text for the parsec command +``histories``. + +**Usage**:: + + parsec histories delete_dataset_collection [OPTIONS] HISTORY_ID + +**Help** + +Mark corresponding dataset collection as deleted. + +**Options**:: + + + --help Show this message and exit. + + +``delete_history`` command +-------------------------- + +This section is auto-generated from the help text for the parsec command +``histories``. + +**Usage**:: + + parsec histories delete_history [OPTIONS] HISTORY_ID + +**Help** + +Delete a history. + +**Options**:: + + + --purge if ``True``, also purge (permanently delete) the history + --help Show this message and exit. + + +``download_dataset`` command +---------------------------- + +This section is auto-generated from the help text for the parsec command +``histories``. + +**Usage**:: + + parsec histories download_dataset [OPTIONS] HISTORY_ID DATASET_ID + +**Help** + +Deprecated method, use :meth:`~bioblend.galaxy.datasets.DatasetClient.download_dataset` instead. + +**Options**:: + + + --use_default_filename TEXT None + --help Show this message and exit. + + +``download_history`` command +---------------------------- + +This section is auto-generated from the help text for the parsec command +``histories``. + +**Usage**:: + + parsec histories download_history [OPTIONS] HISTORY_ID JEHA_ID OUTF + +**Help** + +Download a history export archive. Use :meth:`export_history` to create an export. + +**Options**:: + + + --chunk_size INTEGER how many bytes at a time should be read into memory + --help Show this message and exit. + + +``export_history`` command +-------------------------- + +This section is auto-generated from the help text for the parsec command +``histories``. + +**Usage**:: + + parsec histories export_history [OPTIONS] HISTORY_ID + +**Help** + +Start a job to create an export archive for the given history. + +**Options**:: + + + --gzip create .tar.gz archive if ``True``, else .tar + --include_hidden whether to include hidden datasets in the export + --include_deleted whether to include deleted datasets in the export + --wait if ``True``, block until the export is ready; else, return + immediately + --help Show this message and exit. + + +``get_current_history`` command +------------------------------- + +This section is auto-generated from the help text for the parsec command +``histories``. + +**Usage**:: + + parsec histories get_current_history [OPTIONS] + +**Help** + +Deprecated method. + +**Options**:: + + + --help Show this message and exit. + + +``get_histories`` command +------------------------- + +This section is auto-generated from the help text for the parsec command +``histories``. + +**Usage**:: + + parsec histories get_histories [OPTIONS] + +**Help** + +Get all histories or filter the specific one(s) via the provided ``name`` or ``history_id``. Provide only one argument, ``name`` or ``history_id``, but not both. + +**Options**:: + + + --history_id TEXT Encoded history ID to filter on + --name TEXT Name of history to filter on + --deleted TEXT None + --help Show this message and exit. + + +``get_most_recently_used_history`` command +------------------------------------------ + +This section is auto-generated from the help text for the parsec command +``histories``. + +**Usage**:: + + parsec histories get_most_recently_used_history [OPTIONS] + +**Help** + +Returns the current user's most recently used history (not deleted). + +**Options**:: + + + --help Show this message and exit. + + +``get_status`` command +---------------------- + +This section is auto-generated from the help text for the parsec command +``histories``. + +**Usage**:: + + parsec histories get_status [OPTIONS] HISTORY_ID + +**Help** + +Returns the state of this history + +**Options**:: + + + --help Show this message and exit. + + +``show_dataset`` command +------------------------ + +This section is auto-generated from the help text for the parsec command +``histories``. + +**Usage**:: + + parsec histories show_dataset [OPTIONS] HISTORY_ID DATASET_ID + +**Help** + +Get details about a given history dataset. + +**Options**:: + + + --help Show this message and exit. + + +``show_dataset_collection`` command +----------------------------------- + +This section is auto-generated from the help text for the parsec command +``histories``. + +**Usage**:: + + parsec histories show_dataset_collection [OPTIONS] HISTORY_ID + +**Help** + +Get details about a given history dataset collection. + +**Options**:: + + + --help Show this message and exit. + + +``show_dataset_provenance`` command +----------------------------------- + +This section is auto-generated from the help text for the parsec command +``histories``. + +**Usage**:: + + parsec histories show_dataset_provenance [OPTIONS] HISTORY_ID DATASET_ID + +**Help** + +Get details related to how dataset was created (``id``, ``job_id``, ``tool_id``, ``stdout``, ``stderr``, ``parameters``, ``inputs``, etc...). + +**Options**:: + + + --follow If ``follow`` is ``True``, recursively fetch dataset provenance + information for all inputs and their inputs, etc... + --help Show this message and exit. + + +``show_history`` command +------------------------ + +This section is auto-generated from the help text for the parsec command +``histories``. + +**Usage**:: + + parsec histories show_history [OPTIONS] HISTORY_ID + +**Help** + +Get details of a given history. By default, just get the history meta information. + +**Options**:: + + + --contents When ``True``, the complete list of datasets in the given + history. + --deleted TEXT Used when contents=True, includes deleted datasets in history + dataset list + --visible TEXT Used when contents=True, includes only visible datasets in + history dataset list + --details TEXT Used when contents=True, includes dataset details. Set to + 'all' for the most information + --types TEXT ??? + --help Show this message and exit. + + +``show_matching_datasets`` command +---------------------------------- + +This section is auto-generated from the help text for the parsec command +``histories``. + +**Usage**:: + + parsec histories show_matching_datasets [OPTIONS] HISTORY_ID + +**Help** + +Get dataset details for matching datasets within a history. + +**Options**:: + + + --name_filter TEXT Only datasets whose name matches the ``name_filter`` + regular expression will be returned; use plain strings for + exact matches and None to match all datasets in the + history + --help Show this message and exit. + + +``undelete_history`` command +---------------------------- + +This section is auto-generated from the help text for the parsec command +``histories``. + +**Usage**:: + + parsec histories undelete_history [OPTIONS] HISTORY_ID + +**Help** + +Undelete a history + +**Options**:: + + + --help Show this message and exit. + + +``update_dataset`` command +-------------------------- + +This section is auto-generated from the help text for the parsec command +``histories``. + +**Usage**:: + + parsec histories update_dataset [OPTIONS] HISTORY_ID DATASET_ID + +**Help** + +Update history dataset metadata. Some of the attributes that can be modified are documented below. + +**Options**:: + + + --name TEXT Replace history dataset name with the given string + --annotation TEXT Replace history dataset annotation with given string + --deleted Mark or unmark history dataset as deleted + --visible Mark or unmark history dataset as visible + --genome_build TEXT Replace history dataset genome build (dbkey) + --help Show this message and exit. + + +``update_dataset_collection`` command +------------------------------------- + +This section is auto-generated from the help text for the parsec command +``histories``. + +**Usage**:: + + parsec histories update_dataset_collection [OPTIONS] HISTORY_ID + +**Help** + +Update history dataset collection metadata. Some of the attributes that can be modified are documented below. + +**Options**:: + + + --name TEXT Replace history dataset collection name with the given string + --deleted Mark or unmark history dataset collection as deleted + --visible Mark or unmark history dataset collection as visible + --help Show this message and exit. + + +``update_history`` command +-------------------------- + +This section is auto-generated from the help text for the parsec command +``histories``. + +**Usage**:: + + parsec histories update_history [OPTIONS] HISTORY_ID + +**Help** + +Update history metadata information. Some of the attributes that can be modified are documented below. + +**Options**:: + + + --tags TEXT Replace history tags with the given list + --importable Mark or unmark history as importable + --purged If True, mark history as purged (permanently deleted). + Ignored on Galaxy release_15.01 and earlier + --name TEXT Replace history name with the given string + --annotation TEXT Replace history annotation with given string + --deleted Mark or unmark history as deleted + --published Mark or unmark history as published + --help Show this message and exit. + + +``upload_dataset_from_library`` command +--------------------------------------- + +This section is auto-generated from the help text for the parsec command +``histories``. + +**Usage**:: + + parsec histories upload_dataset_from_library [OPTIONS] HISTORY_ID + +**Help** + +Upload a dataset into the history from a library. Requires the library dataset ID, which can be obtained from the library contents. + +**Options**:: + + + --help Show this message and exit. + diff --git a/docs/commands/histories_create_dataset_collection.rst b/docs/commands/histories_create_dataset_collection.rst deleted file mode 100644 index eaa4a5e..0000000 --- a/docs/commands/histories_create_dataset_collection.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``histories_create_dataset_collection`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``histories_create_dataset_collection``. This help message can be generated with ``parsec histories_create_dataset_collection ---help``. - -**Usage**:: - - parsec histories_create_dataset_collection [OPTIONS] HISTORY_ID - -**Help** - -Create a new dataset collection - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/histories_create_history.rst b/docs/commands/histories_create_history.rst deleted file mode 100644 index 9be6844..0000000 --- a/docs/commands/histories_create_history.rst +++ /dev/null @@ -1,24 +0,0 @@ - -``histories_create_history`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``histories_create_history``. This help message can be generated with ``parsec histories_create_history ---help``. - -**Usage**:: - - parsec histories_create_history [OPTIONS] - -**Help** - -Create a new history, optionally setting the ``name``. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --name TEXT Optional name for new history - --help Show this message and exit. - diff --git a/docs/commands/histories_create_history_tag.rst b/docs/commands/histories_create_history_tag.rst deleted file mode 100644 index 0384fc4..0000000 --- a/docs/commands/histories_create_history_tag.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``histories_create_history_tag`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``histories_create_history_tag``. This help message can be generated with ``parsec histories_create_history_tag ---help``. - -**Usage**:: - - parsec histories_create_history_tag [OPTIONS] HISTORY_ID TAG - -**Help** - -Create history tag - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/histories_delete_dataset.rst b/docs/commands/histories_delete_dataset.rst deleted file mode 100644 index 5fa4e55..0000000 --- a/docs/commands/histories_delete_dataset.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``histories_delete_dataset`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``histories_delete_dataset``. This help message can be generated with ``parsec histories_delete_dataset ---help``. - -**Usage**:: - - parsec histories_delete_dataset [OPTIONS] HISTORY_ID DATASET_ID - -**Help** - -Mark corresponding dataset as deleted. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/histories_delete_dataset_collection.rst b/docs/commands/histories_delete_dataset_collection.rst deleted file mode 100644 index 92e2f2a..0000000 --- a/docs/commands/histories_delete_dataset_collection.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``histories_delete_dataset_collection`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``histories_delete_dataset_collection``. This help message can be generated with ``parsec histories_delete_dataset_collection ---help``. - -**Usage**:: - - parsec histories_delete_dataset_collection [OPTIONS] HISTORY_ID - -**Help** - -Mark corresponding dataset collection as deleted. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/histories_delete_history.rst b/docs/commands/histories_delete_history.rst deleted file mode 100644 index 075b24f..0000000 --- a/docs/commands/histories_delete_history.rst +++ /dev/null @@ -1,24 +0,0 @@ - -``histories_delete_history`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``histories_delete_history``. This help message can be generated with ``parsec histories_delete_history ---help``. - -**Usage**:: - - parsec histories_delete_history [OPTIONS] HISTORY_ID - -**Help** - -Delete a history. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --purge Purge the history - --help Show this message and exit. - diff --git a/docs/commands/histories_download_history.rst b/docs/commands/histories_download_history.rst deleted file mode 100644 index 0fbacd4..0000000 --- a/docs/commands/histories_download_history.rst +++ /dev/null @@ -1,24 +0,0 @@ - -``histories_download_history`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``histories_download_history``. This help message can be generated with ``parsec histories_download_history ---help``. - -**Usage**:: - - parsec histories_download_history [OPTIONS] HISTORY_ID JEHA_ID OUTF - -**Help** - -Download a history export archive. Use :meth:`export_history` to create an export. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --chunk_size INTEGER how many bytes at a time should be read into memory - --help Show this message and exit. - diff --git a/docs/commands/histories_export_history.rst b/docs/commands/histories_export_history.rst deleted file mode 100644 index ccf8e88..0000000 --- a/docs/commands/histories_export_history.rst +++ /dev/null @@ -1,28 +0,0 @@ - -``histories_export_history`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``histories_export_history``. This help message can be generated with ``parsec histories_export_history ---help``. - -**Usage**:: - - parsec histories_export_history [OPTIONS] HISTORY_ID - -**Help** - -Start a job to create an export archive for the given history. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --gzip create .tar.gz archive if :obj:`True`, else .tar - --include_hidden whether to include hidden datasets in the export - --include_deleted whether to include deleted datasets in the export - --wait if :obj:`True`, block until the export is ready; - else, return immediately - --help Show this message and exit. - diff --git a/docs/commands/histories_get_histories.rst b/docs/commands/histories_get_histories.rst deleted file mode 100644 index f94e0d1..0000000 --- a/docs/commands/histories_get_histories.rst +++ /dev/null @@ -1,26 +0,0 @@ - -``histories_get_histories`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``histories_get_histories``. This help message can be generated with ``parsec histories_get_histories ---help``. - -**Usage**:: - - parsec histories_get_histories [OPTIONS] - -**Help** - -Get all histories or filter the specific one(s) via the provided ``name`` or ``history_id``. Provide only one argument, ``name`` or ``history_id``, but not both. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --history_id TEXT Encoded history ID to filter on - --name TEXT Name of history to filter on - --deleted TEXT None - --help Show this message and exit. - diff --git a/docs/commands/histories_get_most_recently_used_history.rst b/docs/commands/histories_get_most_recently_used_history.rst deleted file mode 100644 index 4f084f9..0000000 --- a/docs/commands/histories_get_most_recently_used_history.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``histories_get_most_recently_used_history`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``histories_get_most_recently_used_history``. This help message can be generated with ``parsec histories_get_most_recently_used_history ---help``. - -**Usage**:: - - parsec histories_get_most_recently_used_history [OPTIONS] - -**Help** - -Returns the current user's most recently used history (not deleted). - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/histories_get_status.rst b/docs/commands/histories_get_status.rst deleted file mode 100644 index 43e3626..0000000 --- a/docs/commands/histories_get_status.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``histories_get_status`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``histories_get_status``. This help message can be generated with ``parsec histories_get_status ---help``. - -**Usage**:: - - parsec histories_get_status [OPTIONS] HISTORY_ID - -**Help** - -Returns the state of this history - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/histories_show_dataset.rst b/docs/commands/histories_show_dataset.rst deleted file mode 100644 index 4fc4309..0000000 --- a/docs/commands/histories_show_dataset.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``histories_show_dataset`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``histories_show_dataset``. This help message can be generated with ``parsec histories_show_dataset ---help``. - -**Usage**:: - - parsec histories_show_dataset [OPTIONS] HISTORY_ID DATASET_ID - -**Help** - -Get details about a given history dataset. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/histories_show_dataset_collection.rst b/docs/commands/histories_show_dataset_collection.rst deleted file mode 100644 index 5f8a6ea..0000000 --- a/docs/commands/histories_show_dataset_collection.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``histories_show_dataset_collection`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``histories_show_dataset_collection``. This help message can be generated with ``parsec histories_show_dataset_collection ---help``. - -**Usage**:: - - parsec histories_show_dataset_collection [OPTIONS] HISTORY_ID - -**Help** - -Get details about a given history dataset collection. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/histories_show_dataset_provenance.rst b/docs/commands/histories_show_dataset_provenance.rst deleted file mode 100644 index e2055ad..0000000 --- a/docs/commands/histories_show_dataset_provenance.rst +++ /dev/null @@ -1,26 +0,0 @@ - -``histories_show_dataset_provenance`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``histories_show_dataset_provenance``. This help message can be generated with ``parsec histories_show_dataset_provenance ---help``. - -**Usage**:: - - parsec histories_show_dataset_provenance [OPTIONS] HISTORY_ID - -**Help** - -Get details related to how dataset was created (``id``, ``job_id``, ``tool_id``, ``stdout``, ``stderr``, ``parameters``, ``inputs``, etc...). - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --follow If ``follow`` is ``True``, recursively fetch dataset - provenance information for all inputs and their - inputs, etc.... - --help Show this message and exit. - diff --git a/docs/commands/histories_show_history.rst b/docs/commands/histories_show_history.rst deleted file mode 100644 index ec5cfb8..0000000 --- a/docs/commands/histories_show_history.rst +++ /dev/null @@ -1,32 +0,0 @@ - -``histories_show_history`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``histories_show_history``. This help message can be generated with ``parsec histories_show_history ---help``. - -**Usage**:: - - parsec histories_show_history [OPTIONS] HISTORY_ID - -**Help** - -Get details of a given history. By default, just get the history meta information. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --contents TEXT When true, the complete list of datasets in the - given history. - --deleted TEXT Used when contents=True, includes deleted datasets - is history dataset list - --visible TEXT Used when contents=True, includes only visible - datasets is history dataset list - --details TEXT Used when contents=True, includes dataset details. - Set to 'all' for the most information - --types TEXT ??? - --help Show this message and exit. - diff --git a/docs/commands/histories_show_matching_datasets.rst b/docs/commands/histories_show_matching_datasets.rst deleted file mode 100644 index 0c1a691..0000000 --- a/docs/commands/histories_show_matching_datasets.rst +++ /dev/null @@ -1,27 +0,0 @@ - -``histories_show_matching_datasets`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``histories_show_matching_datasets``. This help message can be generated with ``parsec histories_show_matching_datasets ---help``. - -**Usage**:: - - parsec histories_show_matching_datasets [OPTIONS] HISTORY_ID - -**Help** - -Get dataset details for matching datasets within a history. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --name_filter TEXT Only datasets whose name matches the ``name_filter`` - regular expression will be returned; use plain - strings for exact matches and None to match all - datasets in the history. - --help Show this message and exit. - diff --git a/docs/commands/histories_undelete_history.rst b/docs/commands/histories_undelete_history.rst deleted file mode 100644 index 9e7a1aa..0000000 --- a/docs/commands/histories_undelete_history.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``histories_undelete_history`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``histories_undelete_history``. This help message can be generated with ``parsec histories_undelete_history ---help``. - -**Usage**:: - - parsec histories_undelete_history [OPTIONS] HISTORY_ID - -**Help** - -Undelete a history - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/histories_update_dataset.rst b/docs/commands/histories_update_dataset.rst deleted file mode 100644 index 8b3ae65..0000000 --- a/docs/commands/histories_update_dataset.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``histories_update_dataset`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``histories_update_dataset``. This help message can be generated with ``parsec histories_update_dataset ---help``. - -**Usage**:: - - parsec histories_update_dataset [OPTIONS] HISTORY_ID DATASET_ID - -**Help** - -Update history dataset metadata. Some of the attributes that can be modified are documented below. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/histories_update_dataset_collection.rst b/docs/commands/histories_update_dataset_collection.rst deleted file mode 100644 index e38d35f..0000000 --- a/docs/commands/histories_update_dataset_collection.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``histories_update_dataset_collection`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``histories_update_dataset_collection``. This help message can be generated with ``parsec histories_update_dataset_collection ---help``. - -**Usage**:: - - parsec histories_update_dataset_collection [OPTIONS] HISTORY_ID - -**Help** - -Update history dataset collection metadata. Some of the attributes that can be modified are documented below. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/histories_update_history.rst b/docs/commands/histories_update_history.rst deleted file mode 100644 index f07abb6..0000000 --- a/docs/commands/histories_update_history.rst +++ /dev/null @@ -1,25 +0,0 @@ - -``histories_update_history`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``histories_update_history``. This help message can be generated with ``parsec histories_update_history ---help``. - -**Usage**:: - - parsec histories_update_history [OPTIONS] HISTORY_ID - -**Help** - -Update history metadata information. Some of the attributes that can be modified are documented below. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --name TEXT Replace history name with the given string - --annotation TEXT Replace history annotation with given string - --help Show this message and exit. - diff --git a/docs/commands/histories_upload_dataset_from_library.rst b/docs/commands/histories_upload_dataset_from_library.rst deleted file mode 100644 index a0a9aec..0000000 --- a/docs/commands/histories_upload_dataset_from_library.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``histories_upload_dataset_from_library`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``histories_upload_dataset_from_library``. This help message can be generated with ``parsec histories_upload_dataset_from_library ---help``. - -**Usage**:: - - parsec histories_upload_dataset_from_library [OPTIONS] HISTORY_ID - -**Help** - -Upload a dataset into the history from a library. Requires the library dataset ID, which can be obtained from the library contents. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/history_create.rst b/docs/commands/history_create.rst deleted file mode 100644 index 366a2ec..0000000 --- a/docs/commands/history_create.rst +++ /dev/null @@ -1,24 +0,0 @@ - -``history_create`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``history_create``. This help message can be generated with ``parsec history_create ---help``. - -**Usage**:: - - parsec history_create [OPTIONS] - -**Help** - -Create a new history and return the history ID - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --name TEXT Name for the new history - --help Show this message and exit. - diff --git a/docs/commands/history_delete.rst b/docs/commands/history_delete.rst deleted file mode 100644 index d08fbd2..0000000 --- a/docs/commands/history_delete.rst +++ /dev/null @@ -1,24 +0,0 @@ - -``history_delete`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``history_delete``. This help message can be generated with ``parsec history_delete ---help``. - -**Usage**:: - - parsec history_delete [OPTIONS] HID - -**Help** - -Delete a history by ID - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --purge Purge a history - --help Show this message and exit. - diff --git a/docs/commands/history_list.rst b/docs/commands/history_list.rst deleted file mode 100644 index 6e98577..0000000 --- a/docs/commands/history_list.rst +++ /dev/null @@ -1,24 +0,0 @@ - -``history_list`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``history_list``. This help message can be generated with ``parsec history_list ---help``. - -**Usage**:: - - parsec history_list [OPTIONS] - -**Help** - -List histories available to a user - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --deleted Show deleted histories - --help Show this message and exit. - diff --git a/docs/commands/jobs.rst b/docs/commands/jobs.rst new file mode 100644 index 0000000..b5dc41c --- /dev/null +++ b/docs/commands/jobs.rst @@ -0,0 +1,83 @@ +jobs +==== + +``get_jobs`` command +-------------------- + +This section is auto-generated from the help text for the parsec command +``jobs``. + +**Usage**:: + + parsec jobs get_jobs [OPTIONS] + +**Help** + +Get the list of jobs of the current user. + +**Options**:: + + + --help Show this message and exit. + + +``get_state`` command +--------------------- + +This section is auto-generated from the help text for the parsec command +``jobs``. + +**Usage**:: + + parsec jobs get_state [OPTIONS] JOB_ID + +**Help** + +Display the current state for a given job of the current user. + +**Options**:: + + + --help Show this message and exit. + + +``search_jobs`` command +----------------------- + +This section is auto-generated from the help text for the parsec command +``jobs``. + +**Usage**:: + + parsec jobs search_jobs [OPTIONS] JOB_INFO + +**Help** + +Return jobs for the current user based payload content. + +**Options**:: + + + --help Show this message and exit. + + +``show_job`` command +-------------------- + +This section is auto-generated from the help text for the parsec command +``jobs``. + +**Usage**:: + + parsec jobs show_job [OPTIONS] JOB_ID + +**Help** + +Get details of a given job of the current user. + +**Options**:: + + + --full_details when ``True``, the complete list of details for the given job. + --help Show this message and exit. + diff --git a/docs/commands/jobs_get_jobs.rst b/docs/commands/jobs_get_jobs.rst deleted file mode 100644 index e8c7d34..0000000 --- a/docs/commands/jobs_get_jobs.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``jobs_get_jobs`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``jobs_get_jobs``. This help message can be generated with ``parsec jobs_get_jobs ---help``. - -**Usage**:: - - parsec jobs_get_jobs [OPTIONS] - -**Help** - -Get a list of jobs for current user - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/jobs_get_state.rst b/docs/commands/jobs_get_state.rst deleted file mode 100644 index 4fea3a8..0000000 --- a/docs/commands/jobs_get_state.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``jobs_get_state`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``jobs_get_state``. This help message can be generated with ``parsec jobs_get_state ---help``. - -**Usage**:: - - parsec jobs_get_state [OPTIONS] JOB_ID - -**Help** - -Display the current state for a single job from current user. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/jobs_search_jobs.rst b/docs/commands/jobs_search_jobs.rst deleted file mode 100644 index 2952759..0000000 --- a/docs/commands/jobs_search_jobs.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``jobs_search_jobs`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``jobs_search_jobs``. This help message can be generated with ``parsec jobs_search_jobs ---help``. - -**Usage**:: - - parsec jobs_search_jobs [OPTIONS] JOB_INFO - -**Help** - -Return jobs for current user based payload content - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/jobs_show_job.rst b/docs/commands/jobs_show_job.rst deleted file mode 100644 index c186b79..0000000 --- a/docs/commands/jobs_show_job.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``jobs_show_job`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``jobs_show_job``. This help message can be generated with ``parsec jobs_show_job ---help``. - -**Usage**:: - - parsec jobs_show_job [OPTIONS] JOB_ID - -**Help** - -Display information on a single job from current user - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/libraries.rst b/docs/commands/libraries.rst new file mode 100644 index 0000000..a69d8ad --- /dev/null +++ b/docs/commands/libraries.rst @@ -0,0 +1,393 @@ +libraries +========= + +``copy_from_dataset`` command +----------------------------- + +This section is auto-generated from the help text for the parsec command +``libraries``. + +**Usage**:: + + parsec libraries copy_from_dataset [OPTIONS] LIBRARY_ID DATASET_ID + +**Help** + +Copy a Galaxy dataset into a library. + +**Options**:: + + + --folder_id TEXT id of the folder where to place the uploaded files. If not + provided, the root folder will be used + --message TEXT message for copying action + --help Show this message and exit. + + +``create_folder`` command +------------------------- + +This section is auto-generated from the help text for the parsec command +``libraries``. + +**Usage**:: + + parsec libraries create_folder [OPTIONS] LIBRARY_ID FOLDER_NAME + +**Help** + +Create a folder in a library. + +**Options**:: + + + --description TEXT description of the new folder in the data library + --base_folder_id TEXT id of the folder where to create the new folder. If not + provided, the root folder will be used + --help Show this message and exit. + + +``create_library`` command +-------------------------- + +This section is auto-generated from the help text for the parsec command +``libraries``. + +**Usage**:: + + parsec libraries create_library [OPTIONS] NAME + +**Help** + +Create a data library with the properties defined in the arguments. + +**Options**:: + + + --description TEXT Optional data library description + --synopsis TEXT Optional data library synopsis + --help Show this message and exit. + + +``delete_library`` command +-------------------------- + +This section is auto-generated from the help text for the parsec command +``libraries``. + +**Usage**:: + + parsec libraries delete_library [OPTIONS] LIBRARY_ID + +**Help** + +Delete a data library. + +**Options**:: + + + --help Show this message and exit. + + +``delete_library_dataset`` command +---------------------------------- + +This section is auto-generated from the help text for the parsec command +``libraries``. + +**Usage**:: + + parsec libraries delete_library_dataset [OPTIONS] LIBRARY_ID DATASET_ID + +**Help** + +Delete a library dataset in a data library. + +**Options**:: + + + --purged Indicate that the dataset should be purged (permanently deleted) + --help Show this message and exit. + + +``get_folders`` command +----------------------- + +This section is auto-generated from the help text for the parsec command +``libraries``. + +**Usage**:: + + parsec libraries get_folders [OPTIONS] LIBRARY_ID + +**Help** + +Get all the folders or filter specific one(s) via the provided ``name`` or ``folder_id`` in data library with id ``library_id``. Provide only one argument: ``name`` or ``folder_id``, but not both. + +**Options**:: + + + --folder_id TEXT filter for folder by folder id + --name TEXT filter for folder by name. For ``name`` specify the full + path of the folder starting from the library's root folder, + e.g. ``/subfolder/subsubfolder``. + --help Show this message and exit. + + +``get_libraries`` command +------------------------- + +This section is auto-generated from the help text for the parsec command +``libraries``. + +**Usage**:: + + parsec libraries get_libraries [OPTIONS] + +**Help** + +Get all the libraries or filter for specific one(s) via the provided name or ID. Provide only one argument: ``name`` or ``library_id``, but not both. + +**Options**:: + + + --library_id TEXT filter for library by library id + --name TEXT If ``name`` is set and multiple names match the given name, + all the libraries matching the argument will be returned + --deleted If set to ``True``, return libraries that have been deleted + --help Show this message and exit. + + +``get_library_permissions`` command +----------------------------------- + +This section is auto-generated from the help text for the parsec command +``libraries``. + +**Usage**:: + + parsec libraries get_library_permissions [OPTIONS] LIBRARY_ID + +**Help** + +Get the permessions for a library. + +**Options**:: + + + --help Show this message and exit. + + +``set_library_permissions`` command +----------------------------------- + +This section is auto-generated from the help text for the parsec command +``libraries``. + +**Usage**:: + + parsec libraries set_library_permissions [OPTIONS] LIBRARY_ID + +**Help** + +Set the permissions for a library. Note: it will override all security for this library even if you leave out a permission type. + +**Options**:: + + + --access_in TEXT list of role ids + --modify_in TEXT list of role ids + --add_in TEXT list of role ids + --manage_in TEXT list of role ids + --help Show this message and exit. + + +``show_dataset`` command +------------------------ + +This section is auto-generated from the help text for the parsec command +``libraries``. + +**Usage**:: + + parsec libraries show_dataset [OPTIONS] LIBRARY_ID DATASET_ID + +**Help** + +Get details about a given library dataset. The required ``library_id`` can be obtained from the datasets's library content details. + +**Options**:: + + + --help Show this message and exit. + + +``show_folder`` command +----------------------- + +This section is auto-generated from the help text for the parsec command +``libraries``. + +**Usage**:: + + parsec libraries show_folder [OPTIONS] LIBRARY_ID FOLDER_ID + +**Help** + +Get details about a given folder. The required ``folder_id`` can be obtained from the folder's library content details. + +**Options**:: + + + --help Show this message and exit. + + +``show_library`` command +------------------------ + +This section is auto-generated from the help text for the parsec command +``libraries``. + +**Usage**:: + + parsec libraries show_library [OPTIONS] LIBRARY_ID + +**Help** + +Get information about a library. + +**Options**:: + + + --contents True if want to get contents of the library (rather than just the + library details) + --help Show this message and exit. + + +``upload_file_contents`` command +-------------------------------- + +This section is auto-generated from the help text for the parsec command +``libraries``. + +**Usage**:: + + parsec libraries upload_file_contents [OPTIONS] LIBRARY_ID PASTED_CONTENT + +**Help** + +Upload pasted_content to a data library as a new file. + +**Options**:: + + + --folder_id TEXT id of the folder where to place the uploaded file. If not + provided, the root folder will be used + --file_type TEXT Galaxy file format name + --dbkey TEXT Dbkey + --help Show this message and exit. + + +``upload_file_from_local_path`` command +--------------------------------------- + +This section is auto-generated from the help text for the parsec command +``libraries``. + +**Usage**:: + + parsec libraries upload_file_from_local_path [OPTIONS] LIBRARY_ID + +**Help** + +Read local file contents from file_local_path and upload data to a library. + +**Options**:: + + + --folder_id TEXT id of the folder where to place the uploaded file. If not + provided, the root folder will be used + --file_type TEXT Galaxy file format name + --dbkey TEXT Dbkey + --help Show this message and exit. + + +``upload_file_from_server`` command +----------------------------------- + +This section is auto-generated from the help text for the parsec command +``libraries``. + +**Usage**:: + + parsec libraries upload_file_from_server [OPTIONS] LIBRARY_ID SERVER_DIR + +**Help** + +Upload all files in the specified subdirectory of the Galaxy library import directory to a library. + +**Options**:: + + + --folder_id TEXT id of the folder where to place the uploaded files. If + not provided, the root folder will be used + --file_type TEXT Galaxy file format name + --dbkey TEXT Dbkey + --link_data_only TEXT either 'copy_files' (default) or 'link_to_files'. + Setting to 'link_to_files' symlinks instead of copying + the files + --roles TEXT ??? + --help Show this message and exit. + + +``upload_file_from_url`` command +-------------------------------- + +This section is auto-generated from the help text for the parsec command +``libraries``. + +**Usage**:: + + parsec libraries upload_file_from_url [OPTIONS] LIBRARY_ID FILE_URL + +**Help** + +Upload a file to a library from a URL. + +**Options**:: + + + --folder_id TEXT id of the folder where to place the uploaded file. If not + provided, the root folder will be used + --file_type TEXT Galaxy file format name + --dbkey TEXT Dbkey + --help Show this message and exit. + + +``upload_from_galaxy_filesystem`` command +----------------------------------------- + +This section is auto-generated from the help text for the parsec command +``libraries``. + +**Usage**:: + + parsec libraries upload_from_galaxy_filesystem [OPTIONS] LIBRARY_ID + +**Help** + +Upload a set of files already present on the filesystem of the Galaxy server to a library. + +**Options**:: + + + --folder_id TEXT id of the folder where to place the uploaded files. If + not provided, the root folder will be used + --file_type TEXT Galaxy file format name + --dbkey TEXT Dbkey + --link_data_only TEXT either 'copy_files' (default) or 'link_to_files'. + Setting to 'link_to_files' symlinks instead of copying + the files + --roles TEXT ??? + --help Show this message and exit. + diff --git a/docs/commands/libraries_copy_from_dataset.rst b/docs/commands/libraries_copy_from_dataset.rst deleted file mode 100644 index 51cb1e3..0000000 --- a/docs/commands/libraries_copy_from_dataset.rst +++ /dev/null @@ -1,26 +0,0 @@ - -``libraries_copy_from_dataset`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``libraries_copy_from_dataset``. This help message can be generated with ``parsec libraries_copy_from_dataset ---help``. - -**Usage**:: - - parsec libraries_copy_from_dataset [OPTIONS] LIBRARY_ID DATASET_ID - -**Help** - -Copy a Galaxy dataset into a library. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --folder_id TEXT id of the folder where to place the uploaded files. - If not provided, the root folder will be used - --message TEXT message for copying action - --help Show this message and exit. - diff --git a/docs/commands/libraries_create_folder.rst b/docs/commands/libraries_create_folder.rst deleted file mode 100644 index 9ab6265..0000000 --- a/docs/commands/libraries_create_folder.rst +++ /dev/null @@ -1,26 +0,0 @@ - -``libraries_create_folder`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``libraries_create_folder``. This help message can be generated with ``parsec libraries_create_folder ---help``. - -**Usage**:: - - parsec libraries_create_folder [OPTIONS] LIBRARY_ID FOLDER_NAME - -**Help** - -Create a folder in a library. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --description TEXT description of the new folder in the data library - --base_folder_id TEXT id of the folder where to create the new folder. If - not provided, the root folder will be used - --help Show this message and exit. - diff --git a/docs/commands/libraries_create_library.rst b/docs/commands/libraries_create_library.rst deleted file mode 100644 index 12bf5c3..0000000 --- a/docs/commands/libraries_create_library.rst +++ /dev/null @@ -1,25 +0,0 @@ - -``libraries_create_library`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``libraries_create_library``. This help message can be generated with ``parsec libraries_create_library ---help``. - -**Usage**:: - - parsec libraries_create_library [OPTIONS] NAME - -**Help** - -Create a data library with the properties defined in the arguments. Return a list of JSON dicts, looking like so:: - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --description TEXT Optional data library description - --synopsis TEXT Optional data library synopsis - --help Show this message and exit. - diff --git a/docs/commands/libraries_delete_library.rst b/docs/commands/libraries_delete_library.rst deleted file mode 100644 index e82e412..0000000 --- a/docs/commands/libraries_delete_library.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``libraries_delete_library`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``libraries_delete_library``. This help message can be generated with ``parsec libraries_delete_library ---help``. - -**Usage**:: - - parsec libraries_delete_library [OPTIONS] LIBRARY_ID - -**Help** - -Delete a data library - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/libraries_delete_library_dataset.rst b/docs/commands/libraries_delete_library_dataset.rst deleted file mode 100644 index 5bc98bf..0000000 --- a/docs/commands/libraries_delete_library_dataset.rst +++ /dev/null @@ -1,25 +0,0 @@ - -``libraries_delete_library_dataset`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``libraries_delete_library_dataset``. This help message can be generated with ``parsec libraries_delete_library_dataset ---help``. - -**Usage**:: - - parsec libraries_delete_library_dataset [OPTIONS] LIBRARY_ID DATASET_ID - -**Help** - -Delete a library dataset in a data library. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --purged Indicate that the dataset should be purged - (permanently deleted) - --help Show this message and exit. - diff --git a/docs/commands/libraries_get_folders.rst b/docs/commands/libraries_get_folders.rst deleted file mode 100644 index 20924a1..0000000 --- a/docs/commands/libraries_get_folders.rst +++ /dev/null @@ -1,29 +0,0 @@ - -``libraries_get_folders`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``libraries_get_folders``. This help message can be generated with ``parsec libraries_get_folders ---help``. - -**Usage**:: - - parsec libraries_get_folders [OPTIONS] LIBRARY_ID - -**Help** - -Get all the folders or filter specific one(s) via the provided ``name`` or ``folder_id`` in data library with id ``library_id``. Provide only one argument: ``name`` or ``folder_id``, but not both. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --folder_id TEXT filter for folder by folder id - --name TEXT filter for folder by name. For ``name`` specify the - full path of the folder starting from the library's - root folder, e.g. ``/subfolder/subsubfolder``. - --deleted If set to ``True``, return folders that have been - deleted. - --help Show this message and exit. - diff --git a/docs/commands/libraries_get_libraries.rst b/docs/commands/libraries_get_libraries.rst deleted file mode 100644 index 041b7c6..0000000 --- a/docs/commands/libraries_get_libraries.rst +++ /dev/null @@ -1,29 +0,0 @@ - -``libraries_get_libraries`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``libraries_get_libraries``. This help message can be generated with ``parsec libraries_get_libraries ---help``. - -**Usage**:: - - parsec libraries_get_libraries [OPTIONS] - -**Help** - -Get all the libraries or filter for specific one(s) via the provided name or ID. Provide only one argument: ``name`` or ``library_id``, but not both. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --library_id TEXT filter for library by library id - --name TEXT If ``name`` is set and multiple names match the - given name, all the libraries matching the argument - will be returned. - --deleted If set to ``True``, return libraries that have been - deleted. - --help Show this message and exit. - diff --git a/docs/commands/libraries_set_library_permissions.rst b/docs/commands/libraries_set_library_permissions.rst deleted file mode 100644 index 899f2e0..0000000 --- a/docs/commands/libraries_set_library_permissions.rst +++ /dev/null @@ -1,27 +0,0 @@ - -``libraries_set_library_permissions`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``libraries_set_library_permissions``. This help message can be generated with ``parsec libraries_set_library_permissions ---help``. - -**Usage**:: - - parsec libraries_set_library_permissions [OPTIONS] LIBRARY_ID - -**Help** - -Sets the permissions for a library. Note: it will override all security for this library even if you leave out a permission type. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --access_in TEXT list of user ids - --modify_in TEXT list of user ids - --add_in TEXT list of user ids - --manage_in TEXT list of user ids - --help Show this message and exit. - diff --git a/docs/commands/libraries_show_dataset.rst b/docs/commands/libraries_show_dataset.rst deleted file mode 100644 index 8e67132..0000000 --- a/docs/commands/libraries_show_dataset.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``libraries_show_dataset`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``libraries_show_dataset``. This help message can be generated with ``parsec libraries_show_dataset ---help``. - -**Usage**:: - - parsec libraries_show_dataset [OPTIONS] LIBRARY_ID DATASET_ID - -**Help** - -Get details about a given library dataset. The required ``library_id`` can be obtained from the datasets's library content details. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/libraries_show_folder.rst b/docs/commands/libraries_show_folder.rst deleted file mode 100644 index 97c5d4e..0000000 --- a/docs/commands/libraries_show_folder.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``libraries_show_folder`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``libraries_show_folder``. This help message can be generated with ``parsec libraries_show_folder ---help``. - -**Usage**:: - - parsec libraries_show_folder [OPTIONS] LIBRARY_ID FOLDER_ID - -**Help** - -Get details about a given folder. The required ``folder_id`` can be obtained from the folder's library content details. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/libraries_show_library.rst b/docs/commands/libraries_show_library.rst deleted file mode 100644 index a486318..0000000 --- a/docs/commands/libraries_show_library.rst +++ /dev/null @@ -1,25 +0,0 @@ - -``libraries_show_library`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``libraries_show_library``. This help message can be generated with ``parsec libraries_show_library ---help``. - -**Usage**:: - - parsec libraries_show_library [OPTIONS] LIBRARY_ID - -**Help** - -Get information about a library. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --contents True if want to get contents of the library (rather - than just the library details). - --help Show this message and exit. - diff --git a/docs/commands/libraries_upload_file_contents.rst b/docs/commands/libraries_upload_file_contents.rst deleted file mode 100644 index 2d66258..0000000 --- a/docs/commands/libraries_upload_file_contents.rst +++ /dev/null @@ -1,26 +0,0 @@ - -``libraries_upload_file_contents`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``libraries_upload_file_contents``. This help message can be generated with ``parsec libraries_upload_file_contents ---help``. - -**Usage**:: - - parsec libraries_upload_file_contents [OPTIONS] LIBRARY_ID - -**Help** - -Upload pasted_contents to a data library as a new file. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --folder_id TEXT id of the folder to download into - --file_type TEXT Galaxy file format name - --dbkey TEXT Dbkey - --help Show this message and exit. - diff --git a/docs/commands/libraries_upload_file_from_local_path.rst b/docs/commands/libraries_upload_file_from_local_path.rst deleted file mode 100644 index 3bf07d0..0000000 --- a/docs/commands/libraries_upload_file_from_local_path.rst +++ /dev/null @@ -1,26 +0,0 @@ - -``libraries_upload_file_from_local_path`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``libraries_upload_file_from_local_path``. This help message can be generated with ``parsec libraries_upload_file_from_local_path ---help``. - -**Usage**:: - - parsec libraries_upload_file_from_local_path [OPTIONS] LIBRARY_ID - -**Help** - -Read local file contents from file_local_path and upload data to a library. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --folder_id TEXT id of the folder to download into - --file_type TEXT Galaxy file format name - --dbkey TEXT Dbkey - --help Show this message and exit. - diff --git a/docs/commands/libraries_upload_file_from_server.rst b/docs/commands/libraries_upload_file_from_server.rst deleted file mode 100644 index 829220a..0000000 --- a/docs/commands/libraries_upload_file_from_server.rst +++ /dev/null @@ -1,31 +0,0 @@ - -``libraries_upload_file_from_server`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``libraries_upload_file_from_server``. This help message can be generated with ``parsec libraries_upload_file_from_server ---help``. - -**Usage**:: - - parsec libraries_upload_file_from_server [OPTIONS] LIBRARY_ID - -**Help** - -Upload all files in the specified subdirectory of the Galaxy library import directory to a library. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --folder_id TEXT id of the folder where to place the uploaded files. - If not provided, the root folder will be used - --file_type TEXT Galaxy file format name - --dbkey TEXT Dbkey - --link_data_only TEXT either 'copy_files' (default) or 'link_to_files'. - Setting to 'link_to_files' symlinks instead of - copying the files - --roles TEXT ??? - --help Show this message and exit. - diff --git a/docs/commands/libraries_upload_file_from_url.rst b/docs/commands/libraries_upload_file_from_url.rst deleted file mode 100644 index 264dbdb..0000000 --- a/docs/commands/libraries_upload_file_from_url.rst +++ /dev/null @@ -1,26 +0,0 @@ - -``libraries_upload_file_from_url`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``libraries_upload_file_from_url``. This help message can be generated with ``parsec libraries_upload_file_from_url ---help``. - -**Usage**:: - - parsec libraries_upload_file_from_url [OPTIONS] LIBRARY_ID FILE_URL - -**Help** - -Upload a file to a library from a URL. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --folder_id TEXT id of the folder to download into - --file_type TEXT Galaxy file format name - --dbkey TEXT Dbkey - --help Show this message and exit. - diff --git a/docs/commands/libraries_upload_from_galaxy_filesystem.rst b/docs/commands/libraries_upload_from_galaxy_filesystem.rst deleted file mode 100644 index 97b90d2..0000000 --- a/docs/commands/libraries_upload_from_galaxy_filesystem.rst +++ /dev/null @@ -1,31 +0,0 @@ - -``libraries_upload_from_galaxy_filesystem`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``libraries_upload_from_galaxy_filesystem``. This help message can be generated with ``parsec libraries_upload_from_galaxy_filesystem ---help``. - -**Usage**:: - - parsec libraries_upload_from_galaxy_filesystem [OPTIONS] LIBRARY_ID - -**Help** - -Upload a set of files already present on the filesystem of the Galaxy server to a library. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --folder_id TEXT id of the folder where to place the uploaded files. - If not provided, the root folder will be used - --file_type TEXT Galaxy file format name - --dbkey TEXT Dbkey - --link_data_only TEXT either 'copy_files' (default) or 'link_to_files'. - Setting to 'link_to_files' symlinks instead of - copying the files - --roles TEXT ??? - --help Show this message and exit. - diff --git a/docs/commands/new_api_key.rst b/docs/commands/new_api_key.rst deleted file mode 100644 index f199b50..0000000 --- a/docs/commands/new_api_key.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``new_api_key`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``new_api_key``. This help message can be generated with ``parsec new_api_key ---help``. - -**Usage**:: - - parsec new_api_key [OPTIONS] UID - -**Help** - -(Re)generate API key for user - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/quotas.rst b/docs/commands/quotas.rst new file mode 100644 index 0000000..1d5c6dc --- /dev/null +++ b/docs/commands/quotas.rst @@ -0,0 +1,44 @@ +quotas +====== + +``get_quotas`` command +---------------------- + +This section is auto-generated from the help text for the parsec command +``quotas``. + +**Usage**:: + + parsec quotas get_quotas [OPTIONS] + +**Help** + +Get a list of quotas + +**Options**:: + + + --deleted Only return quota(s) that have been deleted + --help Show this message and exit. + + +``show_quota`` command +---------------------- + +This section is auto-generated from the help text for the parsec command +``quotas``. + +**Usage**:: + + parsec quotas show_quota [OPTIONS] QUOTA_ID + +**Help** + +Display information on a quota + +**Options**:: + + + --deleted Search for quota in list of ones already marked as deleted + --help Show this message and exit. + diff --git a/docs/commands/quotas_get_quotas.rst b/docs/commands/quotas_get_quotas.rst deleted file mode 100644 index 74ce3d1..0000000 --- a/docs/commands/quotas_get_quotas.rst +++ /dev/null @@ -1,24 +0,0 @@ - -``quotas_get_quotas`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``quotas_get_quotas``. This help message can be generated with ``parsec quotas_get_quotas ---help``. - -**Usage**:: - - parsec quotas_get_quotas [OPTIONS] - -**Help** - -Get a list of quotas - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --deleted Only return quota(s) that have been deleted - --help Show this message and exit. - diff --git a/docs/commands/quotas_show_quota.rst b/docs/commands/quotas_show_quota.rst deleted file mode 100644 index b48bbf9..0000000 --- a/docs/commands/quotas_show_quota.rst +++ /dev/null @@ -1,25 +0,0 @@ - -``quotas_show_quota`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``quotas_show_quota``. This help message can be generated with ``parsec quotas_show_quota ---help``. - -**Usage**:: - - parsec quotas_show_quota [OPTIONS] QUOTA_ID - -**Help** - -Display information on a quota - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --deleted Search for quota in list of ones already marked as - deleted - --help Show this message and exit. - diff --git a/docs/commands/roles.rst b/docs/commands/roles.rst new file mode 100644 index 0000000..d20b365 --- /dev/null +++ b/docs/commands/roles.rst @@ -0,0 +1,42 @@ +roles +===== + +``get_roles`` command +--------------------- + +This section is auto-generated from the help text for the parsec command +``roles``. + +**Usage**:: + + parsec roles get_roles [OPTIONS] + +**Help** + +Displays a collection (list) of roles. + +**Options**:: + + + --help Show this message and exit. + + +``show_role`` command +--------------------- + +This section is auto-generated from the help text for the parsec command +``roles``. + +**Usage**:: + + parsec roles show_role [OPTIONS] ROLE_ID + +**Help** + +Display information on a single role + +**Options**:: + + + --help Show this message and exit. + diff --git a/docs/commands/roles_get_roles.rst b/docs/commands/roles_get_roles.rst deleted file mode 100644 index 213ec4e..0000000 --- a/docs/commands/roles_get_roles.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``roles_get_roles`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``roles_get_roles``. This help message can be generated with ``parsec roles_get_roles ---help``. - -**Usage**:: - - parsec roles_get_roles [OPTIONS] - -**Help** - -Displays a collection (list) of roles. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/roles_show_role.rst b/docs/commands/roles_show_role.rst deleted file mode 100644 index 9f166e8..0000000 --- a/docs/commands/roles_show_role.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``roles_show_role`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``roles_show_role``. This help message can be generated with ``parsec roles_show_role ---help``. - -**Usage**:: - - parsec roles_show_role [OPTIONS] ROLE_ID - -**Help** - -Display information on a single role - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/toolShed_get_repositories.rst b/docs/commands/toolShed_get_repositories.rst deleted file mode 100644 index bd13e6f..0000000 --- a/docs/commands/toolShed_get_repositories.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``toolShed_get_repositories`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``toolShed_get_repositories``. This help message can be generated with ``parsec toolShed_get_repositories ---help``. - -**Usage**:: - - parsec toolShed_get_repositories [OPTIONS] - -**Help** - -Get a list of all repositories in the Tool Shed - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/toolShed_install_repository_revision.rst b/docs/commands/toolShed_install_repository_revision.rst deleted file mode 100644 index 8a33f74..0000000 --- a/docs/commands/toolShed_install_repository_revision.rst +++ /dev/null @@ -1,43 +0,0 @@ - -``toolShed_install_repository_revision`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``toolShed_install_repository_revision``. This help message can be generated with ``parsec toolShed_install_repository_revision ---help``. - -**Usage**:: - - parsec toolShed_install_repository_revision [OPTIONS] TOOL_SHED_URL - -**Help** - -Install a specified repository revision from a specified Tool Shed into this Galaxy instance. This example demonstrates installation of a repository that contains valid tools, loading them into a section of the Galaxy tool panel or creating a new tool panel section. You can choose if tool dependencies or repository dependencies should be installed, use ``install_tool_dependencies`` or ``install_repository_dependencies``. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --install_tool_dependencies Whether or not to automatically handle tool - dependencies (see http://wiki.galaxyproject. - org/AToolOrASuitePerRepository for more - details) - --install_repository_dependencies - Whether or not to automatically handle - repository dependencies (see http://wiki.gal - axyproject.org/DefiningRepositoryDependencie - s for more details) - --tool_panel_section_id TEXT The ID of the Galaxy tool panel section - where the tool should be insterted under. - Note that you should specify either this - parameter or the - ``new_tool_panel_section_label``. If both - are specified, this one will take - precedence. - --new_tool_panel_section_label TEXT - The name of a Galaxy tool panel section that - should be created and the repository - installed into. - --help Show this message and exit. - diff --git a/docs/commands/toolShed_show_repository.rst b/docs/commands/toolShed_show_repository.rst deleted file mode 100644 index b7f0ab9..0000000 --- a/docs/commands/toolShed_show_repository.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``toolShed_show_repository`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``toolShed_show_repository``. This help message can be generated with ``parsec toolShed_show_repository ---help``. - -**Usage**:: - - parsec toolShed_show_repository [OPTIONS] TOOLSHED_ID - -**Help** - -Display information of a repository from the Tool Shed - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/tool_data.rst b/docs/commands/tool_data.rst new file mode 100644 index 0000000..9422b1d --- /dev/null +++ b/docs/commands/tool_data.rst @@ -0,0 +1,82 @@ +tool_data +========= + +``delete_data_table`` command +----------------------------- + +This section is auto-generated from the help text for the parsec command +``tool_data``. + +**Usage**:: + + parsec tool_data delete_data_table [OPTIONS] DATA_TABLE_ID VALUES + +**Help** + +Delete an item from a data table. + +**Options**:: + + + --help Show this message and exit. + + +``get_data_tables`` command +--------------------------- + +This section is auto-generated from the help text for the parsec command +``tool_data``. + +**Usage**:: + + parsec tool_data get_data_tables [OPTIONS] + +**Help** + +Get the list of all data tables. + +**Options**:: + + + --help Show this message and exit. + + +``reload_data_table`` command +----------------------------- + +This section is auto-generated from the help text for the parsec command +``tool_data``. + +**Usage**:: + + parsec tool_data reload_data_table [OPTIONS] DATA_TABLE_ID + +**Help** + +Reload a data table. + +**Options**:: + + + --help Show this message and exit. + + +``show_data_table`` command +--------------------------- + +This section is auto-generated from the help text for the parsec command +``tool_data``. + +**Usage**:: + + parsec tool_data show_data_table [OPTIONS] DATA_TABLE_ID + +**Help** + +Get details of a given data table. + +**Options**:: + + + --help Show this message and exit. + diff --git a/docs/commands/tool_data_delete_data_table.rst b/docs/commands/tool_data_delete_data_table.rst deleted file mode 100644 index b631798..0000000 --- a/docs/commands/tool_data_delete_data_table.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``tool_data_delete_data_table`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``tool_data_delete_data_table``. This help message can be generated with ``parsec tool_data_delete_data_table ---help``. - -**Usage**:: - - parsec tool_data_delete_data_table [OPTIONS] DATA_TABLE_ID VALUES - -**Help** - -Delete an item from a data table. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/tool_data_get_data_tables.rst b/docs/commands/tool_data_get_data_tables.rst deleted file mode 100644 index e2fd65b..0000000 --- a/docs/commands/tool_data_get_data_tables.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``tool_data_get_data_tables`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``tool_data_get_data_tables``. This help message can be generated with ``parsec tool_data_get_data_tables ---help``. - -**Usage**:: - - parsec tool_data_get_data_tables [OPTIONS] - -**Help** - -Displays a collection (list) of data tables. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/tool_data_show_data_table.rst b/docs/commands/tool_data_show_data_table.rst deleted file mode 100644 index 610ba08..0000000 --- a/docs/commands/tool_data_show_data_table.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``tool_data_show_data_table`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``tool_data_show_data_table``. This help message can be generated with ``parsec tool_data_show_data_table ---help``. - -**Usage**:: - - parsec tool_data_show_data_table [OPTIONS] DATA_TABLE_ID - -**Help** - -Display information on a single data_table - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/tools.rst b/docs/commands/tools.rst new file mode 100644 index 0000000..1a14f39 --- /dev/null +++ b/docs/commands/tools.rst @@ -0,0 +1,196 @@ +tools +===== + +``get_tool_panel`` command +-------------------------- + +This section is auto-generated from the help text for the parsec command +``tools``. + +**Usage**:: + + parsec tools get_tool_panel [OPTIONS] + +**Help** + +Get a list of available tool elements in Galaxy's configured toolbox. + +**Options**:: + + + --help Show this message and exit. + + +``get_tools`` command +--------------------- + +This section is auto-generated from the help text for the parsec command +``tools``. + +**Usage**:: + + parsec tools get_tools [OPTIONS] + +**Help** + +Get all tools or filter the specific one(s) via the provided ``name`` or ``tool_id``. Provide only one argument, ``name`` or ``tool_id``, but not both. + +**Options**:: + + + --tool_id TEXT id of the requested tool + --name TEXT name of the requested tool(s) + --trackster if True, only tools that are compatible with Trackster are + returned + --help Show this message and exit. + + +``install_dependencies`` command +-------------------------------- + +This section is auto-generated from the help text for the parsec command +``tools``. + +**Usage**:: + + parsec tools install_dependencies [OPTIONS] TOOL_ID + +**Help** + +Install dependencies for a given tool via a resolver. This works only for Conda currently. This functionality is available since Galaxy release_16.10 and is available only to Galaxy admins. + +**Options**:: + + + --help Show this message and exit. + + +``paste_content`` command +------------------------- + +This section is auto-generated from the help text for the parsec command +``tools``. + +**Usage**:: + + parsec tools paste_content [OPTIONS] CONTENT HISTORY_ID + +**Help** + +Upload a string to a new dataset in the history specified by ``history_id``. + +**Options**:: + + + --help Show this message and exit. + + +``put_url`` command +------------------- + +This section is auto-generated from the help text for the parsec command +``tools``. + +**Usage**:: + + parsec tools put_url [OPTIONS] CONTENT HISTORY_ID + +**Help** + +Upload a string to a new dataset in the history specified by ``history_id``. + +**Options**:: + + + --help Show this message and exit. + + +``run_tool`` command +-------------------- + +This section is auto-generated from the help text for the parsec command +``tools``. + +**Usage**:: + + parsec tools run_tool [OPTIONS] HISTORY_ID TOOL_ID TOOL_INPUTS + +**Help** + +Runs tool specified by ``tool_id`` in history indicated by ``history_id`` with inputs from ``dict`` ``tool_inputs``. + +**Options**:: + + + --help Show this message and exit. + + +``show_tool`` command +--------------------- + +This section is auto-generated from the help text for the parsec command +``tools``. + +**Usage**:: + + parsec tools show_tool [OPTIONS] TOOL_ID + +**Help** + +Get details of a given tool. + +**Options**:: + + + --io_details if True, get also input and output details + --link_details if True, get also link details + --help Show this message and exit. + + +``upload_file`` command +----------------------- + +This section is auto-generated from the help text for the parsec command +``tools``. + +**Usage**:: + + parsec tools upload_file [OPTIONS] PATH HISTORY_ID + +**Help** + +Upload the file specified by ``path`` to the history specified by ``history_id``. + +**Options**:: + + + --dbkey TEXT (optional) genome dbkey + --to_posix_lines if True, convert universal line endings to POSIX line + endings. Default is True. Set to False if you upload a gzip, + bz2 or zip archive containing a binary file + --file_name TEXT (optional) name of the new history dataset + --space_to_tab whether to convert spaces to tabs. Default is False. + Applicable only if to_posix_lines is True + --file_type TEXT Galaxy datatype for the new dataset, default is auto + --help Show this message and exit. + + +``upload_from_ftp`` command +--------------------------- + +This section is auto-generated from the help text for the parsec command +``tools``. + +**Usage**:: + + parsec tools upload_from_ftp [OPTIONS] PATH HISTORY_ID + +**Help** + +Upload the file specified by ``path`` from the user's FTP directory to the history specified by ``history_id``. + +**Options**:: + + + --help Show this message and exit. + diff --git a/docs/commands/tools_get_tool_panel.rst b/docs/commands/tools_get_tool_panel.rst deleted file mode 100644 index f142859..0000000 --- a/docs/commands/tools_get_tool_panel.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``tools_get_tool_panel`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``tools_get_tool_panel``. This help message can be generated with ``parsec tools_get_tool_panel ---help``. - -**Usage**:: - - parsec tools_get_tool_panel [OPTIONS] - -**Help** - -Get a list of available tool elements in Galaxy's configured toolbox. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/tools_get_tools.rst b/docs/commands/tools_get_tools.rst deleted file mode 100644 index 97424a5..0000000 --- a/docs/commands/tools_get_tools.rst +++ /dev/null @@ -1,27 +0,0 @@ - -``tools_get_tools`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``tools_get_tools``. This help message can be generated with ``parsec tools_get_tools ---help``. - -**Usage**:: - - parsec tools_get_tools [OPTIONS] - -**Help** - -Get all tools or filter the specific one(s) via the provided ``name`` or ``tool_id``. Provide only one argument, ``name`` or ``tool_id``, but not both. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --tool_id TEXT id of the requested tool - --name TEXT name of the requested tool(s) - --trackster TEXT if True, only tools that are compatible with - Trackster are returned - --help Show this message and exit. - diff --git a/docs/commands/tools_paste_content.rst b/docs/commands/tools_paste_content.rst deleted file mode 100644 index 832dca5..0000000 --- a/docs/commands/tools_paste_content.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``tools_paste_content`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``tools_paste_content``. This help message can be generated with ``parsec tools_paste_content ---help``. - -**Usage**:: - - parsec tools_paste_content [OPTIONS] CONTENT HISTORY_ID - -**Help** - -Upload a string to a new dataset in the history specified by ``history_id``. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/tools_put_url.rst b/docs/commands/tools_put_url.rst deleted file mode 100644 index f945e9a..0000000 --- a/docs/commands/tools_put_url.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``tools_put_url`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``tools_put_url``. This help message can be generated with ``parsec tools_put_url ---help``. - -**Usage**:: - - parsec tools_put_url [OPTIONS] CONTENT HISTORY_ID - -**Help** - -Upload a string to a new dataset in the history specified by ``history_id``. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/tools_run_tool.rst b/docs/commands/tools_run_tool.rst deleted file mode 100644 index 6ea790a..0000000 --- a/docs/commands/tools_run_tool.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``tools_run_tool`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``tools_run_tool``. This help message can be generated with ``parsec tools_run_tool ---help``. - -**Usage**:: - - parsec tools_run_tool [OPTIONS] HISTORY_ID TOOL_ID TOOL_INPUTS - -**Help** - -Runs tool specified by ``tool_id`` in history indicated by ``history_id`` with inputs from ``dict`` ``tool_inputs``. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/tools_show_tool.rst b/docs/commands/tools_show_tool.rst deleted file mode 100644 index facec30..0000000 --- a/docs/commands/tools_show_tool.rst +++ /dev/null @@ -1,25 +0,0 @@ - -``tools_show_tool`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``tools_show_tool``. This help message can be generated with ``parsec tools_show_tool ---help``. - -**Usage**:: - - parsec tools_show_tool [OPTIONS] TOOL_ID - -**Help** - -Get details of a given tool. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --io_details if True, get also input and output details - --link_details if True, get also link details - --help Show this message and exit. - diff --git a/docs/commands/tools_upload_file.rst b/docs/commands/tools_upload_file.rst deleted file mode 100644 index 00bf9cc..0000000 --- a/docs/commands/tools_upload_file.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``tools_upload_file`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``tools_upload_file``. This help message can be generated with ``parsec tools_upload_file ---help``. - -**Usage**:: - - parsec tools_upload_file [OPTIONS] PATH HISTORY_ID - -**Help** - -Upload file specified by ``path`` to the history specified by ``history_id``. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/toolshed.rst b/docs/commands/toolshed.rst new file mode 100644 index 0000000..b436dd1 --- /dev/null +++ b/docs/commands/toolshed.rst @@ -0,0 +1,84 @@ +toolshed +======== + +``get_repositories`` command +---------------------------- + +This section is auto-generated from the help text for the parsec command +``toolshed``. + +**Usage**:: + + parsec toolshed get_repositories [OPTIONS] + +**Help** + +Get the list of all installed Tool Shed repositories on this Galaxy instance. + +**Options**:: + + + --help Show this message and exit. + + +``install_repository_revision`` command +--------------------------------------- + +This section is auto-generated from the help text for the parsec command +``toolshed``. + +**Usage**:: + + parsec toolshed install_repository_revision [OPTIONS] TOOL_SHED_URL NAME + +**Help** + +Install a specified repository revision from a specified Tool Shed into this Galaxy instance. This example demonstrates installation of a repository that contains valid tools, loading them into a section of the Galaxy tool panel or creating a new tool panel section. You can choose if tool dependencies or repository dependencies should be installed through the Tool Shed, (use ``install_tool_dependencies`` or ``install_repository_dependencies``) or through a resolver that supports installing dependencies (use ``install_resolver_dependencies``). Note that any combination of the three dependency resolving variables is valid. + +**Options**:: + + + --install_tool_dependencies Whether or not to automatically handle tool + dependencies (see http://wiki.galaxyproject.or + g/AToolOrASuitePerRepository for more details) + --install_repository_dependencies + Whether or not to automatically handle + repository dependencies (see http://wiki.galax + yproject.org/DefiningRepositoryDependencies + for more details) + --install_resolver_dependencies + Whether or not to automatically install + resolver dependencies (e.g. conda). This + parameter is silently ignored in Galaxy + ``release_2016.04`` and earlier. + --tool_panel_section_id TEXT The ID of the Galaxy tool panel section where + the tool should be insterted under. Note that + you should specify either this parameter or + the ``new_tool_panel_section_label``. If both + are specified, this one will take precedence. + --new_tool_panel_section_label TEXT + The name of a Galaxy tool panel section that + should be created and the repository installed + into. + --help Show this message and exit. + + +``show_repository`` command +--------------------------- + +This section is auto-generated from the help text for the parsec command +``toolshed``. + +**Usage**:: + + parsec toolshed show_repository [OPTIONS] TOOLSHED_ID + +**Help** + +Get details of a given Tool Shed repository as it is installed on this Galaxy instance. + +**Options**:: + + + --help Show this message and exit. + diff --git a/docs/commands/users.rst b/docs/commands/users.rst new file mode 100644 index 0000000..54dff75 --- /dev/null +++ b/docs/commands/users.rst @@ -0,0 +1,160 @@ +users +===== + +``create_local_user`` command +----------------------------- + +This section is auto-generated from the help text for the parsec command +``users``. + +**Usage**:: + + parsec users create_local_user [OPTIONS] USERNAME USER_EMAIL PASSWORD + +**Help** + +Create a new Galaxy local user. + +**Options**:: + + + --help Show this message and exit. + + +``create_remote_user`` command +------------------------------ + +This section is auto-generated from the help text for the parsec command +``users``. + +**Usage**:: + + parsec users create_remote_user [OPTIONS] USER_EMAIL + +**Help** + +Create a new Galaxy remote user. + +**Options**:: + + + --help Show this message and exit. + + +``create_user`` command +----------------------- + +This section is auto-generated from the help text for the parsec command +``users``. + +**Usage**:: + + parsec users [OPTIONS] COMMAND [ARGS]... + +**Help** + +Deprecated method. + + +``create_user_apikey`` command +------------------------------ + +This section is auto-generated from the help text for the parsec command +``users``. + +**Usage**:: + + parsec users create_user_apikey [OPTIONS] USER_ID + +**Help** + +Create a new API key for a given user. + +**Options**:: + + + --help Show this message and exit. + + +``delete_user`` command +----------------------- + +This section is auto-generated from the help text for the parsec command +``users``. + +**Usage**:: + + parsec users delete_user [OPTIONS] USER_ID + +**Help** + +Delete a user. + +**Options**:: + + + --purge if ``True``, also purge (permanently delete) the history + --help Show this message and exit. + + +``get_current_user`` command +---------------------------- + +This section is auto-generated from the help text for the parsec command +``users``. + +**Usage**:: + + parsec users get_current_user [OPTIONS] + +**Help** + +Display information about the user associated with this Galaxy connection. + +**Options**:: + + + --help Show this message and exit. + + +``get_users`` command +--------------------- + +This section is auto-generated from the help text for the parsec command +``users``. + +**Usage**:: + + parsec users get_users [OPTIONS] + +**Help** + +Get a list of all registered users. If ``deleted`` is set to ``True``, get a list of deleted users. + +**Options**:: + + + --deleted TEXT None + --help Show this message and exit. + + +``show_user`` command +--------------------- + +This section is auto-generated from the help text for the parsec command +``users``. + +**Usage**:: + + parsec users show_user [OPTIONS] USER_ID + +**Help** + +Display information about a user. + +**Options**:: + + + --deleted whether to return results for a deleted user + --help Show this message and exit. + diff --git a/docs/commands/users_create_local_user.rst b/docs/commands/users_create_local_user.rst deleted file mode 100644 index c6de055..0000000 --- a/docs/commands/users_create_local_user.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``users_create_local_user`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``users_create_local_user``. This help message can be generated with ``parsec users_create_local_user ---help``. - -**Usage**:: - - parsec users_create_local_user [OPTIONS] USERNAME USER_EMAIL PASSWORD - -**Help** - -Create a new Galaxy user. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/users_create_remote_user.rst b/docs/commands/users_create_remote_user.rst deleted file mode 100644 index b8f267e..0000000 --- a/docs/commands/users_create_remote_user.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``users_create_remote_user`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``users_create_remote_user``. This help message can be generated with ``parsec users_create_remote_user ---help``. - -**Usage**:: - - parsec users_create_remote_user [OPTIONS] USER_EMAIL - -**Help** - -Create a new Galaxy remote user. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/users_create_user.rst b/docs/commands/users_create_user.rst deleted file mode 100644 index 99fd0a2..0000000 --- a/docs/commands/users_create_user.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``users_create_user`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``users_create_user``. This help message can be generated with ``parsec users_create_user ---help``. - -**Usage**:: - - parsec users_create_user [OPTIONS] USER_EMAIL - -**Help** - -Deprecated method. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/users_create_user_apikey.rst b/docs/commands/users_create_user_apikey.rst deleted file mode 100644 index b14a418..0000000 --- a/docs/commands/users_create_user_apikey.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``users_create_user_apikey`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``users_create_user_apikey``. This help message can be generated with ``parsec users_create_user_apikey ---help``. - -**Usage**:: - - parsec users_create_user_apikey [OPTIONS] USER_ID - -**Help** - -Create a new api key for a user - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/users_get_current_user.rst b/docs/commands/users_get_current_user.rst deleted file mode 100644 index 90ccd90..0000000 --- a/docs/commands/users_get_current_user.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``users_get_current_user`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``users_get_current_user``. This help message can be generated with ``parsec users_get_current_user ---help``. - -**Usage**:: - - parsec users_get_current_user [OPTIONS] - -**Help** - -Returns the user id associated with this Galaxy connection - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/users_get_users.rst b/docs/commands/users_get_users.rst deleted file mode 100644 index 03f518a..0000000 --- a/docs/commands/users_get_users.rst +++ /dev/null @@ -1,24 +0,0 @@ - -``users_get_users`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``users_get_users``. This help message can be generated with ``parsec users_get_users ---help``. - -**Usage**:: - - parsec users_get_users [OPTIONS] - -**Help** - -Get a list of all registered users. If ``deleted`` is set to ``True``, get a list of deleted users. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --deleted TEXT None - --help Show this message and exit. - diff --git a/docs/commands/users_show_user.rst b/docs/commands/users_show_user.rst deleted file mode 100644 index 08dd623..0000000 --- a/docs/commands/users_show_user.rst +++ /dev/null @@ -1,24 +0,0 @@ - -``users_show_user`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``users_show_user``. This help message can be generated with ``parsec users_show_user ---help``. - -**Usage**:: - - parsec users_show_user [OPTIONS] USER_ID - -**Help** - -Display information about a user. If ``deleted`` is set to ``True``, display information about a deleted user. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --deleted Include deleted users in listing - --help Show this message and exit. - diff --git a/docs/commands/visual.rst b/docs/commands/visual.rst new file mode 100644 index 0000000..a31b861 --- /dev/null +++ b/docs/commands/visual.rst @@ -0,0 +1,42 @@ +visual +====== + +``get_visualizations`` command +------------------------------ + +This section is auto-generated from the help text for the parsec command +``visual``. + +**Usage**:: + + parsec visual get_visualizations [OPTIONS] + +**Help** + +Get the list of all visualizations. + +**Options**:: + + + --help Show this message and exit. + + +``show_visualization`` command +------------------------------ + +This section is auto-generated from the help text for the parsec command +``visual``. + +**Usage**:: + + parsec visual show_visualization [OPTIONS] VISUAL_ID + +**Help** + +Get details of a given visualization. + +**Options**:: + + + --help Show this message and exit. + diff --git a/docs/commands/visual_get_visualizations.rst b/docs/commands/visual_get_visualizations.rst deleted file mode 100644 index 0a10d63..0000000 --- a/docs/commands/visual_get_visualizations.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``visual_get_visualizations`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``visual_get_visualizations``. This help message can be generated with ``parsec visual_get_visualizations ---help``. - -**Usage**:: - - parsec visual_get_visualizations [OPTIONS] - -**Help** - -Get a list of visualizations - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/visual_show_visualization.rst b/docs/commands/visual_show_visualization.rst deleted file mode 100644 index 01f722d..0000000 --- a/docs/commands/visual_show_visualization.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``visual_show_visualization`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``visual_show_visualization``. This help message can be generated with ``parsec visual_show_visualization ---help``. - -**Usage**:: - - parsec visual_show_visualization [OPTIONS] VISUAL_ID - -**Help** - -Display information on a visualization - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/workflows.rst b/docs/commands/workflows.rst new file mode 100644 index 0000000..30bbf39 --- /dev/null +++ b/docs/commands/workflows.rst @@ -0,0 +1,427 @@ +workflows +========= + +``cancel_invocation`` command +----------------------------- + +This section is auto-generated from the help text for the parsec command +``workflows``. + +**Usage**:: + + parsec workflows cancel_invocation [OPTIONS] WORKFLOW_ID INVOCATION_ID + +**Help** + +Cancel the scheduling of a workflow. + +**Options**:: + + + --help Show this message and exit. + + +``delete_workflow`` command +--------------------------- + +This section is auto-generated from the help text for the parsec command +``workflows``. + +**Usage**:: + + parsec workflows delete_workflow [OPTIONS] WORKFLOW_ID + +**Help** + +Delete a workflow identified by `workflow_id`. + +**Options**:: + + + --help Show this message and exit. + + +``export_workflow_dict`` command +-------------------------------- + +This section is auto-generated from the help text for the parsec command +``workflows``. + +**Usage**:: + + parsec workflows export_workflow_dict [OPTIONS] WORKFLOW_ID + +**Help** + +Exports a workflow. + +**Options**:: + + + --help Show this message and exit. + + +``export_workflow_json`` command +-------------------------------- + +This section is auto-generated from the help text for the parsec command +``workflows``. + +**Usage**:: + + parsec workflows export_workflow_json [OPTIONS] WORKFLOW_ID + +**Help** + +Deprecated method. + +**Options**:: + + + --help Show this message and exit. + + +``export_workflow_to_local_path`` command +----------------------------------------- + +This section is auto-generated from the help text for the parsec command +``workflows``. + +**Usage**:: + + parsec workflows export_workflow_to_local_path [OPTIONS] WORKFLOW_ID + +**Help** + +Exports a workflow in JSON format to a given local path. + +**Options**:: + + + --use_default_filename If the use_default_name parameter is True, the + exported file will be saved as file_local_path/Galaxy- + Workflow-%s.ga, where %s is the workflow name. If + use_default_name is False, file_local_path is assumed + to contain the full file path including filename. + --help Show this message and exit. + + +``get_invocations`` command +--------------------------- + +This section is auto-generated from the help text for the parsec command +``workflows``. + +**Usage**:: + + parsec workflows get_invocations [OPTIONS] WORKFLOW_ID + +**Help** + +Get a list containing all the workflow invocations corresponding to the specified workflow. + +**Options**:: + + + --help Show this message and exit. + + +``get_workflow_inputs`` command +------------------------------- + +This section is auto-generated from the help text for the parsec command +``workflows``. + +**Usage**:: + + parsec workflows get_workflow_inputs [OPTIONS] WORKFLOW_ID LABEL + +**Help** + +Get a list of workflow input IDs that match the given label. If no input matches the given label, an empty list is returned. + +**Options**:: + + + --help Show this message and exit. + + +``get_workflows`` command +------------------------- + +This section is auto-generated from the help text for the parsec command +``workflows``. + +**Usage**:: + + parsec workflows get_workflows [OPTIONS] + +**Help** + +Get all workflows or filter the specific one(s) via the provided ``name`` or ``workflow_id``. Provide only one argument, ``name`` or ``workflow_id``, but not both. + +**Options**:: + + + --workflow_id TEXT Encoded workflow ID (incompatible with ``name``) + --name TEXT Filter by name of workflow (incompatible with + ``workflow_id``). If multiple names match the given name, + all the workflows matching the argument will be returned. + --published if ``True``, return also published workflows + --help Show this message and exit. + + +``import_shared_workflow`` command +---------------------------------- + +This section is auto-generated from the help text for the parsec command +``workflows``. + +**Usage**:: + + parsec workflows import_shared_workflow [OPTIONS] WORKFLOW_ID + +**Help** + +Imports a new workflow from the shared published workflows. + +**Options**:: + + + --help Show this message and exit. + + +``import_workflow_dict`` command +-------------------------------- + +This section is auto-generated from the help text for the parsec command +``workflows``. + +**Usage**:: + + parsec workflows import_workflow_dict [OPTIONS] WORKFLOW_DICT + +**Help** + +Imports a new workflow given a dictionary representing a previously exported workflow. + +**Options**:: + + + --help Show this message and exit. + + +``import_workflow_from_local_path`` command +------------------------------------------- + +This section is auto-generated from the help text for the parsec command +``workflows``. + +**Usage**:: + + parsec workflows import_workflow_from_local_path [OPTIONS] + +**Help** + +Imports a new workflow given the path to a file containing a previously exported workflow. + +**Options**:: + + + --help Show this message and exit. + + +``import_workflow_json`` command +-------------------------------- + +This section is auto-generated from the help text for the parsec command +``workflows``. + +**Usage**:: + + parsec workflows import_workflow_json [OPTIONS] WORKFLOW_JSON + +**Help** + +Deprecated method. + +**Options**:: + + + --help Show this message and exit. + + +``invoke_workflow`` command +--------------------------- + +This section is auto-generated from the help text for the parsec command +``workflows``. + +**Usage**:: + + parsec workflows invoke_workflow [OPTIONS] WORKFLOW_ID + +**Help** + +Invoke the workflow identified by ``workflow_id``. This will cause a workflow to be scheduled and return an object describing the workflow invocation. + +**Options**:: + + + --inputs DICT A mapping of workflow inputs to datasets and + dataset collections. The datasets source can + be a LibraryDatasetDatasetAssociation + (``ldda``), LibraryDataset (``ld``), + HistoryDatasetAssociation (``hda``), or + HistoryDatasetCollectionAssociation + (``hdca``). + --params DICT A mapping of non-datasets tool parameters (see + below) + --history_id TEXT The encoded history ID where to store the + workflow output. Alternatively, + ``history_name`` may be specified to create a + new history. + --history_name TEXT Create a new history with the given name to + store the workflow output. If both + ``history_id`` and ``history_name`` are + provided, ``history_name`` is ignored. If + neither is specified, a new 'Unnamed history' + is created. + --import_inputs_to_history If ``True``, used workflow inputs will be + imported into the history. If ``False``, only + workflow outputs will be visible in the given + history. + --replacement_params DICT pattern-based replacements for post-job + actions (see below) + --allow_tool_state_corrections If True, allow Galaxy to fill in missing tool + state when running workflows. This may be + useful for workflows using tools that have + changed over time or for workflows built + outside of Galaxy with only a subset of inputs + defined. + --help Show this message and exit. + + +``run_invocation_step_action`` command +-------------------------------------- + +This section is auto-generated from the help text for the parsec command +``workflows``. + +**Usage**:: + + parsec workflows run_invocation_step_action [OPTIONS] WORKFLOW_ID + +**Help** + +nature of this action and what is expected will vary based on the the type of workflow step (the only currently valid action is True/False for pause steps). + +**Options**:: + + + --help Show this message and exit. + + +``run_workflow`` command +------------------------ + +This section is auto-generated from the help text for the parsec command +``workflows``. + +**Usage**:: + + parsec workflows run_workflow [OPTIONS] WORKFLOW_ID + +**Help** + +Run the workflow identified by ``workflow_id``. This method is deprecated, please use :meth:`invoke_workflow` instead. + +**Options**:: + + + --dataset_map DICT A mapping of workflow inputs to datasets. The + datasets source can be a + LibraryDatasetDatasetAssociation (``ldda``), + LibraryDataset (``ld``), or + HistoryDatasetAssociation (``hda``). The map must + be in the following format: ``{'': {'id': + , 'src': '[ldda, ld, hda]'}}`` + (e.g. ``{'23': {'id': '29beef4fadeed09f', 'src': + 'ld'}}``) + --params DICT A mapping of non-datasets tool parameters (see + below) + --history_id TEXT The encoded history ID where to store the workflow + output. Alternatively, ``history_name`` may be + specified to create a new history. + --history_name TEXT Create a new history with the given name to store + the workflow output. If both ``history_id`` and + ``history_name`` are provided, ``history_name`` is + ignored. If neither is specified, a new 'Unnamed + history' is created. + --import_inputs_to_history If ``True``, used workflow inputs will be imported + into the history. If ``False``, only workflow + outputs will be visible in the given history. + --replacement_params DICT pattern-based replacements for post-job actions + (see below) + --help Show this message and exit. + + +``show_invocation`` command +--------------------------- + +This section is auto-generated from the help text for the parsec command +``workflows``. + +**Usage**:: + + parsec workflows show_invocation [OPTIONS] WORKFLOW_ID INVOCATION_ID + +**Help** + +Get a workflow invocation object representing the scheduling of a workflow. This object may be sparse at first (missing inputs and invocation steps) and will become more populated as the workflow is actually scheduled. + +**Options**:: + + + --help Show this message and exit. + + +``show_invocation_step`` command +-------------------------------- + +This section is auto-generated from the help text for the parsec command +``workflows``. + +**Usage**:: + + parsec workflows show_invocation_step [OPTIONS] WORKFLOW_ID INVOCATION_ID + +**Help** + +See the details of a particular workflow invocation step. + +**Options**:: + + + --help Show this message and exit. + + +``show_workflow`` command +------------------------- + +This section is auto-generated from the help text for the parsec command +``workflows``. + +**Usage**:: + + parsec workflows show_workflow [OPTIONS] WORKFLOW_ID + +**Help** + +Display information needed to run a workflow + +**Options**:: + + + --help Show this message and exit. + diff --git a/docs/commands/workflows_delete_workflow.rst b/docs/commands/workflows_delete_workflow.rst deleted file mode 100644 index d852032..0000000 --- a/docs/commands/workflows_delete_workflow.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``workflows_delete_workflow`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``workflows_delete_workflow``. This help message can be generated with ``parsec workflows_delete_workflow ---help``. - -**Usage**:: - - parsec workflows_delete_workflow [OPTIONS] WORKFLOW_ID - -**Help** - -Delete a workflow identified by `workflow_id`. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/workflows_export_workflow_json.rst b/docs/commands/workflows_export_workflow_json.rst deleted file mode 100644 index 9f98307..0000000 --- a/docs/commands/workflows_export_workflow_json.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``workflows_export_workflow_json`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``workflows_export_workflow_json``. This help message can be generated with ``parsec workflows_export_workflow_json ---help``. - -**Usage**:: - - parsec workflows_export_workflow_json [OPTIONS] WORKFLOW_ID - -**Help** - -Exports a workflow - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/workflows_export_workflow_to_local_path.rst b/docs/commands/workflows_export_workflow_to_local_path.rst deleted file mode 100644 index 3144249..0000000 --- a/docs/commands/workflows_export_workflow_to_local_path.rst +++ /dev/null @@ -1,29 +0,0 @@ - -``workflows_export_workflow_to_local_path`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``workflows_export_workflow_to_local_path``. This help message can be generated with ``parsec workflows_export_workflow_to_local_path ---help``. - -**Usage**:: - - parsec workflows_export_workflow_to_local_path [OPTIONS] WORKFLOW_ID - -**Help** - -Exports a workflow to a given local path. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --use_default_filename If the use_default_name parameter is True, the - exported file will be saved as file_local_path - /Galaxy-Workflow-%s.ga, where %s is the workflow - name. If use_default_name is False, file_local_path - is assumed to contain the full file path including - filename. - --help Show this message and exit. - diff --git a/docs/commands/workflows_get_workflow_inputs.rst b/docs/commands/workflows_get_workflow_inputs.rst deleted file mode 100644 index 03edf57..0000000 --- a/docs/commands/workflows_get_workflow_inputs.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``workflows_get_workflow_inputs`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``workflows_get_workflow_inputs``. This help message can be generated with ``parsec workflows_get_workflow_inputs ---help``. - -**Usage**:: - - parsec workflows_get_workflow_inputs [OPTIONS] WORKFLOW_ID LABEL - -**Help** - -Get a list of workflow input IDs that match the given label. If no input matches the given label, an empty list is returned. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/workflows_get_workflows.rst b/docs/commands/workflows_get_workflows.rst deleted file mode 100644 index 047c871..0000000 --- a/docs/commands/workflows_get_workflows.rst +++ /dev/null @@ -1,31 +0,0 @@ - -``workflows_get_workflows`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``workflows_get_workflows``. This help message can be generated with ``parsec workflows_get_workflows ---help``. - -**Usage**:: - - parsec workflows_get_workflows [OPTIONS] - -**Help** - -Get all workflows or filter the specific one(s) via the provided ``name`` or ``workflow_id``. Provide only one argument, ``name`` or ``workflow_id``, but not both. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --workflow_id TEXT Encoded workflow ID (incompatible with ``name``) - --name TEXT Filter by name of workflow (incompatible with - ``workflow_id``). If multiple names match the given - name, all the workflows matching the argument will - be returned. - --deleted If set to ``True``, return workflows that have been - deleted. - --published If set to ``True``, return published workflows. - --help Show this message and exit. - diff --git a/docs/commands/workflows_import_shared_workflow.rst b/docs/commands/workflows_import_shared_workflow.rst deleted file mode 100644 index 43537b9..0000000 --- a/docs/commands/workflows_import_shared_workflow.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``workflows_import_shared_workflow`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``workflows_import_shared_workflow``. This help message can be generated with ``parsec workflows_import_shared_workflow ---help``. - -**Usage**:: - - parsec workflows_import_shared_workflow [OPTIONS] WORKFLOW_ID - -**Help** - -Imports a new workflow from the shared published workflows - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/workflows_import_workflow_from_local_path.rst b/docs/commands/workflows_import_workflow_from_local_path.rst deleted file mode 100644 index 8b5c3f8..0000000 --- a/docs/commands/workflows_import_workflow_from_local_path.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``workflows_import_workflow_from_local_path`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``workflows_import_workflow_from_local_path``. This help message can be generated with ``parsec workflows_import_workflow_from_local_path ---help``. - -**Usage**:: - - parsec workflows_import_workflow_from_local_path [OPTIONS] - -**Help** - -Imports a new workflow given the path to a file containing a previously exported workflow. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/workflows_import_workflow_json.rst b/docs/commands/workflows_import_workflow_json.rst deleted file mode 100644 index bb66f50..0000000 --- a/docs/commands/workflows_import_workflow_json.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``workflows_import_workflow_json`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``workflows_import_workflow_json``. This help message can be generated with ``parsec workflows_import_workflow_json ---help``. - -**Usage**:: - - parsec workflows_import_workflow_json [OPTIONS] WORKFLOW_JSON - -**Help** - -Imports a new workflow given a json representation of a previously exported workflow. - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/docs/commands/workflows_run_workflow.rst b/docs/commands/workflows_run_workflow.rst deleted file mode 100644 index b254925..0000000 --- a/docs/commands/workflows_run_workflow.rst +++ /dev/null @@ -1,50 +0,0 @@ - -``workflows_run_workflow`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``workflows_run_workflow``. This help message can be generated with ``parsec workflows_run_workflow ---help``. - -**Usage**:: - - parsec workflows_run_workflow [OPTIONS] WORKFLOW_ID - -**Help** - -Run the workflow identified by ``workflow_id`` - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --dataset_map TEXT A mapping of workflow inputs to datasets. The - datasets source can be a - LibraryDatasetDatasetAssociation (``ldda``), - LibraryDataset (``ld``), or - HistoryDatasetAssociation (``hda``). The map - must be in the following format: ``{'': - {'id': , 'src': '[ldda, ld, - hda]'}}`` (e.g. ``{'23': {'id': - '29beef4fadeed09f', 'src': 'ld'}}``) - --params TEXT A mapping of tool parameters that are non- - datasets parameters. The map must be in the - following format: ``{'blastn': {'param': - 'evalue', 'value': '1e-06'}}`` - --history_id TEXT The encoded history ID where to store the - workflow output. ``history_id`` OR - ``history_name`` should be provided but not - both! - --history_name TEXT Create a new history with the given name to - store the workflow output. ``history_id`` OR - ``history_name`` should be provided but not - both! - --import_inputs_to_history If ``True``, used workflow inputs will be - imported into the history. If ``False``, only - workflow outputs will be visible in the given - history. - --replacement_params DICT pattern-based replacements for post-job actions - (see below) - --help Show this message and exit. - diff --git a/docs/commands/workflows_show_workflow.rst b/docs/commands/workflows_show_workflow.rst deleted file mode 100644 index 21b7fd6..0000000 --- a/docs/commands/workflows_show_workflow.rst +++ /dev/null @@ -1,23 +0,0 @@ - -``workflows_show_workflow`` command -=============================== - -This section is auto-generated from the help text for the parsec command -``workflows_show_workflow``. This help message can be generated with ``parsec workflows_show_workflow ---help``. - -**Usage**:: - - parsec workflows_show_workflow [OPTIONS] WORKFLOW_ID - -**Help** - -Display information needed to run a workflow - -**Options**:: - - - --galaxy_instance TEXT name of galaxy instance per ~/.planemo.yml - [required] - --help Show this message and exit. - diff --git a/parsec/cli.py b/parsec/cli.py index 3d05a9f..0808c07 100644 --- a/parsec/cli.py +++ b/parsec/cli.py @@ -50,11 +50,28 @@ def list_cmds(): rv.sort() return rv -def name_to_command(name): + +def list_subcmds(parent): + rv = [] + for filename in os.listdir(os.path.join(cmd_folder, parent)): + if filename.endswith('.py') and \ + not filename.startswith('__'): + rv.append(filename[:-len(".py")]) + rv.sort() + return rv + + +def name_to_command(parent, name): try: if sys.version_info[0] == 2: + if parent: + parent = parent.encode('ascii', 'replace') name = name.encode('ascii', 'replace') - mod_name = 'parsec.commands.cmd_' + name + + if parent: + mod_name = 'parsec.commands.%s.%s' % (parent, name) + else: + mod_name = 'parsec.commands.cmd_' + name mod = __import__(mod_name, None, None, ['cli']) except ImportError as e: error("Problem loading command %s, exception %s" % (name, e)) @@ -68,7 +85,7 @@ def list_commands(self, ctx): return list_cmds() def get_command(self, ctx, name): - return name_to_command(name) + return name_to_command(None, name) @click.command(cls=ParsecCLI, context_settings=CONTEXT_SETTINGS) diff --git a/scripts/commands_to_rst.py b/scripts/commands_to_rst.py index 122ee6f..db05e91 100644 --- a/scripts/commands_to_rst.py +++ b/scripts/commands_to_rst.py @@ -9,27 +9,18 @@ project_dir = os.path.abspath(os.path.join(os.path.dirname(__file__), "..")) sys.path.insert(0, project_dir) -from parsec.cli import list_cmds +from parsec.cli import list_cmds, list_subcmds from parsec import cli parsec_cli = cli.parsec runner = CliRunner() -# Don't document the following commands - they should not be considered part -# of the parsec API. -INTERNAL_COMMANDS = [ - 'create_gist', - 'travis_before_install', - 'shed_download', -] - COMMAND_TEMPLATE = Template(''' -``${command}`` command -=============================== +``${subcommand}`` command +${module_underline} This section is auto-generated from the help text for the parsec command -``${command}``. This help message can be generated with ``parsec ${command} ---help``. +``${command}``. ${command_help} ''') @@ -38,53 +29,63 @@ Commands ======== -parsec is a set of utilities for talking to Galaxy servers. Each utility is -implemented as a subcommand of the ``parsec`` executable. This section of the -documentation describes these commands. +parsec is a set of wrappers for BioBlend's API. It builds a set of small, +useful utilities for talking to Galaxy servers. Each utility is implemented as +a subcommand of ``parsec``. This section of the documentation +describes these commands. +.. toctree:: + :maxdepth: 0 """ command_doc_dir = os.path.join("docs", "commands") commands = COMMANDS_TEMPLATE for command in list_cmds(): - if command in INTERNAL_COMMANDS: - continue - - command_obj = cli.name_to_command(command) - function = command_obj.callback - raw_rst = function.__doc__ - - def clean_rst_line(line): - if line.startswith(" "): - return line[4:] - else: - return line - clean_rst = "\n".join(map(clean_rst_line, raw_rst.split("\n"))) - - result = runner.invoke(parsec_cli, [command, "--help"]) - output = result.output - lines = output.split("\n") - new_lines = [] - help_lines = False - option_lines = False - for line in lines: - if line.startswith("Usage: "): - new_lines.append("**Usage**::\n\n %s" % line[len("Usage: "):]) - new_lines.append("\n**Help**\n") - new_lines.append(clean_rst) - help_lines = True - elif line.startswith("Options:"): - help_lines = False - new_lines.append("**Options**::\n\n") - option_lines = True - elif option_lines: - new_lines.append(" %s" % line) - text = COMMAND_TEMPLATE.safe_substitute( - command=command, - command_help="\n".join(new_lines), - ) - commands += "\n.. include:: commands/%s.rst" % command - open(os.path.join(command_doc_dir, command + ".rst"), "w").write(text) + commands += "\n commands/%s.rst" % command + parent_doc_handle = open(os.path.join(command_doc_dir, command + ".rst"), "w") + parent_doc_handle.write('%s\n' % command) + parent_doc_handle.write('%s\n' % ('=' * len(command))) + + for subcommand in list_subcmds(command): + + command_obj = cli.name_to_command(command, subcommand) + + function = command_obj.callback + raw_rst = function.__doc__ + + def clean_rst_line(line): + if line.startswith(" "): + return line[4:] + else: + return line + clean_rst = "\n".join(map(clean_rst_line, raw_rst.split("\n"))) + + result = runner.invoke(parsec_cli, [command, subcommand, "--help"]) + output = result.output + lines = output.split("\n") + new_lines = [] + help_lines = False + option_lines = False + + for line in lines: + if line.startswith("Usage: "): + new_lines.append("**Usage**::\n\n %s" % line[len("Usage: "):]) + new_lines.append("\n**Help**\n") + new_lines.append(clean_rst) + help_lines = True + elif line.startswith("Options:"): + help_lines = False + new_lines.append("**Options**::\n\n") + option_lines = True + elif option_lines: + new_lines.append(" %s" % line) + text = COMMAND_TEMPLATE.safe_substitute( + command=command, + subcommand=subcommand, + command_help="\n".join(new_lines), + module_underline = "-" * (len(subcommand) + len('```` command')) + ) + parent_doc_handle.write(text) open(os.path.join("docs", "commands.rst"), "w").write(commands) From 8d7a0a6a8b5a120b1d934ca4b1a4a96b25180d8e Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Tue, 2 May 2017 20:32:47 +0000 Subject: [PATCH 17/80] bump version --- setup.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/setup.py b/setup.py index ea15be0..bdd2ea4 100644 --- a/setup.py +++ b/setup.py @@ -11,7 +11,7 @@ history = open('HISTORY.rst').read().replace('.. :changelog:', '') requirements = [ - 'Click', + 'Click>=6.7', 'bioblend', 'wrapt', ] @@ -20,7 +20,7 @@ # TODO: put package test requirements here ] -version = '0.9.3' +version = '1.0.0' setup( name='parsec', @@ -42,7 +42,7 @@ license="AFL", keywords='parsec', classifiers=[ - 'Development Status :: 2 - Pre-Alpha', + 'Development Status :: 4 - Beta', 'Intended Audience :: Developers', 'Environment :: Console', 'License :: OSI Approved :: MIT License', @@ -51,6 +51,8 @@ "Programming Language :: Python :: 2", 'Programming Language :: Python :: 2.6', 'Programming Language :: Python :: 2.7', + 'Programming Language :: Python :: 3.4', + 'Programming Language :: Python :: 3.5', ], test_suite='tests', tests_require=test_requirements From 66db7212906119c573656b22b890918871fe49b1 Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Tue, 2 May 2017 20:33:22 +0000 Subject: [PATCH 18/80] remove 2.6 --- setup.py | 2 -- tox.ini | 2 +- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/setup.py b/setup.py index bdd2ea4..8fba4b2 100644 --- a/setup.py +++ b/setup.py @@ -48,8 +48,6 @@ 'License :: OSI Approved :: MIT License', 'Operating System :: POSIX', 'Natural Language :: English', - "Programming Language :: Python :: 2", - 'Programming Language :: Python :: 2.6', 'Programming Language :: Python :: 2.7', 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', diff --git a/tox.ini b/tox.ini index e7f4e9d..2a78714 100644 --- a/tox.ini +++ b/tox.ini @@ -1,5 +1,5 @@ [tox] -envlist = py26, py27, py34 +envlist = py27, py34 [testenv] setenv = From 7f5154f21e1b2f64a14e36d4d078f7ebf527d5c6 Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Tue, 2 May 2017 21:20:17 +0000 Subject: [PATCH 19/80] progress rewriting --- README.rst | 127 +- tmp | 5319 ---------------------------------------------------- 2 files changed, 98 insertions(+), 5348 deletions(-) delete mode 100644 tmp diff --git a/README.rst b/README.rst index 2ed2b4c..9773216 100644 --- a/README.rst +++ b/README.rst @@ -19,11 +19,20 @@ Command-line utilities to assist in working with a Galaxy_ server instance. * Documentation: https://parsec.readthedocs.org. * Code: https://github.com/galaxy-iuc/parsec +Installation +------------ + +.. code-block:: shell + + pip install galaxy-parsec + + Quick Start ----------- -This quick start demonstrates using ``parsec`` commands to help -run Galaxy tools. +This quick start demonstrates using ``parsec`` commands to manipulate Galaxy +histories and datasets. You will want to install `jq `__ +if you do not have it already. Connect to a Galaxy server ~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -32,7 +41,6 @@ To connect to a running Galaxy server, you will need an account on that Galaxy i First initialize the parsec configuration file in ``~/.parsec.yml`` via the ``parsec`` command ``config_init``:: - user@host:~$ parsec config_init No parsec config file found, continuning anyway... Wrote configuration template to ~/.paresc.yml, please open with editor and fill out. @@ -54,35 +62,96 @@ This will look something like the following:: Once those fields are filled out (and setting ``__default`` is highly recommended), parsec will now be usable from the command line. -A quick note about using different galaxy instance, the syntax is a little different than one might expect:: - - user@host:~$ parsec --galaxy_instance admin histories_get_histories - -Otherwise parsec will use the default galaxy instance. An admin account is required for a few actions like creation of data libraries. +An admin account is required for a few actions like creation of data libraries. .. _view-histories-and-datasets: -View Histories and Datasets -~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -Methods for accessing histories and datasets are grouped under ``parsec histories_*`` and ``parsec datasets_*``, respectively. - -To get information on the Histories currently in your account, call:: - - user@host:~$ parsec histories_get_histories - [ - { - "name": "RNAseq_DGE_BASIC_Prep", - "tags": [], - "deleted": false, - "purged": false, - "id": "f3c2b0f3ecac9f02", - "url": "/api/histories/f3c2b0f3ecac9f02", - "published": false, - "model_class": "History", - "annotation": null - } - ] +Introduction To Parsec +~~~~~~~~~~~~~~~~~~~~~~ + +Parsec is a set of automatically generated wrappers for BioBlend functions. I +found myself writing a large number of small / one-off scripts that invoked +simple bioblend functions. These scripts were impossible to compose and use in +a linux-friendly manner. I copied and pasted code between all of these utility scripts. + +Parsec is the answer to all of these problems. It extracts all of the +individual functions I was writing as separate CLI commands that can be piped +together, run in parallel, etc. + +After installation, running ``parsec`` will present you with a list of sub-commands you can execute. + +.. code-block:: shell + + $ parsec + Usage: parsec [OPTIONS] COMMAND [ARGS]... + + Command line wrappers around BioBlend functions. While this sounds + unexciting, with parsec and jq you can easily build powerful command line + scripts. + + Options: + --version Show the version and exit. + -v, --verbose Enables verbose mode. + --galaxy_instance TEXT name of galaxy instance from ~/.planemo.yml + [required] + --help Show this message and exit. + + Commands: + config + datasets + datatypes + folders + forms + ... + +Each of these commands has more commands under it: + +.. code-block:: shell + $ parsec histories + Usage: parsec histories [OPTIONS] COMMAND [ARGS]... + + Options: + --help Show this message and exit. + + Commands: + create_dataset_collection Create a new dataset collection + create_history Create a new history, optionally setting + the... + create_history_tag Create history tag + delete_dataset Mark corresponding dataset as deleted. + delete_dataset_collection Mark corresponding dataset collection as... + delete_history Delete a history. + download_dataset Deprecated method, use... + download_history Download a history export archive. + export_history Start a job to create an export archive + for... + ... + + + +Viewing Histories and Datasets +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +To get information on the Histories currently in your account, call + +.. code-block:: shell + + $ parsec histories get_histories | jq .[0] + { + "name": "BuildID=Manual-2017.05.02T16:13 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=CCS Source=Jenkins", + "url": "/galaxy/api/histories/548c0777ac615645", + "annotation": null, + "model_class": "History", + "id": "548c0777ac615645", + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "purged": false, + "published": false, + "deleted": false + } This returns a list of dictionaries containing basic metadata, including the id and name of each History. To get more detailed information about a History we diff --git a/tmp b/tmp deleted file mode 100644 index ae0d172..0000000 --- a/tmp +++ /dev/null @@ -1,5319 +0,0 @@ -[ - { - "model_class": "History", - "id": "b3b7d20c3adbc012", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=CCS Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/b3b7d20c3adbc012" - }, - { - "model_class": "History", - "id": "cce0956482ae6e0f", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=Sw2-Np2 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/cce0956482ae6e0f" - }, - { - "model_class": "History", - "id": "f84885650bae9f16", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=5ww_LT2 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/f84885650bae9f16" - }, - { - "model_class": "History", - "id": "511df7e76acda084", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=UDP Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/511df7e76acda084" - }, - { - "model_class": "History", - "id": "4be10b354fd01057", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=Sw2-Ken Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/4be10b354fd01057" - }, - { - "model_class": "History", - "id": "36203dc55a69ea01", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=Sw1_3003 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/36203dc55a69ea01" - }, - { - "model_class": "History", - "id": "e3c9ba388da9cde5", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=ScaApp Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/e3c9ba388da9cde5" - }, - { - "model_class": "History", - "id": "7756ea2048f9c0a2", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=ScaAbd Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/7756ea2048f9c0a2" - }, - { - "model_class": "History", - "id": "f31360cc60c87cd4", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=SL-Ken Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/f31360cc60c87cd4" - }, - { - "model_class": "History", - "id": "f17afd3d5b64d6b8", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=SCS Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/f17afd3d5b64d6b8" - }, - { - "model_class": "History", - "id": "ece1d64f13fe6ff1", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=SCI Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/ece1d64f13fe6ff1" - }, - { - "model_class": "History", - "id": "81d104e192dee067", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=Pin Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/81d104e192dee067" - }, - { - "model_class": "History", - "id": "1444e97fe281ed7b", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=MP16 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/1444e97fe281ed7b" - }, - { - "model_class": "History", - "id": "945598bba42adb24", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=MIS3-3117 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/945598bba42adb24" - }, - { - "model_class": "History", - "id": "c3172566bbe0e370", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=MIS1-LT2 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/c3172566bbe0e370" - }, - { - "model_class": "History", - "id": "7706864c4de51ecf", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=K8 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/7706864c4de51ecf" - }, - { - "model_class": "History", - "id": "5b66980b346b1fa9", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=K7 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/5b66980b346b1fa9" - }, - { - "model_class": "History", - "id": "a4cd354511ab4c1d", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=K6 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/a4cd354511ab4c1d" - }, - { - "model_class": "History", - "id": "4af131ad66b01d78", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=J76 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/4af131ad66b01d78" - }, - { - "model_class": "History", - "id": "0e805c344c216c1c", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=Inf_Still_Creek Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/0e805c344c216c1c" - }, - { - "model_class": "History", - "id": "a65a9dbbf7b27d58", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=ISA Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/a65a9dbbf7b27d58" - }, - { - "model_class": "History", - "id": "0fea3a3663381425", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=2ww-3119 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/0fea3a3663381425" - }, - { - "model_class": "History", - "id": "433ccaac91a07156", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.27T15:49 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=Soft Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/433ccaac91a07156" - }, - { - "model_class": "History", - "id": "6ab222e931fbebf3", - "deleted": false, - "annotation": null, - "purged": false, - "name": "intron phageqc fuckery", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/6ab222e931fbebf3" - }, - { - "model_class": "History", - "id": "b5f518c6ecb280a3", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.25T19:43 WF=PAP_2017_Functional_(8.14) Org=Sw2-Ken Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/b5f518c6ecb280a3" - }, - { - "model_class": "History", - "id": "eac9c785514fda24", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.25T19:43 WF=PAP_2017_Functional_(v8.13) Org=Sw2-Ken Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/eac9c785514fda24" - }, - { - "model_class": "History", - "id": "158de8e409e60977", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.25T19:42 WF=PAP_2017_Functional_(v8.13) Org=Sw2-Ken Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/158de8e409e60977" - }, - { - "model_class": "History", - "id": "d29a1585b1f9c2d6", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.25T19:33 WF=PAP_2017_Functional_(v8.13) Org=Sw2-Ken Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/d29a1585b1f9c2d6" - }, - { - "model_class": "History", - "id": "7a6fd925e445f610", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.25T19:30 WF=PAP_2017_Functional_(v8.13) Org=Sw2-Ken Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/7a6fd925e445f610" - }, - { - "model_class": "History", - "id": "93783a76b7f4146e", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.25T19:28 WF=PAP_2017_Functional_(v8.13) Org=Sw2-Ken Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/93783a76b7f4146e" - }, - { - "model_class": "History", - "id": "fb4175739d2d5bd1", - "deleted": false, - "annotation": null, - "purged": false, - "name": "gff3 to gb test", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/fb4175739d2d5bd1" - }, - { - "model_class": "History", - "id": "105f745862595b6e", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Genbank renamer test", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/105f745862595b6e" - }, - { - "model_class": "History", - "id": "e140823b6efc313f", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Genome Re-Opening", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/e140823b6efc313f" - }, - { - "model_class": "History", - "id": "8b79adda6c2a1a72", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Unnamed history", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/8b79adda6c2a1a72" - }, - { - "model_class": "History", - "id": "5ffa0e37ec0a8438", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=CCS Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/5ffa0e37ec0a8438" - }, - { - "model_class": "History", - "id": "269809f9fe78d1a4", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=5ww_LT2 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/269809f9fe78d1a4" - }, - { - "model_class": "History", - "id": "67b25cc840dec800", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=UDP Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/67b25cc840dec800" - }, - { - "model_class": "History", - "id": "53846dbfd02b8360", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=Sw2-Ken Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/53846dbfd02b8360" - }, - { - "model_class": "History", - "id": "2eca2b4a116fe8e3", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=Sw1_3003 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/2eca2b4a116fe8e3" - }, - { - "model_class": "History", - "id": "54088c9b3b54cfa0", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=ScaApp Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/54088c9b3b54cfa0" - }, - { - "model_class": "History", - "id": "86877d26b5bf3f90", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=ScaAbd Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/86877d26b5bf3f90" - }, - { - "model_class": "History", - "id": "b71e1c16dfc6cad0", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=SL-Ken Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/b71e1c16dfc6cad0" - }, - { - "model_class": "History", - "id": "21f72ff1143300d4", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=SCS Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/21f72ff1143300d4" - }, - { - "model_class": "History", - "id": "5b68eb5f7c1e58bb", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=SCI Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/5b68eb5f7c1e58bb" - }, - { - "model_class": "History", - "id": "0b40aba9e1e5c11b", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=Pin Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/0b40aba9e1e5c11b" - }, - { - "model_class": "History", - "id": "d027b73f9d247a0e", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=MP16 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/d027b73f9d247a0e" - }, - { - "model_class": "History", - "id": "83ee006b1614bce1", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=MIS3-3117 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/83ee006b1614bce1" - }, - { - "model_class": "History", - "id": "c6727a4e1f6d3238", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=MIS1-LT2 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/c6727a4e1f6d3238" - }, - { - "model_class": "History", - "id": "973b6b873494b5f0", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=K8 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/973b6b873494b5f0" - }, - { - "model_class": "History", - "id": "34f4bfa539c4447f", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=K7 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/34f4bfa539c4447f" - }, - { - "model_class": "History", - "id": "7b01ba94e19a8322", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=K6 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/7b01ba94e19a8322" - }, - { - "model_class": "History", - "id": "61322bdc556d6736", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=J76 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/61322bdc556d6736" - }, - { - "model_class": "History", - "id": "10ff1209005fb280", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=Inf_Still_Creek Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/10ff1209005fb280" - }, - { - "model_class": "History", - "id": "25652dce3fa24824", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=ISA Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/25652dce3fa24824" - }, - { - "model_class": "History", - "id": "9f4a53fc065036eb", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=2ww-3119 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/9f4a53fc065036eb" - }, - { - "model_class": "History", - "id": "1e722c716da063de", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T22:31 WF=findSpanin_(v4.0)_Apollo Org=Soft Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/1e722c716da063de" - }, - { - "model_class": "History", - "id": "6c624e5c54e06d3a", - "deleted": false, - "annotation": null, - "purged": false, - "name": "MIRO TESTING TWO", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/6c624e5c54e06d3a" - }, - { - "model_class": "History", - "id": "a6970312681a17ae", - "deleted": false, - "annotation": null, - "purged": false, - "name": "MIRO FINDSPANIN TEST", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/a6970312681a17ae" - }, - { - "model_class": "History", - "id": "3ee737331bd515e7", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=SCI Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/3ee737331bd515e7" - }, - { - "model_class": "History", - "id": "ac0a48aec7e6234f", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=CCS Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/ac0a48aec7e6234f" - }, - { - "model_class": "History", - "id": "2ac31ee16772b83a", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=Sw2-Np2 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/2ac31ee16772b83a" - }, - { - "model_class": "History", - "id": "28b4607651cdf7d2", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=5ww_LT2 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/28b4607651cdf7d2" - }, - { - "model_class": "History", - "id": "7ef26780fcd73ef3", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=UDP Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/7ef26780fcd73ef3" - }, - { - "model_class": "History", - "id": "afe54b830eca8bcb", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=Sw2-Ken Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/afe54b830eca8bcb" - }, - { - "model_class": "History", - "id": "f3c9e7ff397df23c", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=Sw1_3003 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/f3c9e7ff397df23c" - }, - { - "model_class": "History", - "id": "e4888fc0f4e8ff47", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=ScaApp Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/e4888fc0f4e8ff47" - }, - { - "model_class": "History", - "id": "79978dfc33ee7828", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=ScaAbd Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/79978dfc33ee7828" - }, - { - "model_class": "History", - "id": "a503844179619190", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=SL-Ken Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/a503844179619190" - }, - { - "model_class": "History", - "id": "604f2662bb4ff5e1", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=SCS Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/604f2662bb4ff5e1" - }, - { - "model_class": "History", - "id": "9e39d4587cc8228a", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=Pin Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/9e39d4587cc8228a" - }, - { - "model_class": "History", - "id": "4b16351a8e457fbb", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=MP16 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/4b16351a8e457fbb" - }, - { - "model_class": "History", - "id": "343a80c788c9c572", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=MIS3-3117 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/343a80c788c9c572" - }, - { - "model_class": "History", - "id": "83543784187442d0", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=MIS1-LT2 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/83543784187442d0" - }, - { - "model_class": "History", - "id": "cd6ad75ca24827cb", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=K8 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/cd6ad75ca24827cb" - }, - { - "model_class": "History", - "id": "85b627f496bf54b3", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=K7 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/85b627f496bf54b3" - }, - { - "model_class": "History", - "id": "1fa45c25f43edd09", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=K6 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/1fa45c25f43edd09" - }, - { - "model_class": "History", - "id": "ac8f5b8fc1cf9b81", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=J76 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/ac8f5b8fc1cf9b81" - }, - { - "model_class": "History", - "id": "9cd25ede2f295429", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=Inf_Still_Creek Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/9cd25ede2f295429" - }, - { - "model_class": "History", - "id": "b6271b8a782fb98d", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=ISA Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/b6271b8a782fb98d" - }, - { - "model_class": "History", - "id": "99e80f85405eeebc", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=2ww-3119 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/99e80f85405eeebc" - }, - { - "model_class": "History", - "id": "bc7aa5edf27ac250", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-2017.04.20T20:26 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=Soft Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/bc7aa5edf27ac250" - }, - { - "model_class": "History", - "id": "47b74a040d4ebb6e", - "deleted": false, - "annotation": null, - "purged": false, - "name": "top hits table", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/47b74a040d4ebb6e" - }, - { - "model_class": "History", - "id": "0af265d887df41b3", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Unnamed history", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/0af265d887df41b3" - }, - { - "model_class": "History", - "id": "9cb79e5fb93c4ca9", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-15:26 WF=Comparative Org=SCI Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/9cb79e5fb93c4ca9" - }, - { - "model_class": "History", - "id": "56ac823e140da6fc", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-04:59 WF=Comparative Org=CCS Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/56ac823e140da6fc" - }, - { - "model_class": "History", - "id": "b9f198ee9ba82174", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-04:59 WF=Comparative Org=5ww_LT2 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/b9f198ee9ba82174" - }, - { - "model_class": "History", - "id": "21cd8668665d811d", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-04:30 WF=Comparative Org=UDP Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/21cd8668665d811d" - }, - { - "model_class": "History", - "id": "c708480cc69e4299", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-04:30 WF=Comparative Org=Sw2-Ken Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/c708480cc69e4299" - }, - { - "model_class": "History", - "id": "3752b49b0f623651", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-04:30 WF=Comparative Org=Sw1_3003 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/3752b49b0f623651" - }, - { - "model_class": "History", - "id": "123ef0ebf30528f0", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-04:30 WF=Comparative Org=ScaApp Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/123ef0ebf30528f0" - }, - { - "model_class": "History", - "id": "3b8eccb69dee0d25", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-04:30 WF=Comparative Org=ScaAbd Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/3b8eccb69dee0d25" - }, - { - "model_class": "History", - "id": "0873edb180312abc", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-04:30 WF=Comparative Org=SL-Ken Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/0873edb180312abc" - }, - { - "model_class": "History", - "id": "b2eccc31a0c375cb", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-04:30 WF=Comparative Org=SCS Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/b2eccc31a0c375cb" - }, - { - "model_class": "History", - "id": "32f94437e18727a3", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-04:30 WF=Comparative Org=Pin Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/32f94437e18727a3" - }, - { - "model_class": "History", - "id": "d446832844d32c34", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-04:30 WF=Comparative Org=MP16 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/d446832844d32c34" - }, - { - "model_class": "History", - "id": "6e5cad771f1596ba", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-04:30 WF=Comparative Org=MIS3-3117 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/6e5cad771f1596ba" - }, - { - "model_class": "History", - "id": "c83622f61b5366c5", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-04:30 WF=Comparative Org=MIS1-LT2 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/c83622f61b5366c5" - }, - { - "model_class": "History", - "id": "3a32df1a187068a2", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-04:30 WF=Comparative Org=K8 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/3a32df1a187068a2" - }, - { - "model_class": "History", - "id": "57dfb68743c8d8fc", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-04:30 WF=Comparative Org=K7 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/57dfb68743c8d8fc" - }, - { - "model_class": "History", - "id": "f0363e6a7b9a3f3e", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-04:30 WF=Comparative Org=K6 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/f0363e6a7b9a3f3e" - }, - { - "model_class": "History", - "id": "58ac6ec08fb5dcd8", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-04:30 WF=Comparative Org=J76 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/58ac6ec08fb5dcd8" - }, - { - "model_class": "History", - "id": "75d8d61b31d8ec84", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-04:30 WF=Comparative Org=Inf_Still_Creek Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/75d8d61b31d8ec84" - }, - { - "model_class": "History", - "id": "b72b82d972c536ad", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-04:30 WF=Comparative Org=ISA Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/b72b82d972c536ad" - }, - { - "model_class": "History", - "id": "256108d350405e50", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-04:30 WF=Comparative Org=2ww-3119 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/256108d350405e50" - }, - { - "model_class": "History", - "id": "ce298bbfe78f025a", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual-04:30 WF=Comparative Org=Soft Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/ce298bbfe78f025a" - }, - { - "model_class": "History", - "id": "d8f7297ccd5a62ab", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual WF=Comparative Org=K6 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/d8f7297ccd5a62ab" - }, - { - "model_class": "History", - "id": "67ea5925a8f2cd08", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual WF=Comparative Org=J76 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/67ea5925a8f2cd08" - }, - { - "model_class": "History", - "id": "aae7fe1b5cf08684", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual WF=Comparative Org=Inf_Still_Creek Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/aae7fe1b5cf08684" - }, - { - "model_class": "History", - "id": "fad28620cf4bc6c1", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual WF=Comparative Org=ISA Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/fad28620cf4bc6c1" - }, - { - "model_class": "History", - "id": "a7abf237d8624d1e", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual WF=Comparative Org=2ww-3119 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/a7abf237d8624d1e" - }, - { - "model_class": "History", - "id": "2f8c8f3f8514e9f5", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual WF=Comparative Org=Soft Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/2f8c8f3f8514e9f5" - }, - { - "model_class": "History", - "id": "f8c0ce8eeacaa7b6", - "deleted": false, - "annotation": null, - "purged": false, - "name": "bootstrapped mauve test", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/f8c0ce8eeacaa7b6" - }, - { - "model_class": "History", - "id": "e62df2f9e67ed370", - "deleted": false, - "annotation": null, - "purged": false, - "name": "mauve test", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/e62df2f9e67ed370" - }, - { - "model_class": "History", - "id": "07ed1a60f0a40ebb", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Unnamed history", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/07ed1a60f0a40ebb" - }, - { - "model_class": "History", - "id": "efe06e0d684c1f66", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual WF=Functional Org=CCS Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/efe06e0d684c1f66" - }, - { - "model_class": "History", - "id": "bcdf7c51abe47391", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual WF=Structural Org=CCS Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/bcdf7c51abe47391" - }, - { - "model_class": "History", - "id": "68c8a4a274b2cd5a", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual WF=Structural Org=CCS Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/68c8a4a274b2cd5a" - }, - { - "model_class": "History", - "id": "83ed988086e161e4", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual WF=Structural Org=CCS Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/83ed988086e161e4" - }, - { - "model_class": "History", - "id": "2fd8459d6e88c59d", - "deleted": false, - "annotation": null, - "purged": false, - "name": "frameshift gb output", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/2fd8459d6e88c59d" - }, - { - "model_class": "History", - "id": "3096f9bc6269e0b9", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Unnamed history", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/3096f9bc6269e0b9" - }, - { - "model_class": "History", - "id": "23dd18e595df0e06", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual WF=Structural Org=5ww_LT2 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/23dd18e595df0e06" - }, - { - "model_class": "History", - "id": "e0f67c12a0c9d54e", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual WF=Structural Org=UDP Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/e0f67c12a0c9d54e" - }, - { - "model_class": "History", - "id": "9c5830539ee34866", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual WF=Structural Org=Sw2-Ken Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/9c5830539ee34866" - }, - { - "model_class": "History", - "id": "373291e82a4139a9", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual WF=Structural Org=Sw1_3003 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/373291e82a4139a9" - }, - { - "model_class": "History", - "id": "51ced18ef97dd95b", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual WF=Structural Org=ScaApp Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/51ced18ef97dd95b" - }, - { - "model_class": "History", - "id": "65fbac86fd704cee", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual WF=Structural Org=ScaAbd Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/65fbac86fd704cee" - }, - { - "model_class": "History", - "id": "a12e14cc1de0f7ab", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual WF=Structural Org=SL-Ken Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/a12e14cc1de0f7ab" - }, - { - "model_class": "History", - "id": "cd0f9b291a6be78b", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual WF=Structural Org=SCS Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/cd0f9b291a6be78b" - }, - { - "model_class": "History", - "id": "818fd517b4753f46", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual WF=Structural Org=SCI Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/818fd517b4753f46" - }, - { - "model_class": "History", - "id": "9b85c0cce22e3bed", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual WF=Structural Org=Pin Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/9b85c0cce22e3bed" - }, - { - "model_class": "History", - "id": "17573d6236909bb2", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual WF=Structural Org=MP16 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/17573d6236909bb2" - }, - { - "model_class": "History", - "id": "91ede36f0d8893db", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual WF=Structural Org=MIS3-3117 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/91ede36f0d8893db" - }, - { - "model_class": "History", - "id": "c655fe092251eeba", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual WF=Structural Org=MIS1-LT2 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/c655fe092251eeba" - }, - { - "model_class": "History", - "id": "7f57b77ab45e7181", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual WF=Structural Org=K8 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/7f57b77ab45e7181" - }, - { - "model_class": "History", - "id": "ecdf16bb243c9e90", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual WF=Structural Org=K7 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/ecdf16bb243c9e90" - }, - { - "model_class": "History", - "id": "b8882c79c2848189", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual WF=Structural Org=K6 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/b8882c79c2848189" - }, - { - "model_class": "History", - "id": "6aa74750418d213e", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual WF=Structural Org=J76 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/6aa74750418d213e" - }, - { - "model_class": "History", - "id": "b9bb5998c480663e", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual WF=Structural Org=Inf_Still_Creek Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/b9bb5998c480663e" - }, - { - "model_class": "History", - "id": "0212496cb2b99fcb", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual WF=Structural Org=ISA Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/0212496cb2b99fcb" - }, - { - "model_class": "History", - "id": "cf625716c991198b", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual WF=Structural Org=2ww-3119 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/cf625716c991198b" - }, - { - "model_class": "History", - "id": "3ac8e002d85d1958", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual WF=Structural Org=Soft Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/3ac8e002d85d1958" - }, - { - "model_class": "History", - "id": "61e841105283ee26", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual WF=Structural Org=Miro Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/61e841105283ee26" - }, - { - "model_class": "History", - "id": "f2030c6ac9140056", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Copy of 'Unnamed history' shared by elenimijalis@tamu.edu (active items only)", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/f2030c6ac9140056" - }, - { - "model_class": "History", - "id": "910b3f83b32279f4", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=1 WF=Structural Org=5ww_LT2 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/910b3f83b32279f4" - }, - { - "model_class": "History", - "id": "6204a5df7cca5c2b", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=1 WF=Structural Org=UDP Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/6204a5df7cca5c2b" - }, - { - "model_class": "History", - "id": "7fdc880aeba63cf4", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=1 WF=Structural Org=Sw2-Ken Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/7fdc880aeba63cf4" - }, - { - "model_class": "History", - "id": "3d623ace581d244b", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=1 WF=Structural Org=Sw1_3003 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/3d623ace581d244b" - }, - { - "model_class": "History", - "id": "0c96e85252dd70cd", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=1 WF=Structural Org=ScaApp Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/0c96e85252dd70cd" - }, - { - "model_class": "History", - "id": "f3d5afad478a9729", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=1 WF=Structural Org=ScaAbd Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/f3d5afad478a9729" - }, - { - "model_class": "History", - "id": "6b45db45f4c7f8b5", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=1 WF=Structural Org=SL-Ken Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/6b45db45f4c7f8b5" - }, - { - "model_class": "History", - "id": "9da242dda72e11ff", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=1 WF=Structural Org=SCS Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/9da242dda72e11ff" - }, - { - "model_class": "History", - "id": "fd86be53f39e6469", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=1 WF=Structural Org=SCI Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/fd86be53f39e6469" - }, - { - "model_class": "History", - "id": "bc55d11e2fd5e1d2", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=1 WF=Structural Org=Pin Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/bc55d11e2fd5e1d2" - }, - { - "model_class": "History", - "id": "1f2de62cb24694dd", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=1 WF=Structural Org=MP16 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/1f2de62cb24694dd" - }, - { - "model_class": "History", - "id": "cdac40f372fd2a2c", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=1 WF=Structural Org=MIS3-3117 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/cdac40f372fd2a2c" - }, - { - "model_class": "History", - "id": "c2df442a348d0dc5", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=1 WF=Structural Org=MIS1-LT2 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/c2df442a348d0dc5" - }, - { - "model_class": "History", - "id": "93499d6b5f773171", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=1 WF=Structural Org=K8 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/93499d6b5f773171" - }, - { - "model_class": "History", - "id": "65fabe68800aa3d3", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=1 WF=Structural Org=K7 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/65fabe68800aa3d3" - }, - { - "model_class": "History", - "id": "b543dbe90b68f6f9", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=1 WF=Structural Org=K6 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/b543dbe90b68f6f9" - }, - { - "model_class": "History", - "id": "d317217f2c9e7ebf", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=1 WF=Structural Org=J76 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/d317217f2c9e7ebf" - }, - { - "model_class": "History", - "id": "4def794c7cd571af", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=1 WF=Structural Org=Inf_Still_Creek Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/4def794c7cd571af" - }, - { - "model_class": "History", - "id": "a90c510a4b16564b", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=1 WF=Structural Org=ISA Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/a90c510a4b16564b" - }, - { - "model_class": "History", - "id": "e5e4ad76dc549c30", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=1 WF=Structural Org=2ww-3119 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/e5e4ad76dc549c30" - }, - { - "model_class": "History", - "id": "1aeb94ac3ad39089", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=1 WF=Structural Org=Soft Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/1aeb94ac3ad39089" - }, - { - "model_class": "History", - "id": "bf34de8add2beb43", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual WF=Structural Org=Miro Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/bf34de8add2beb43" - }, - { - "model_class": "History", - "id": "3018560f64c4f25d", - "deleted": false, - "annotation": null, - "purged": false, - "name": "AT table test", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/3018560f64c4f25d" - }, - { - "model_class": "History", - "id": "6f9bfa2611d7b50f", - "deleted": false, - "annotation": null, - "purged": false, - "name": "PSM", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/6f9bfa2611d7b50f" - }, - { - "model_class": "History", - "id": "95f1ba049727fa9e", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=Manual WF=Functional Org=5ww_LT2 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/95f1ba049727fa9e" - }, - { - "model_class": "History", - "id": "f8610ea1347e3ca0", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=11 WF=Functional Org=UDP Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/f8610ea1347e3ca0" - }, - { - "model_class": "History", - "id": "19d9f30c922986a0", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=11 WF=Functional Org=Sw2-Ken Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/19d9f30c922986a0" - }, - { - "model_class": "History", - "id": "e90412f36740b7cf", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=11 WF=Functional Org=Sw1_3003 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/e90412f36740b7cf" - }, - { - "model_class": "History", - "id": "c664b2a4a7ed14a8", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=11 WF=Functional Org=ScaApp Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/c664b2a4a7ed14a8" - }, - { - "model_class": "History", - "id": "4358cbf4c73fbbe5", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=11 WF=Functional Org=ScaAbd Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/4358cbf4c73fbbe5" - }, - { - "model_class": "History", - "id": "1333f7d2f9e9e53e", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=11 WF=Functional Org=SL-Ken Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/1333f7d2f9e9e53e" - }, - { - "model_class": "History", - "id": "f47208ec69b08018", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=11 WF=Functional Org=SCS Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/f47208ec69b08018" - }, - { - "model_class": "History", - "id": "01c638b511512faf", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=11 WF=Functional Org=SCI Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/01c638b511512faf" - }, - { - "model_class": "History", - "id": "6d5fb97b98d418c6", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=11 WF=Functional Org=Pin Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/6d5fb97b98d418c6" - }, - { - "model_class": "History", - "id": "7327c01aba3d7e48", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=11 WF=Functional Org=MP16 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/7327c01aba3d7e48" - }, - { - "model_class": "History", - "id": "55ede013e09445c6", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=11 WF=Functional Org=MIS3-3117 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/55ede013e09445c6" - }, - { - "model_class": "History", - "id": "b2bbb1895a337b5f", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=11 WF=Functional Org=MIS1-LT2 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/b2bbb1895a337b5f" - }, - { - "model_class": "History", - "id": "64023b74297c6006", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=11 WF=Functional Org=K8 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/64023b74297c6006" - }, - { - "model_class": "History", - "id": "e18012a6106c2325", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=11 WF=Functional Org=K7 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/e18012a6106c2325" - }, - { - "model_class": "History", - "id": "2797271452298ef1", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=11 WF=Functional Org=K6 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/2797271452298ef1" - }, - { - "model_class": "History", - "id": "9aa4d7515324911c", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=11 WF=Functional Org=J76 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/9aa4d7515324911c" - }, - { - "model_class": "History", - "id": "03d718cf4960ce48", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=11 WF=Functional Org=Inf_Still_Creek Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/03d718cf4960ce48" - }, - { - "model_class": "History", - "id": "940cf59e3dea3c73", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=11 WF=Functional Org=ISA Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/940cf59e3dea3c73" - }, - { - "model_class": "History", - "id": "99a6379a64edcb9f", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=11 WF=Functional Org=2ww-3119 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/99a6379a64edcb9f" - }, - { - "model_class": "History", - "id": "5732f1ca75922566", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=11 WF=Functional Org=Soft Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/5732f1ca75922566" - }, - { - "model_class": "History", - "id": "62bede63d79aa00b", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=10 WF=Functional Org=Sw1_3003 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/62bede63d79aa00b" - }, - { - "model_class": "History", - "id": "26c0c361092256bf", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=9 WF=Functional Org=UDP Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/26c0c361092256bf" - }, - { - "model_class": "History", - "id": "1e8d26b575c99f8b", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=9 WF=Functional Org=Sw2-Ken Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/1e8d26b575c99f8b" - }, - { - "model_class": "History", - "id": "b9cf432645d4884e", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=9 WF=Functional Org=Sw1_3003 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/b9cf432645d4884e" - }, - { - "model_class": "History", - "id": "735dc9a5478671fa", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=9 WF=Functional Org=ScaApp Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/735dc9a5478671fa" - }, - { - "model_class": "History", - "id": "1930805e9d59544e", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=9 WF=Functional Org=ScaAbd Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/1930805e9d59544e" - }, - { - "model_class": "History", - "id": "f33f9d1b70b92690", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=9 WF=Functional Org=SL-Ken Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/f33f9d1b70b92690" - }, - { - "model_class": "History", - "id": "83ff028f5684b799", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=9 WF=Functional Org=SCS Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/83ff028f5684b799" - }, - { - "model_class": "History", - "id": "d0f28368a2da494b", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=9 WF=Functional Org=SCI Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/d0f28368a2da494b" - }, - { - "model_class": "History", - "id": "e07e88cd042f32f4", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=9 WF=Functional Org=Pin Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/e07e88cd042f32f4" - }, - { - "model_class": "History", - "id": "ef5cdb282fab5f19", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=9 WF=Functional Org=MP16 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/ef5cdb282fab5f19" - }, - { - "model_class": "History", - "id": "96f7d0364fee9384", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=9 WF=Functional Org=MIS3-3117 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/96f7d0364fee9384" - }, - { - "model_class": "History", - "id": "95ef3413d7e7ee5b", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=9 WF=Functional Org=MIS1-LT2 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/95ef3413d7e7ee5b" - }, - { - "model_class": "History", - "id": "10f65fe385037913", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=9 WF=Functional Org=K8 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/10f65fe385037913" - }, - { - "model_class": "History", - "id": "b0fac40f72726344", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=9 WF=Functional Org=K7 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/b0fac40f72726344" - }, - { - "model_class": "History", - "id": "f8fb0fb2a1475498", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=9 WF=Functional Org=K6 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/f8fb0fb2a1475498" - }, - { - "model_class": "History", - "id": "c986d68e808d1f1b", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=9 WF=Functional Org=J76 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/c986d68e808d1f1b" - }, - { - "model_class": "History", - "id": "dd64eb6009f37788", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=9 WF=Functional Org=Inf_Still_Creek Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/dd64eb6009f37788" - }, - { - "model_class": "History", - "id": "80e3a9497d06f961", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=9 WF=Functional Org=ISA Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/80e3a9497d06f961" - }, - { - "model_class": "History", - "id": "262d732a5c8f92e0", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=9 WF=Functional Org=2ww-3119 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/262d732a5c8f92e0" - }, - { - "model_class": "History", - "id": "b1efa94c6df9872d", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=9 WF=Functional Org=Soft Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/b1efa94c6df9872d" - }, - { - "model_class": "History", - "id": "26878b6f18a648a1", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=8 WF=Functional Org=Sw1_3003 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/26878b6f18a648a1" - }, - { - "model_class": "History", - "id": "063e597a9f134f1b", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BuildID=7 WF=Functional Org=Sw1_3003 Source=Jenkins", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/063e597a9f134f1b" - }, - { - "model_class": "History", - "id": "6497f6d3325080ef", - "deleted": false, - "annotation": null, - "purged": false, - "name": "WF=Function Org=Miro Experimental=True", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/6497f6d3325080ef" - }, - { - "model_class": "History", - "id": "08453d7ae4f91dee", - "deleted": false, - "annotation": null, - "purged": false, - "name": "wig/bigwig jbrowse test", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/08453d7ae4f91dee" - }, - { - "model_class": "History", - "id": "c0c58f242817ab4f", - "deleted": false, - "annotation": null, - "purged": false, - "name": "[6] WF=Functional Org=UDP", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/c0c58f242817ab4f" - }, - { - "model_class": "History", - "id": "be1a30dcac314ef9", - "deleted": false, - "annotation": null, - "purged": false, - "name": "[6] WF=Functional Org=Sw2-Ken", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/be1a30dcac314ef9" - }, - { - "model_class": "History", - "id": "f9d1b553680d2daa", - "deleted": false, - "annotation": null, - "purged": false, - "name": "[6] WF=Functional Org=Sw1_3003", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/f9d1b553680d2daa" - }, - { - "model_class": "History", - "id": "266c965c37fb9872", - "deleted": false, - "annotation": null, - "purged": false, - "name": "[6] WF=Functional Org=ScaApp", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/266c965c37fb9872" - }, - { - "model_class": "History", - "id": "1742342ad1933233", - "deleted": false, - "annotation": null, - "purged": false, - "name": "[6] WF=Functional Org=ScaAbd", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/1742342ad1933233" - }, - { - "model_class": "History", - "id": "5b2c2bfc47f8a42d", - "deleted": false, - "annotation": null, - "purged": false, - "name": "[6] WF=Functional Org=SL-Ken", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/5b2c2bfc47f8a42d" - }, - { - "model_class": "History", - "id": "88fcf02d9841ef99", - "deleted": false, - "annotation": null, - "purged": false, - "name": "[6] WF=Functional Org=SCS", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/88fcf02d9841ef99" - }, - { - "model_class": "History", - "id": "f86313b58a0e364c", - "deleted": false, - "annotation": null, - "purged": false, - "name": "[6] WF=Functional Org=SCI", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/f86313b58a0e364c" - }, - { - "model_class": "History", - "id": "0b03913275d3a701", - "deleted": false, - "annotation": null, - "purged": false, - "name": "[6] WF=Functional Org=Pin", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/0b03913275d3a701" - }, - { - "model_class": "History", - "id": "d8d7c1232790b143", - "deleted": false, - "annotation": null, - "purged": false, - "name": "[6] WF=Functional Org=MP16", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/d8d7c1232790b143" - }, - { - "model_class": "History", - "id": "1db87be5f163c6aa", - "deleted": false, - "annotation": null, - "purged": false, - "name": "[6] WF=Functional Org=MIS3-3117", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/1db87be5f163c6aa" - }, - { - "model_class": "History", - "id": "7b3bec6eb0c3ab08", - "deleted": false, - "annotation": null, - "purged": false, - "name": "[6] WF=Functional Org=MIS1-LT2", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/7b3bec6eb0c3ab08" - }, - { - "model_class": "History", - "id": "362981f60f6a3b80", - "deleted": false, - "annotation": null, - "purged": false, - "name": "[6] WF=Functional Org=K8", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/362981f60f6a3b80" - }, - { - "model_class": "History", - "id": "b5436994a7fbe3e4", - "deleted": false, - "annotation": null, - "purged": false, - "name": "[6] WF=Functional Org=K7", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/b5436994a7fbe3e4" - }, - { - "model_class": "History", - "id": "6d933217bca4bd18", - "deleted": false, - "annotation": null, - "purged": false, - "name": "[6] WF=Functional Org=K6", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/6d933217bca4bd18" - }, - { - "model_class": "History", - "id": "804ef182efdb2822", - "deleted": false, - "annotation": null, - "purged": false, - "name": "[6] WF=Functional Org=J76", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/804ef182efdb2822" - }, - { - "model_class": "History", - "id": "5d43ed67cd565be7", - "deleted": false, - "annotation": null, - "purged": false, - "name": "[6] WF=Functional Org=Inf_Still_Creek", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/5d43ed67cd565be7" - }, - { - "model_class": "History", - "id": "465fb294798ddc5d", - "deleted": false, - "annotation": null, - "purged": false, - "name": "[6] WF=Functional Org=ISA", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/465fb294798ddc5d" - }, - { - "model_class": "History", - "id": "6c36a938c3565233", - "deleted": false, - "annotation": null, - "purged": false, - "name": "[6] WF=Functional Org=2ww-3119", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/6c36a938c3565233" - }, - { - "model_class": "History", - "id": "43968453908e0f29", - "deleted": false, - "annotation": null, - "purged": false, - "name": "[6] WF=Functional Org=Soft", - "tags": [ - "Automated", - "Annotation", - "BICH464" - ], - "published": false, - "url": "/galaxy/api/histories/43968453908e0f29" - }, - { - "model_class": "History", - "id": "d4bb3c2381636f2f", - "deleted": false, - "annotation": null, - "purged": true, - "name": "WF Auto Functional Sw1_3003", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/d4bb3c2381636f2f" - }, - { - "model_class": "History", - "id": "eeea98268b37c70c", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Load All Student Genomes", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/eeea98268b37c70c" - }, - { - "model_class": "History", - "id": "c2cdcc366a617734", - "deleted": false, - "annotation": null, - "purged": false, - "name": "blast updating part 2", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/c2cdcc366a617734" - }, - { - "model_class": "History", - "id": "af0da3458c951123", - "deleted": false, - "annotation": null, - "purged": false, - "name": "create-cacao-org", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/af0da3458c951123" - }, - { - "model_class": "History", - "id": "439ac733790e882e", - "deleted": false, - "annotation": null, - "purged": false, - "name": "blast updating", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/439ac733790e882e" - }, - { - "model_class": "History", - "id": "83a79ab994ba4779", - "deleted": false, - "annotation": null, - "purged": false, - "name": "cacao ", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/83a79ab994ba4779" - }, - { - "model_class": "History", - "id": "53bbf29400954c2b", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Apollo WF Test", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/53bbf29400954c2b" - }, - { - "model_class": "History", - "id": "1af7c8a0abcacacf", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Student results", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/1af7c8a0abcacacf" - }, - { - "model_class": "History", - "id": "33519384e33c9239", - "deleted": false, - "annotation": null, - "purged": false, - "name": "interpro", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/33519384e33c9239" - }, - { - "model_class": "History", - "id": "266295b0263333d3", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Assessment 2 Prep", - "tags": [ - "bich464" - ], - "published": false, - "url": "/galaxy/api/histories/266295b0263333d3" - }, - { - "model_class": "History", - "id": "1d459a18c4d15c47", - "deleted": false, - "annotation": null, - "purged": false, - "name": "autoreopen test", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/1d459a18c4d15c47" - }, - { - "model_class": "History", - "id": "2a9369539fbc0bef", - "deleted": false, - "annotation": null, - "purged": false, - "name": "464 Admin Assessment 1", - "tags": [ - "bich464" - ], - "published": false, - "url": "/galaxy/api/histories/2a9369539fbc0bef" - }, - { - "model_class": "History", - "id": "4cc30630043fce5e", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Unnamed history", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/4cc30630043fce5e" - }, - { - "model_class": "History", - "id": "a28cda8ef43ef58d", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Apollo Update testing", - "tags": [ - "upgrade", - "apollo", - "testing" - ], - "published": false, - "url": "/galaxy/api/histories/a28cda8ef43ef58d" - }, - { - "model_class": "History", - "id": "b1319b02d82fc6c5", - "deleted": false, - "annotation": null, - "purged": false, - "name": "PAP 2017 Functional (v8.2)", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/b1319b02d82fc6c5" - }, - { - "model_class": "History", - "id": "56a0df7321205045", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Unnamed history", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/56a0df7321205045" - }, - { - "model_class": "History", - "id": "e3468caf07fd2e66", - "deleted": false, - "annotation": null, - "purged": false, - "name": "sequencing-2016-11", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/e3468caf07fd2e66" - }, - { - "model_class": "History", - "id": "136faa85189a6d61", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Unnamed history", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/136faa85189a6d61" - }, - { - "model_class": "History", - "id": "a896d2e5ae3b9e53", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Unnamed history", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/a896d2e5ae3b9e53" - }, - { - "model_class": "History", - "id": "bf7343d019b110fb", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Unnamed history", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/bf7343d019b110fb" - }, - { - "model_class": "History", - "id": "3ca13833bb16ca66", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Unnamed history", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/3ca13833bb16ca66" - }, - { - "model_class": "History", - "id": "3d3d5c9e66005bde", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Unnamed history", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/3d3d5c9e66005bde" - }, - { - "model_class": "History", - "id": "03f1669a8542954f", - "deleted": false, - "annotation": null, - "purged": false, - "name": "imported: 160808 GenomeA history ", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/03f1669a8542954f" - }, - { - "model_class": "History", - "id": "02d76593d8a2888d", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Unnamed history", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/02d76593d8a2888d" - }, - { - "model_class": "History", - "id": "6e65dc31461a2618", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Unnamed history", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/6e65dc31461a2618" - }, - { - "model_class": "History", - "id": "3995a172f4b21975", - "deleted": false, - "annotation": null, - "purged": false, - "name": "imported: 160808 GenomeA history ", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/3995a172f4b21975" - }, - { - "model_class": "History", - "id": "45acf9ab2b3bd80a", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Unnamed history", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/45acf9ab2b3bd80a" - }, - { - "model_class": "History", - "id": "023ff7f32c39d51e", - "deleted": false, - "annotation": null, - "purged": false, - "name": "PAP 2017 Structural Testing", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/023ff7f32c39d51e" - }, - { - "model_class": "History", - "id": "2087e32aab312721", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Unnamed history", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/2087e32aab312721" - }, - { - "model_class": "History", - "id": "1b9d1cbf11f65e2c", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Quiz Testing", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/1b9d1cbf11f65e2c" - }, - { - "model_class": "History", - "id": "0fd74ecdab3bbed6", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Unnamed history", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/0fd74ecdab3bbed6" - }, - { - "model_class": "History", - "id": "13f440b12b900c01", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Irina Phage Mu", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/13f440b12b900c01" - }, - { - "model_class": "History", - "id": "ee31dea84ad6831a", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Unnamed history", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/ee31dea84ad6831a" - }, - { - "model_class": "History", - "id": "86ab9c74a2db1097", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Copy of 'TChen' shared by dar78@pitt.edu (active items only)", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/86ab9c74a2db1097" - }, - { - "model_class": "History", - "id": "df6c635c49617c19", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Unnamed history", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/df6c635c49617c19" - }, - { - "model_class": "History", - "id": "965b8ef98ab665a4", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Unnamed history", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/965b8ef98ab665a4" - }, - { - "model_class": "History", - "id": "9f37e52786bd5c22", - "deleted": false, - "annotation": null, - "purged": false, - "name": "GenomeA QC Test", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/9f37e52786bd5c22" - }, - { - "model_class": "History", - "id": "f561fd22344af085", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Unnamed history", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/f561fd22344af085" - }, - { - "model_class": "History", - "id": "cf5e7db80aaaae1c", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Unnamed history", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/cf5e7db80aaaae1c" - }, - { - "model_class": "History", - "id": "d7a5de8a3e1c240e", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Unnamed history", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/d7a5de8a3e1c240e" - }, - { - "model_class": "History", - "id": "04068fee1ab8feef", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Unnamed history", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/04068fee1ab8feef" - }, - { - "model_class": "History", - "id": "c2dddfa04528a37b", - "deleted": false, - "annotation": null, - "purged": false, - "name": "MATC58", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/c2dddfa04528a37b" - }, - { - "model_class": "History", - "id": "e6a93b2e8bd25082", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Unnamed history", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/e6a93b2e8bd25082" - }, - { - "model_class": "History", - "id": "584949077ba8a48e", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Anton's HIV Example", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/584949077ba8a48e" - }, - { - "model_class": "History", - "id": "793b09978cf49942", - "deleted": false, - "annotation": null, - "purged": false, - "name": "CbK progressiveMauve", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/793b09978cf49942" - }, - { - "model_class": "History", - "id": "ab449ddea0ae5d97", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Unnamed history", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/ab449ddea0ae5d97" - }, - { - "model_class": "History", - "id": "f1179904acf057c6", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Unnamed history", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/f1179904acf057c6" - }, - { - "model_class": "History", - "id": "e47656a53e31a1f5", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BceTMilo", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/e47656a53e31a1f5" - }, - { - "model_class": "History", - "id": "7aa999316c7d11d3", - "deleted": false, - "annotation": null, - "purged": false, - "name": "circos test", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/7aa999316c7d11d3" - }, - { - "model_class": "History", - "id": "c41d6158fddbdfe2", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Unnamed history", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/c41d6158fddbdfe2" - }, - { - "model_class": "History", - "id": "b3b49e4879a46684", - "deleted": false, - "annotation": null, - "purged": false, - "name": "PAP testing", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/b3b49e4879a46684" - }, - { - "model_class": "History", - "id": "adc947cd4be019f3", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Unnamed history", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/adc947cd4be019f3" - }, - { - "model_class": "History", - "id": "b96fc4841c810cf6", - "deleted": false, - "annotation": null, - "purged": false, - "name": "pap functional fixes", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/b96fc4841c810cf6" - }, - { - "model_class": "History", - "id": "18d4026186431b36", - "deleted": false, - "annotation": null, - "purged": false, - "name": "LSO Phage 2", - "tags": [ - "lso", - "rfy", - "cfg" - ], - "published": false, - "url": "/galaxy/api/histories/18d4026186431b36" - }, - { - "model_class": "History", - "id": "c7ec0c1de6d2ddc1", - "deleted": false, - "annotation": null, - "purged": false, - "name": "LSO Phage 1", - "tags": [ - "lso", - "rfy", - "cfg" - ], - "published": false, - "url": "/galaxy/api/histories/c7ec0c1de6d2ddc1" - }, - { - "model_class": "History", - "id": "07014a01820cebf1", - "deleted": false, - "annotation": null, - "purged": false, - "name": "p4 issue", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/07014a01820cebf1" - }, - { - "model_class": "History", - "id": "744be2b4df7d7fcb", - "deleted": false, - "annotation": null, - "purged": false, - "name": "jmc-all-proteins", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/744be2b4df7d7fcb" - }, - { - "model_class": "History", - "id": "35f569c7d25616d4", - "deleted": false, - "annotation": null, - "purged": false, - "name": "intron finder", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/35f569c7d25616d4" - }, - { - "model_class": "History", - "id": "454b5bf20d3a2249", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Unnamed history", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/454b5bf20d3a2249" - }, - { - "model_class": "History", - "id": "bcc880c3e1f61eb3", - "deleted": false, - "annotation": null, - "purged": false, - "name": "findSpanin - T2_Chi_KPatil", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/bcc880c3e1f61eb3" - }, - { - "model_class": "History", - "id": "94d1ced4656872bf", - "deleted": false, - "annotation": null, - "purged": false, - "name": "findSpanin - Seifer_phi60C_ASalazar", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/94d1ced4656872bf" - }, - { - "model_class": "History", - "id": "22c90e50782e734f", - "deleted": false, - "annotation": null, - "purged": false, - "name": "findSpanin - Season15_SCrosby", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/22c90e50782e734f" - }, - { - "model_class": "History", - "id": "9ba61bd940377451", - "deleted": false, - "annotation": null, - "purged": false, - "name": "findSpanin - Sazh_WCrossland", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/9ba61bd940377451" - }, - { - "model_class": "History", - "id": "7ea43ce6ecbabfa1", - "deleted": false, - "annotation": null, - "purged": false, - "name": "findSpanin - P-NIH12_RRichardson", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/7ea43ce6ecbabfa1" - }, - { - "model_class": "History", - "id": "25792331bca74fb4", - "deleted": false, - "annotation": null, - "purged": false, - "name": "findSpanin - P-NIH10_LMin", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/25792331bca74fb4" - }, - { - "model_class": "History", - "id": "9e653b7f5f5702a6", - "deleted": false, - "annotation": null, - "purged": false, - "name": "findSpanin - Mijalis_SParvateneni", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/9e653b7f5f5702a6" - }, - { - "model_class": "History", - "id": "95e85f0f1f290936", - "deleted": false, - "annotation": null, - "purged": false, - "name": "findSpanin - Maroon_JMcDermott", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/95e85f0f1f290936" - }, - { - "model_class": "History", - "id": "07ce6b6bc07f4a38", - "deleted": false, - "annotation": null, - "purged": false, - "name": "findSpanin - Maleficent_HWright", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/07ce6b6bc07f4a38" - }, - { - "model_class": "History", - "id": "7ab07da33d2a5538", - "deleted": false, - "annotation": null, - "purged": false, - "name": "findSpanin - LL2-1_RRangan", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/7ab07da33d2a5538" - }, - { - "model_class": "History", - "id": "572d55bf3f9fdb80", - "deleted": false, - "annotation": null, - "purged": false, - "name": "findSpanin - LL11_MTheodore", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/572d55bf3f9fdb80" - }, - { - "model_class": "History", - "id": "0e0d5bf92b8b0ac3", - "deleted": false, - "annotation": null, - "purged": false, - "name": "findSpanin - H3_AMaruffo", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/0e0d5bf92b8b0ac3" - }, - { - "model_class": "History", - "id": "a6f6c67c03022824", - "deleted": false, - "annotation": null, - "purged": false, - "name": "findSpanin - E3_SHartman", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/a6f6c67c03022824" - }, - { - "model_class": "History", - "id": "1fda1abc5d39191f", - "deleted": false, - "annotation": null, - "purged": false, - "name": "findSpanin - E2_JChamblee", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/1fda1abc5d39191f" - }, - { - "model_class": "History", - "id": "0affbc36d2ae5bcc", - "deleted": false, - "annotation": null, - "purged": false, - "name": "findSpanin - DUC8_JTran", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/0affbc36d2ae5bcc" - }, - { - "model_class": "History", - "id": "91ce7c82a2c6fcfb", - "deleted": false, - "annotation": null, - "purged": false, - "name": "findSpanin - DUC4_TBourgeois", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/91ce7c82a2c6fcfb" - }, - { - "model_class": "History", - "id": "5b446ee938854d9d", - "deleted": false, - "annotation": null, - "purged": false, - "name": "findSpanin - DUC3_BJones", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/5b446ee938854d9d" - }, - { - "model_class": "History", - "id": "a850a8087522a461", - "deleted": false, - "annotation": null, - "purged": false, - "name": "findSpanin - 59S1C_JPowell", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/a850a8087522a461" - }, - { - "model_class": "History", - "id": "addfb3f0c2ec4e23", - "deleted": false, - "annotation": null, - "purged": false, - "name": "annotation table test", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/addfb3f0c2ec4e23" - }, - { - "model_class": "History", - "id": "1a9ee1d5aa3ae5da", - "deleted": false, - "annotation": null, - "purged": false, - "name": "wf E test with terminators Maruffo", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/1a9ee1d5aa3ae5da" - }, - { - "model_class": "History", - "id": "857750ee27fd3f41", - "deleted": false, - "annotation": null, - "purged": false, - "name": "gff3 to genbank test + mapper", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/857750ee27fd3f41" - }, - { - "model_class": "History", - "id": "93841f8d792efd0b", - "deleted": false, - "annotation": null, - "purged": false, - "name": "T2_Chi_KPatil", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/93841f8d792efd0b" - }, - { - "model_class": "History", - "id": "8fdbc96e1458a742", - "deleted": false, - "annotation": null, - "purged": false, - "name": "T2_Chi_KPatil", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/8fdbc96e1458a742" - }, - { - "model_class": "History", - "id": "a7ba1fd0d2d70fc1", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Seifer_phi60C_ASalazar", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/a7ba1fd0d2d70fc1" - }, - { - "model_class": "History", - "id": "c4c84a6c29c828af", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Season15_SCrosby", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/c4c84a6c29c828af" - }, - { - "model_class": "History", - "id": "a83a3e2d34e98b42", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Sazh_WCrossland", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/a83a3e2d34e98b42" - }, - { - "model_class": "History", - "id": "407e338deb7cbbf1", - "deleted": false, - "annotation": null, - "purged": false, - "name": "P-NIH12_RRichardson", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/407e338deb7cbbf1" - }, - { - "model_class": "History", - "id": "2490fd95b2ef8626", - "deleted": false, - "annotation": null, - "purged": false, - "name": "P-NIH10_LMin", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/2490fd95b2ef8626" - }, - { - "model_class": "History", - "id": "0706038fbab1a0d2", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Mijalis_SParvateneni", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/0706038fbab1a0d2" - }, - { - "model_class": "History", - "id": "dce482f9678768e6", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Maroon_JMcDermott", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/dce482f9678768e6" - }, - { - "model_class": "History", - "id": "ff932b016ad9e994", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Maleficent_HWright", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/ff932b016ad9e994" - }, - { - "model_class": "History", - "id": "3738353794da1b85", - "deleted": false, - "annotation": null, - "purged": false, - "name": "LL2-1_RRangan", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/3738353794da1b85" - }, - { - "model_class": "History", - "id": "c7784c34144ac7d5", - "deleted": false, - "annotation": null, - "purged": false, - "name": "LL11_MTheodore", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/c7784c34144ac7d5" - }, - { - "model_class": "History", - "id": "8175f1166cd33249", - "deleted": false, - "annotation": null, - "purged": false, - "name": "H3_AMaruffo", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/8175f1166cd33249" - }, - { - "model_class": "History", - "id": "2b890fa385047885", - "deleted": false, - "annotation": null, - "purged": false, - "name": "H3_AMaruffo", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/2b890fa385047885" - }, - { - "model_class": "History", - "id": "bf915c98934ee295", - "deleted": false, - "annotation": null, - "purged": false, - "name": "E2_JChamblee", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/bf915c98934ee295" - }, - { - "model_class": "History", - "id": "7d3af32870a21281", - "deleted": false, - "annotation": null, - "purged": false, - "name": "DUC8_JTran", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/7d3af32870a21281" - }, - { - "model_class": "History", - "id": "6607adfbda6c5c14", - "deleted": false, - "annotation": null, - "purged": false, - "name": "DUC4_TBourgeois", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/6607adfbda6c5c14" - }, - { - "model_class": "History", - "id": "e30ee2a5b6844b48", - "deleted": false, - "annotation": null, - "purged": false, - "name": "DUC3_BJones", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/e30ee2a5b6844b48" - }, - { - "model_class": "History", - "id": "e7817af735ec0810", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Unnamed history", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/e7817af735ec0810" - }, - { - "model_class": "History", - "id": "31d8f017a64a3645", - "deleted": false, - "annotation": null, - "purged": false, - "name": "testing protein composition workflow", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/31d8f017a64a3645" - }, - { - "model_class": "History", - "id": "9e99522ab34c3437", - "deleted": false, - "annotation": null, - "purged": false, - "name": "LipoRy-GFF v2", - "tags": [ - "PAP2016", - "464", - "bich464", - "annotation", - "workflows" - ], - "published": false, - "url": "/galaxy/api/histories/9e99522ab34c3437" - }, - { - "model_class": "History", - "id": "e22e7ebca95a9d8c", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BICH464 PAP 2016 Part D Testing - P4_KBonasera", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/e22e7ebca95a9d8c" - }, - { - "model_class": "History", - "id": "635ce7a85ba874e7", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Workflow D Testing", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/635ce7a85ba874e7" - }, - { - "model_class": "History", - "id": "a1bca0292d69247a", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Unnamed history", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/a1bca0292d69247a" - }, - { - "model_class": "History", - "id": "82ef6916d0c42a74", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Workflow D testing", - "tags": [ - "PAP2016", - "464", - "bich464", - "annotation", - "workflows" - ], - "published": false, - "url": "/galaxy/api/histories/82ef6916d0c42a74" - }, - { - "model_class": "History", - "id": "c9ac6523cc0bd501", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Miro Upload", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/c9ac6523cc0bd501" - }, - { - "model_class": "History", - "id": "82271cd9a04d840e", - "deleted": false, - "annotation": null, - "purged": false, - "name": "PSU Presentation - C01 Example", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/82271cd9a04d840e" - }, - { - "model_class": "History", - "id": "b9af15fdcdc17b29", - "deleted": false, - "annotation": null, - "purged": false, - "name": "imported: Sazh annotation", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/b9af15fdcdc17b29" - }, - { - "model_class": "History", - "id": "d9cc330379434b58", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Sequencing Data 2016-02-26", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/d9cc330379434b58" - }, - { - "model_class": "History", - "id": "ae968ec8f1c1e8d8", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BICH464 PAP 2016 Part C - Functional Prediction + WA", - "tags": [ - "PAP", - "bich464", - "testing" - ], - "published": false, - "url": "/galaxy/api/histories/ae968ec8f1c1e8d8" - }, - { - "model_class": "History", - "id": "c96f28398eba7717", - "deleted": false, - "annotation": null, - "purged": false, - "name": "C01 Testing", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/c96f28398eba7717" - }, - { - "model_class": "History", - "id": "2d9849223255fe5d", - "deleted": false, - "annotation": null, - "purged": false, - "name": "blast2sam test", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/2d9849223255fe5d" - }, - { - "model_class": "History", - "id": "98bd98144944b03a", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BICH464 - C01 Evaluate", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/98bd98144944b03a" - }, - { - "model_class": "History", - "id": "d7db5ad159562bb8", - "deleted": false, - "annotation": null, - "purged": false, - "name": "phi29 ogs", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/d7db5ad159562bb8" - }, - { - "model_class": "History", - "id": "99df8d44fd19519b", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BICH 464 PAP 2016 v2", - "tags": [ - "PAP", - "bich464", - "testing" - ], - "published": false, - "url": "/galaxy/api/histories/99df8d44fd19519b" - }, - { - "model_class": "History", - "id": "4be97571ded1f0c8", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Intron Finder Test", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/4be97571ded1f0c8" - }, - { - "model_class": "History", - "id": "a7515a52057cdae8", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BICH 464 PAP 2016", - "tags": [ - "PAP", - "bich464", - "testing" - ], - "published": false, - "url": "/galaxy/api/histories/a7515a52057cdae8" - }, - { - "model_class": "History", - "id": "40b42d385d7d3ac0", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Gene Calling for C Lab", - "tags": [ - "testing", - "docs", - "bich464" - ], - "published": false, - "url": "/galaxy/api/histories/40b42d385d7d3ac0" - }, - { - "model_class": "History", - "id": "8c2b9cdf81cd9920", - "deleted": false, - "annotation": null, - "purged": false, - "name": "WebApollo Credentials", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/8c2b9cdf81cd9920" - }, - { - "model_class": "History", - "id": "f573d93a67a5c279", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BICH464 Exercise & Results", - "tags": [ - "students", - "bich464" - ], - "published": false, - "url": "/galaxy/api/histories/f573d93a67a5c279" - }, - { - "model_class": "History", - "id": "f59923c6bdb7cb02", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BICH464 PAP 2016 Part A - WA Test", - "tags": [ - "testing", - "PAP2016", - "bich464" - ], - "published": false, - "url": "/galaxy/api/histories/f59923c6bdb7cb02" - }, - { - "model_class": "History", - "id": "7de5c18289c84abd", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Copy of 'GenomeA 1625-15' shared by 'ryland@tamu.edu' (active items only)", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/7de5c18289c84abd" - }, - { - "model_class": "History", - "id": "5e169c7523ae0fe6", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Copy of 'PAP of Mt0425' shared by 'ryland@tamu.edu' (active items only)", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/5e169c7523ae0fe6" - }, - { - "model_class": "History", - "id": "9c055c90dbb17927", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Contig Closure Assessment", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/9c055c90dbb17927" - }, - { - "model_class": "History", - "id": "6c731b5c41f33f2c", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Filter/Join Fasta Files", - "tags": [], - "published": true, - "url": "/galaxy/api/histories/6c731b5c41f33f2c" - }, - { - "model_class": "History", - "id": "c2f3c04dcb00f8e9", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Spanin Bioinfo", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/c2f3c04dcb00f8e9" - }, - { - "model_class": "History", - "id": "8d54e6226402f60c", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Apollo Export Test", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/8d54e6226402f60c" - }, - { - "model_class": "History", - "id": "1d30a2931a672a25", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Reprof", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/1d30a2931a672a25" - }, - { - "model_class": "History", - "id": "ff8a8cd6850df824", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Copy of 'EX: GenomeA QC Pipeline'", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/ff8a8cd6850df824" - }, - { - "model_class": "History", - "id": "3d8c7c3dfdc7f054", - "deleted": false, - "annotation": null, - "purged": false, - "name": "EX: GenomeA QC Pipeline", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/3d8c7c3dfdc7f054" - }, - { - "model_class": "History", - "id": "bae0e0ba420a9e92", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Copy of 'Mid1 July 2015 Illumina' ' shared by 'adrianacarolina@tamu.edu' (active items only)", - "tags": [ - "sequencing", - "assembly", - "spades", - "illumina" - ], - "published": false, - "url": "/galaxy/api/histories/bae0e0ba420a9e92" - }, - { - "model_class": "History", - "id": "7e846684b8d472a4", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Copy of 'imported: Illumina FASTQ data' shared by 'seasonxie@tamu.edu' (active items only)", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/7e846684b8d472a4" - }, - { - "model_class": "History", - "id": "20e6250b58322eab", - "deleted": false, - "annotation": null, - "purged": false, - "name": "PhageK crap", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/20e6250b58322eab" - }, - { - "model_class": "History", - "id": "93d9861ca6d71e62", - "deleted": false, - "annotation": null, - "purged": false, - "name": "In-silico ligation ssRNA phage TMDs", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/93d9861ca6d71e62" - }, - { - "model_class": "History", - "id": "cda67f355f9798e9", - "deleted": false, - "annotation": null, - "purged": false, - "name": "ssRNA phage TMD processing", - "tags": [ - "tmds", - "ssrna-phages" - ], - "published": false, - "url": "/galaxy/api/histories/cda67f355f9798e9" - }, - { - "model_class": "History", - "id": "cd360eebc4d9b3b2", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Display GBK in JBrowse", - "tags": [], - "published": true, - "url": "/galaxy/api/histories/cd360eebc4d9b3b2" - }, - { - "model_class": "History", - "id": "491f1d348001df48", - "deleted": false, - "annotation": null, - "purged": false, - "name": "ssRNA phage TMD predictions", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/491f1d348001df48" - }, - { - "model_class": "History", - "id": "5f801db8e3010d55", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Copy of 'Wang ssRNA phage analysis' shared by 'ryland@tamu.edu' (active items only)", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/5f801db8e3010d55" - }, - { - "model_class": "History", - "id": "d400d0b3f39c777b", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Introns", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/d400d0b3f39c777b" - }, - { - "model_class": "History", - "id": "272c3a6716a1aad2", - "deleted": false, - "annotation": null, - "purged": false, - "name": "PSMv4 Collections Test", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/272c3a6716a1aad2" - }, - { - "model_class": "History", - "id": "b57365666d1d8859", - "deleted": false, - "annotation": null, - "purged": false, - "name": "imported: Brevundimonas phages", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/b57365666d1d8859" - }, - { - "model_class": "History", - "id": "dde420df3ca81731", - "deleted": false, - "annotation": null, - "purged": false, - "name": "PhageQC NC_006548", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/dde420df3ca81731" - }, - { - "model_class": "History", - "id": "1d8b4124b0d5d4b1", - "deleted": false, - "annotation": null, - "purged": false, - "name": "ShineFind v1.4", - "tags": [], - "published": true, - "url": "/galaxy/api/histories/1d8b4124b0d5d4b1" - }, - { - "model_class": "History", - "id": "010073fe2e14e779", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Blast Genome Subsetting", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/010073fe2e14e779" - }, - { - "model_class": "History", - "id": "f721706e15b750c5", - "deleted": false, - "annotation": null, - "purged": false, - "name": "imported: Mutation detection-XF15.11", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/f721706e15b750c5" - }, - { - "model_class": "History", - "id": "e57d3aba52dda63b", - "deleted": false, - "annotation": null, - "purged": false, - "name": "imported: 2015 Illumina FASTQ data", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/e57d3aba52dda63b" - }, - { - "model_class": "History", - "id": "ebca709eaad3e3a6", - "deleted": false, - "annotation": null, - "purged": false, - "name": "imported: July 2015 Illumina", - "tags": [ - "sequencing", - "spades", - "assembly", - "illumina" - ], - "published": false, - "url": "/galaxy/api/histories/ebca709eaad3e3a6" - }, - { - "model_class": "History", - "id": "6aba2ce8b6170292", - "deleted": false, - "annotation": null, - "purged": false, - "name": "XMFA in JBrowse", - "tags": [ - "comparative", - "xmfa" - ], - "published": true, - "url": "/galaxy/api/histories/6aba2ce8b6170292" - }, - { - "model_class": "History", - "id": "9436359fe01fdc49", - "deleted": false, - "annotation": null, - "purged": false, - "name": "PAUSE3", - "tags": [], - "published": true, - "url": "/galaxy/api/histories/9436359fe01fdc49" - }, - { - "model_class": "History", - "id": "e49027515eece44f", - "deleted": false, - "annotation": null, - "purged": false, - "name": "imported: July 2015 Illumina", - "tags": [ - "sequencing", - "spades", - "assembly", - "illumina" - ], - "published": false, - "url": "/galaxy/api/histories/e49027515eece44f" - }, - { - "model_class": "History", - "id": "1f1f0ecaab9c3009", - "deleted": false, - "annotation": null, - "purged": false, - "name": "July 2015 Illumina", - "tags": [ - "sequencing", - "illumina" - ], - "published": false, - "url": "/galaxy/api/histories/1f1f0ecaab9c3009" - }, - { - "model_class": "History", - "id": "90af107e563bc454", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Intein Detection", - "tags": [ - "jbrowse", - "phage", - "intein" - ], - "published": false, - "url": "/galaxy/api/histories/90af107e563bc454" - }, - { - "model_class": "History", - "id": "cc7bbdc725e62eed", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Miro Reannotation", - "tags": [ - "jbrowse", - "phage", - "annotation" - ], - "published": false, - "url": "/galaxy/api/histories/cc7bbdc725e62eed" - }, - { - "model_class": "History", - "id": "715e1e988641b142", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Sequence Logo", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/715e1e988641b142" - }, - { - "model_class": "History", - "id": "768c5ac13eccb0d2", - "deleted": false, - "annotation": null, - "purged": false, - "name": "CRISPR Analysis", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/768c5ac13eccb0d2" - }, - { - "model_class": "History", - "id": "283191700e3a07cd", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Genbank Metadata Extraction", - "tags": [], - "published": true, - "url": "/galaxy/api/histories/283191700e3a07cd" - }, - { - "model_class": "History", - "id": "0854051858a133aa", - "deleted": false, - "annotation": null, - "purged": false, - "name": "EX: Virtual DNA sequence digests", - "tags": [], - "published": true, - "url": "/galaxy/api/histories/0854051858a133aa" - }, - { - "model_class": "History", - "id": "f7f89d0ace8ef8be", - "deleted": false, - "annotation": null, - "purged": false, - "name": "EX-Clustal History", - "tags": [], - "published": true, - "url": "/galaxy/api/histories/f7f89d0ace8ef8be" - }, - { - "model_class": "History", - "id": "91ddd4075de2505f", - "deleted": false, - "annotation": null, - "purged": false, - "name": "Fralick Assemblies", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/91ddd4075de2505f" - }, - { - "model_class": "History", - "id": "0c4b6de231621c18", - "deleted": false, - "annotation": null, - "purged": false, - "name": "GSAF Data 2014-12", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/0c4b6de231621c18" - }, - { - "model_class": "History", - "id": "b63c4eef5ca1b8f4", - "deleted": false, - "annotation": null, - "purged": false, - "name": "PacBio - GE1", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/b63c4eef5ca1b8f4" - }, - { - "model_class": "History", - "id": "1e5156744eaaa3a6", - "deleted": false, - "annotation": null, - "purged": false, - "name": "PacBio", - "tags": [], - "published": true, - "url": "/galaxy/api/histories/1e5156744eaaa3a6" - }, - { - "model_class": "History", - "id": "e1621e7945e1c84d", - "deleted": false, - "annotation": null, - "purged": false, - "name": "imported: 04/01/14", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/e1621e7945e1c84d" - }, - { - "model_class": "History", - "id": "523ebe1a4c4e6e74", - "deleted": false, - "annotation": null, - "purged": false, - "name": "BICH464-2014 Host Start/Stop Codons", - "tags": [], - "published": true, - "url": "/galaxy/api/histories/523ebe1a4c4e6e74" - }, - { - "model_class": "History", - "id": "6b188bb407694a42", - "deleted": false, - "annotation": null, - "purged": false, - "name": "RNA Seq Project with JBerry", - "tags": [], - "published": false, - "url": "/galaxy/api/histories/6b188bb407694a42" - } -] From ea5ae5b8ba0fb5f438dc3710126563af43981cbe Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Tue, 2 May 2017 21:32:04 +0000 Subject: [PATCH 20/80] first stab --- README.rst | 2 +- parsec/commands/config/get_config.py | 2 +- parsec/commands/datasets/download_dataset.py | 2 +- parsec/commands/datasets/show_dataset.py | 2 +- parsec/commands/datasets/show_stderr.py | 2 +- parsec/commands/datasets/show_stdout.py | 2 +- parsec/commands/datatypes/get_datatypes.py | 2 +- parsec/commands/datatypes/get_sniffers.py | 2 +- parsec/commands/folders/delete_folder.py | 2 +- parsec/commands/folders/show_folder.py | 2 +- parsec/commands/forms/create_form.py | 2 +- parsec/commands/forms/get_forms.py | 2 +- parsec/commands/forms/show_form.py | 2 +- parsec/commands/ftpfiles/get_ftp_files.py | 2 +- parsec/commands/genomes/get_genomes.py | 2 +- parsec/commands/genomes/install_genome.py | 2 +- parsec/commands/genomes/show_genome.py | 2 +- parsec/commands/groups/add_group_role.py | 2 +- parsec/commands/groups/add_group_user.py | 2 +- parsec/commands/groups/create_group.py | 2 +- parsec/commands/groups/delete_group_role.py | 2 +- parsec/commands/groups/delete_group_user.py | 2 +- parsec/commands/groups/get_group_roles.py | 2 +- parsec/commands/groups/get_group_users.py | 2 +- parsec/commands/groups/get_groups.py | 2 +- parsec/commands/groups/show_group.py | 2 +- parsec/commands/groups/update_group.py | 2 +- .../histories/create_dataset_collection.py | 2 +- parsec/commands/histories/create_history.py | 2 +- .../commands/histories/create_history_tag.py | 2 +- parsec/commands/histories/delete_dataset.py | 2 +- .../histories/delete_dataset_collection.py | 2 +- parsec/commands/histories/delete_history.py | 2 +- parsec/commands/histories/download_dataset.py | 2 +- parsec/commands/histories/download_history.py | 2 +- parsec/commands/histories/export_history.py | 2 +- .../commands/histories/get_current_history.py | 2 +- parsec/commands/histories/get_histories.py | 2 +- .../get_most_recently_used_history.py | 2 +- parsec/commands/histories/get_status.py | 2 +- parsec/commands/histories/show_dataset.py | 2 +- .../histories/show_dataset_collection.py | 2 +- .../histories/show_dataset_provenance.py | 2 +- parsec/commands/histories/show_history.py | 2 +- .../histories/show_matching_datasets.py | 2 +- parsec/commands/histories/undelete_history.py | 2 +- parsec/commands/histories/update_dataset.py | 30 ++++++------ .../histories/update_dataset_collection.py | 16 +++---- parsec/commands/histories/update_history.py | 46 +++++++++---------- .../histories/upload_dataset_from_library.py | 2 +- parsec/commands/jobs/get_jobs.py | 2 +- parsec/commands/jobs/get_state.py | 2 +- parsec/commands/jobs/search_jobs.py | 4 +- parsec/commands/jobs/show_job.py | 2 +- .../commands/libraries/copy_from_dataset.py | 2 +- parsec/commands/libraries/create_folder.py | 2 +- parsec/commands/libraries/create_library.py | 2 +- parsec/commands/libraries/delete_library.py | 2 +- .../libraries/delete_library_dataset.py | 2 +- parsec/commands/libraries/get_folders.py | 2 +- parsec/commands/libraries/get_libraries.py | 2 +- .../libraries/get_library_permissions.py | 2 +- .../libraries/set_library_permissions.py | 2 +- parsec/commands/libraries/show_dataset.py | 2 +- parsec/commands/libraries/show_folder.py | 2 +- parsec/commands/libraries/show_library.py | 2 +- .../libraries/upload_file_contents.py | 2 +- .../libraries/upload_file_from_local_path.py | 2 +- .../libraries/upload_file_from_server.py | 2 +- .../libraries/upload_file_from_url.py | 2 +- .../upload_from_galaxy_filesystem.py | 2 +- parsec/commands/quotas/get_quotas.py | 2 +- parsec/commands/quotas/show_quota.py | 2 +- parsec/commands/roles/get_roles.py | 2 +- parsec/commands/roles/show_role.py | 2 +- .../commands/tool_data/delete_data_table.py | 2 +- parsec/commands/tool_data/get_data_tables.py | 2 +- .../commands/tool_data/reload_data_table.py | 2 +- parsec/commands/tool_data/show_data_table.py | 2 +- parsec/commands/tools/get_tool_panel.py | 2 +- parsec/commands/tools/get_tools.py | 2 +- parsec/commands/tools/install_dependencies.py | 2 +- parsec/commands/tools/paste_content.py | 2 +- parsec/commands/tools/put_url.py | 2 +- parsec/commands/tools/run_tool.py | 4 +- parsec/commands/tools/show_tool.py | 2 +- parsec/commands/tools/upload_file.py | 26 +++++------ parsec/commands/tools/upload_from_ftp.py | 2 +- parsec/commands/toolshed/get_repositories.py | 2 +- .../toolshed/install_repository_revision.py | 2 +- parsec/commands/toolshed/show_repository.py | 2 +- parsec/commands/users/create_local_user.py | 2 +- parsec/commands/users/create_remote_user.py | 2 +- parsec/commands/users/create_user_apikey.py | 2 +- parsec/commands/users/delete_user.py | 2 +- parsec/commands/users/get_current_user.py | 2 +- parsec/commands/users/get_users.py | 2 +- parsec/commands/users/show_user.py | 2 +- parsec/commands/visual/get_visualizations.py | 2 +- parsec/commands/visual/show_visualization.py | 2 +- .../commands/workflows/cancel_invocation.py | 2 +- parsec/commands/workflows/delete_workflow.py | 2 +- .../workflows/export_workflow_dict.py | 2 +- .../workflows/export_workflow_json.py | 2 +- .../export_workflow_to_local_path.py | 2 +- parsec/commands/workflows/get_invocations.py | 2 +- .../commands/workflows/get_workflow_inputs.py | 2 +- parsec/commands/workflows/get_workflows.py | 2 +- .../workflows/import_shared_workflow.py | 2 +- .../workflows/import_workflow_dict.py | 4 +- .../import_workflow_from_local_path.py | 2 +- .../workflows/import_workflow_json.py | 2 +- parsec/commands/workflows/invoke_workflow.py | 8 ++-- .../workflows/run_invocation_step_action.py | 2 +- parsec/commands/workflows/run_workflow.py | 8 ++-- parsec/commands/workflows/show_invocation.py | 2 +- .../workflows/show_invocation_step.py | 2 +- parsec/commands/workflows/show_workflow.py | 2 +- parsec/galaxy.py | 2 +- scripts/autobuilder.py | 21 ++++++--- scripts/templates/click.txt | 2 +- 121 files changed, 198 insertions(+), 191 deletions(-) diff --git a/README.rst b/README.rst index 9773216..53c4fdc 100644 --- a/README.rst +++ b/README.rst @@ -42,7 +42,7 @@ To connect to a running Galaxy server, you will need an account on that Galaxy i First initialize the parsec configuration file in ``~/.parsec.yml`` via the ``parsec`` command ``config_init``:: user@host:~$ parsec config_init - No parsec config file found, continuning anyway... + No parsec config file found, continuing anyway... Wrote configuration template to ~/.paresc.yml, please open with editor and fill out. This will look something like the following:: diff --git a/parsec/commands/config/get_config.py b/parsec/commands/config/get_config.py index edadfe0..63c9037 100644 --- a/parsec/commands/config/get_config.py +++ b/parsec/commands/config/get_config.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/datasets/download_dataset.py b/parsec/commands/datasets/download_dataset.py index b48aeb9..00ba84e 100644 --- a/parsec/commands/datasets/download_dataset.py +++ b/parsec/commands/datasets/download_dataset.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/datasets/show_dataset.py b/parsec/commands/datasets/show_dataset.py index 84622ed..4e0ad42 100644 --- a/parsec/commands/datasets/show_dataset.py +++ b/parsec/commands/datasets/show_dataset.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/datasets/show_stderr.py b/parsec/commands/datasets/show_stderr.py index eefb625..4b50749 100644 --- a/parsec/commands/datasets/show_stderr.py +++ b/parsec/commands/datasets/show_stderr.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/datasets/show_stdout.py b/parsec/commands/datasets/show_stdout.py index 40be771..41da431 100644 --- a/parsec/commands/datasets/show_stdout.py +++ b/parsec/commands/datasets/show_stdout.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/datatypes/get_datatypes.py b/parsec/commands/datatypes/get_datatypes.py index 22f7f43..2c63221 100644 --- a/parsec/commands/datatypes/get_datatypes.py +++ b/parsec/commands/datatypes/get_datatypes.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/datatypes/get_sniffers.py b/parsec/commands/datatypes/get_sniffers.py index 7eef12f..5d80065 100644 --- a/parsec/commands/datatypes/get_sniffers.py +++ b/parsec/commands/datatypes/get_sniffers.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/folders/delete_folder.py b/parsec/commands/folders/delete_folder.py index dcd16e9..c417dd6 100644 --- a/parsec/commands/folders/delete_folder.py +++ b/parsec/commands/folders/delete_folder.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/folders/show_folder.py b/parsec/commands/folders/show_folder.py index 549059f..df756dd 100644 --- a/parsec/commands/folders/show_folder.py +++ b/parsec/commands/folders/show_folder.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/forms/create_form.py b/parsec/commands/forms/create_form.py index 2e86b6f..8a712e6 100644 --- a/parsec/commands/forms/create_form.py +++ b/parsec/commands/forms/create_form.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/forms/get_forms.py b/parsec/commands/forms/get_forms.py index 13564f6..d955822 100644 --- a/parsec/commands/forms/get_forms.py +++ b/parsec/commands/forms/get_forms.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/forms/show_form.py b/parsec/commands/forms/show_form.py index 633ebf9..67a4bc0 100644 --- a/parsec/commands/forms/show_form.py +++ b/parsec/commands/forms/show_form.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/ftpfiles/get_ftp_files.py b/parsec/commands/ftpfiles/get_ftp_files.py index 1a070c3..d43ab29 100644 --- a/parsec/commands/ftpfiles/get_ftp_files.py +++ b/parsec/commands/ftpfiles/get_ftp_files.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/genomes/get_genomes.py b/parsec/commands/genomes/get_genomes.py index 5958eba..95ee397 100644 --- a/parsec/commands/genomes/get_genomes.py +++ b/parsec/commands/genomes/get_genomes.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/genomes/install_genome.py b/parsec/commands/genomes/install_genome.py index 593a4c5..5aa5d62 100644 --- a/parsec/commands/genomes/install_genome.py +++ b/parsec/commands/genomes/install_genome.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/genomes/show_genome.py b/parsec/commands/genomes/show_genome.py index c0990b7..6de963f 100644 --- a/parsec/commands/genomes/show_genome.py +++ b/parsec/commands/genomes/show_genome.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/groups/add_group_role.py b/parsec/commands/groups/add_group_role.py index 540f1f9..911b4ce 100644 --- a/parsec/commands/groups/add_group_role.py +++ b/parsec/commands/groups/add_group_role.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/groups/add_group_user.py b/parsec/commands/groups/add_group_user.py index a4c51ea..b2a68ee 100644 --- a/parsec/commands/groups/add_group_user.py +++ b/parsec/commands/groups/add_group_user.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/groups/create_group.py b/parsec/commands/groups/create_group.py index f0bc1fd..1eb765d 100644 --- a/parsec/commands/groups/create_group.py +++ b/parsec/commands/groups/create_group.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/groups/delete_group_role.py b/parsec/commands/groups/delete_group_role.py index 41ff180..12d2e03 100644 --- a/parsec/commands/groups/delete_group_role.py +++ b/parsec/commands/groups/delete_group_role.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/groups/delete_group_user.py b/parsec/commands/groups/delete_group_user.py index 0c9cb92..77bdcd8 100644 --- a/parsec/commands/groups/delete_group_user.py +++ b/parsec/commands/groups/delete_group_user.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/groups/get_group_roles.py b/parsec/commands/groups/get_group_roles.py index bad5e70..f3ad696 100644 --- a/parsec/commands/groups/get_group_roles.py +++ b/parsec/commands/groups/get_group_roles.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/groups/get_group_users.py b/parsec/commands/groups/get_group_users.py index c1f2a80..6cbb32c 100644 --- a/parsec/commands/groups/get_group_users.py +++ b/parsec/commands/groups/get_group_users.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/groups/get_groups.py b/parsec/commands/groups/get_groups.py index bef5481..1723815 100644 --- a/parsec/commands/groups/get_groups.py +++ b/parsec/commands/groups/get_groups.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/groups/show_group.py b/parsec/commands/groups/show_group.py index ec1c349..f9ed9fe 100644 --- a/parsec/commands/groups/show_group.py +++ b/parsec/commands/groups/show_group.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/groups/update_group.py b/parsec/commands/groups/update_group.py index 88e4f5b..9488e22 100644 --- a/parsec/commands/groups/update_group.py +++ b/parsec/commands/groups/update_group.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/histories/create_dataset_collection.py b/parsec/commands/histories/create_dataset_collection.py index 8304081..a74e36d 100644 --- a/parsec/commands/histories/create_dataset_collection.py +++ b/parsec/commands/histories/create_dataset_collection.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/histories/create_history.py b/parsec/commands/histories/create_history.py index b4ee2e3..738dbd6 100644 --- a/parsec/commands/histories/create_history.py +++ b/parsec/commands/histories/create_history.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/histories/create_history_tag.py b/parsec/commands/histories/create_history_tag.py index c380ccc..41c72f1 100644 --- a/parsec/commands/histories/create_history_tag.py +++ b/parsec/commands/histories/create_history_tag.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/histories/delete_dataset.py b/parsec/commands/histories/delete_dataset.py index f842399..89d4bdc 100644 --- a/parsec/commands/histories/delete_dataset.py +++ b/parsec/commands/histories/delete_dataset.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/histories/delete_dataset_collection.py b/parsec/commands/histories/delete_dataset_collection.py index 315de34..20930f3 100644 --- a/parsec/commands/histories/delete_dataset_collection.py +++ b/parsec/commands/histories/delete_dataset_collection.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/histories/delete_history.py b/parsec/commands/histories/delete_history.py index 5bda7b8..a592546 100644 --- a/parsec/commands/histories/delete_history.py +++ b/parsec/commands/histories/delete_history.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/histories/download_dataset.py b/parsec/commands/histories/download_dataset.py index 56b8df0..f48b1b0 100644 --- a/parsec/commands/histories/download_dataset.py +++ b/parsec/commands/histories/download_dataset.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/histories/download_history.py b/parsec/commands/histories/download_history.py index 87f4a47..3338ba7 100644 --- a/parsec/commands/histories/download_history.py +++ b/parsec/commands/histories/download_history.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/histories/export_history.py b/parsec/commands/histories/export_history.py index 8d8784b..cb4b19a 100644 --- a/parsec/commands/histories/export_history.py +++ b/parsec/commands/histories/export_history.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/histories/get_current_history.py b/parsec/commands/histories/get_current_history.py index 427e07a..afd998d 100644 --- a/parsec/commands/histories/get_current_history.py +++ b/parsec/commands/histories/get_current_history.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/histories/get_histories.py b/parsec/commands/histories/get_histories.py index 3d9f100..44df4da 100644 --- a/parsec/commands/histories/get_histories.py +++ b/parsec/commands/histories/get_histories.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/histories/get_most_recently_used_history.py b/parsec/commands/histories/get_most_recently_used_history.py index 1c1120b..7e972fc 100644 --- a/parsec/commands/histories/get_most_recently_used_history.py +++ b/parsec/commands/histories/get_most_recently_used_history.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/histories/get_status.py b/parsec/commands/histories/get_status.py index 3e8e844..f98f63f 100644 --- a/parsec/commands/histories/get_status.py +++ b/parsec/commands/histories/get_status.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/histories/show_dataset.py b/parsec/commands/histories/show_dataset.py index 7bfeee4..0a5c616 100644 --- a/parsec/commands/histories/show_dataset.py +++ b/parsec/commands/histories/show_dataset.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/histories/show_dataset_collection.py b/parsec/commands/histories/show_dataset_collection.py index 6d778ef..5619649 100644 --- a/parsec/commands/histories/show_dataset_collection.py +++ b/parsec/commands/histories/show_dataset_collection.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/histories/show_dataset_provenance.py b/parsec/commands/histories/show_dataset_provenance.py index 22cedfa..fe6c017 100644 --- a/parsec/commands/histories/show_dataset_provenance.py +++ b/parsec/commands/histories/show_dataset_provenance.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/histories/show_history.py b/parsec/commands/histories/show_history.py index b8c121e..5562ec7 100644 --- a/parsec/commands/histories/show_history.py +++ b/parsec/commands/histories/show_history.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/histories/show_matching_datasets.py b/parsec/commands/histories/show_matching_datasets.py index 785b83d..cd880c0 100644 --- a/parsec/commands/histories/show_matching_datasets.py +++ b/parsec/commands/histories/show_matching_datasets.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/histories/undelete_history.py b/parsec/commands/histories/undelete_history.py index 9fea6e3..0c6691d 100644 --- a/parsec/commands/histories/undelete_history.py +++ b/parsec/commands/histories/undelete_history.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/histories/update_dataset.py b/parsec/commands/histories/update_dataset.py index ed92a03..e1c7349 100644 --- a/parsec/commands/histories/update_dataset.py +++ b/parsec/commands/histories/update_dataset.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output @@ -7,11 +7,6 @@ @click.argument("history_id", type=str) @click.argument("dataset_id", type=str) -@click.option( - "--name", - help="Replace history dataset name with the given string", - type=str -) @click.option( "--annotation", help="Replace history dataset annotation with given string", @@ -22,16 +17,21 @@ help="Mark or unmark history dataset as deleted", is_flag=True ) -@click.option( - "--visible", - help="Mark or unmark history dataset as visible", - is_flag=True -) @click.option( "--genome_build", help="Replace history dataset genome build (dbkey)", type=str ) +@click.option( + "--name", + help="Replace history dataset name with the given string", + type=str +) +@click.option( + "--visible", + help="Mark or unmark history dataset as visible", + is_flag=True +) @pass_context @bioblend_exception @@ -40,15 +40,15 @@ def cli(ctx, history_id, dataset_id): """Update history dataset metadata. Some of the attributes that can be modified are documented below. """ kwargs = {} - if name and len(name) > 0: - kwargs['name'] = name if annotation and len(annotation) > 0: kwargs['annotation'] = annotation if deleted is not None: kwargs['deleted'] = deleted - if visible is not None: - kwargs['visible'] = visible if genome_build and len(genome_build) > 0: kwargs['genome_build'] = genome_build + if name and len(name) > 0: + kwargs['name'] = name + if visible is not None: + kwargs['visible'] = visible return ctx.gi.histories.update_dataset(history_id, dataset_id, **kwargs) diff --git a/parsec/commands/histories/update_dataset_collection.py b/parsec/commands/histories/update_dataset_collection.py index 1d795e5..573601d 100644 --- a/parsec/commands/histories/update_dataset_collection.py +++ b/parsec/commands/histories/update_dataset_collection.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output @@ -7,16 +7,16 @@ @click.argument("history_id", type=str) @click.argument("dataset_collection_id", type=str) -@click.option( - "--name", - help="Replace history dataset collection name with the given string", - type=str -) @click.option( "--deleted", help="Mark or unmark history dataset collection as deleted", is_flag=True ) +@click.option( + "--name", + help="Replace history dataset collection name with the given string", + type=str +) @click.option( "--visible", help="Mark or unmark history dataset collection as visible", @@ -30,10 +30,10 @@ def cli(ctx, history_id, dataset_collection_id): """Update history dataset collection metadata. Some of the attributes that can be modified are documented below. """ kwargs = {} - if name and len(name) > 0: - kwargs['name'] = name if deleted is not None: kwargs['deleted'] = deleted + if name and len(name) > 0: + kwargs['name'] = name if visible is not None: kwargs['visible'] = visible diff --git a/parsec/commands/histories/update_history.py b/parsec/commands/histories/update_history.py index 7e35f56..69afbb3 100644 --- a/parsec/commands/histories/update_history.py +++ b/parsec/commands/histories/update_history.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output @@ -7,19 +7,18 @@ @click.argument("history_id", type=str) @click.option( - "--tags", - help="Replace history tags with the given list", - type=str, - multiple=True + "--annotation", + help="Replace history annotation with given string", + type=str ) @click.option( - "--importable", - help="Mark or unmark history as importable", + "--deleted", + help="Mark or unmark history as deleted", is_flag=True ) @click.option( - "--purged", - help="If True, mark history as purged (permanently deleted). Ignored on Galaxy release_15.01 and earlier", + "--importable", + help="Mark or unmark history as importable", is_flag=True ) @click.option( @@ -28,19 +27,20 @@ type=str ) @click.option( - "--annotation", - help="Replace history annotation with given string", - type=str + "--published", + help="Mark or unmark history as published", + is_flag=True ) @click.option( - "--deleted", - help="Mark or unmark history as deleted", + "--purged", + help="If True, mark history as purged (permanently deleted). Ignored on Galaxy release_15.01 and earlier", is_flag=True ) @click.option( - "--published", - help="Mark or unmark history as published", - is_flag=True + "--tags", + help="Replace history tags with the given list", + type=str, + multiple=True ) @pass_context @@ -50,17 +50,17 @@ def cli(ctx, history_id, tags=None): """Update history metadata information. Some of the attributes that can be modified are documented below. """ kwargs = {} - if importable is not None: - kwargs['importable'] = importable - if purged is not None: - kwargs['purged'] = purged - if name and len(name) > 0: - kwargs['name'] = name if annotation and len(annotation) > 0: kwargs['annotation'] = annotation if deleted is not None: kwargs['deleted'] = deleted + if importable is not None: + kwargs['importable'] = importable + if name and len(name) > 0: + kwargs['name'] = name if published is not None: kwargs['published'] = published + if purged is not None: + kwargs['purged'] = purged return ctx.gi.histories.update_history(history_id, tags=tags, **kwargs) diff --git a/parsec/commands/histories/upload_dataset_from_library.py b/parsec/commands/histories/upload_dataset_from_library.py index 431af07..688f2ad 100644 --- a/parsec/commands/histories/upload_dataset_from_library.py +++ b/parsec/commands/histories/upload_dataset_from_library.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/jobs/get_jobs.py b/parsec/commands/jobs/get_jobs.py index b7b52a4..f884158 100644 --- a/parsec/commands/jobs/get_jobs.py +++ b/parsec/commands/jobs/get_jobs.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/jobs/get_state.py b/parsec/commands/jobs/get_state.py index a5f36e8..e0d5726 100644 --- a/parsec/commands/jobs/get_state.py +++ b/parsec/commands/jobs/get_state.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/jobs/search_jobs.py b/parsec/commands/jobs/search_jobs.py index 300cbea..6c12c9d 100644 --- a/parsec/commands/jobs/search_jobs.py +++ b/parsec/commands/jobs/search_jobs.py @@ -1,10 +1,10 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output @click.command('search_jobs') -@click.argument("job_info", type=dict) +@click.argument("job_info", type=str) @pass_context diff --git a/parsec/commands/jobs/show_job.py b/parsec/commands/jobs/show_job.py index 98be1d8..1bb03a2 100644 --- a/parsec/commands/jobs/show_job.py +++ b/parsec/commands/jobs/show_job.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/libraries/copy_from_dataset.py b/parsec/commands/libraries/copy_from_dataset.py index 4b018ac..2c19179 100644 --- a/parsec/commands/libraries/copy_from_dataset.py +++ b/parsec/commands/libraries/copy_from_dataset.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/libraries/create_folder.py b/parsec/commands/libraries/create_folder.py index f39d3b0..d2fe059 100644 --- a/parsec/commands/libraries/create_folder.py +++ b/parsec/commands/libraries/create_folder.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/libraries/create_library.py b/parsec/commands/libraries/create_library.py index 45b5f0a..23e072a 100644 --- a/parsec/commands/libraries/create_library.py +++ b/parsec/commands/libraries/create_library.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/libraries/delete_library.py b/parsec/commands/libraries/delete_library.py index d242672..de1ee3a 100644 --- a/parsec/commands/libraries/delete_library.py +++ b/parsec/commands/libraries/delete_library.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/libraries/delete_library_dataset.py b/parsec/commands/libraries/delete_library_dataset.py index 61e6b7e..292ee9a 100644 --- a/parsec/commands/libraries/delete_library_dataset.py +++ b/parsec/commands/libraries/delete_library_dataset.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/libraries/get_folders.py b/parsec/commands/libraries/get_folders.py index 4c950d9..2534f76 100644 --- a/parsec/commands/libraries/get_folders.py +++ b/parsec/commands/libraries/get_folders.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/libraries/get_libraries.py b/parsec/commands/libraries/get_libraries.py index 5cd28b8..54247d8 100644 --- a/parsec/commands/libraries/get_libraries.py +++ b/parsec/commands/libraries/get_libraries.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/libraries/get_library_permissions.py b/parsec/commands/libraries/get_library_permissions.py index 86b425a..e5ad4fb 100644 --- a/parsec/commands/libraries/get_library_permissions.py +++ b/parsec/commands/libraries/get_library_permissions.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/libraries/set_library_permissions.py b/parsec/commands/libraries/set_library_permissions.py index bc76924..04d9680 100644 --- a/parsec/commands/libraries/set_library_permissions.py +++ b/parsec/commands/libraries/set_library_permissions.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/libraries/show_dataset.py b/parsec/commands/libraries/show_dataset.py index f617072..7fa2734 100644 --- a/parsec/commands/libraries/show_dataset.py +++ b/parsec/commands/libraries/show_dataset.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/libraries/show_folder.py b/parsec/commands/libraries/show_folder.py index f85d16e..22ce57b 100644 --- a/parsec/commands/libraries/show_folder.py +++ b/parsec/commands/libraries/show_folder.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/libraries/show_library.py b/parsec/commands/libraries/show_library.py index 0b5f92a..e68ac15 100644 --- a/parsec/commands/libraries/show_library.py +++ b/parsec/commands/libraries/show_library.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/libraries/upload_file_contents.py b/parsec/commands/libraries/upload_file_contents.py index 2f3eb5b..5941a31 100644 --- a/parsec/commands/libraries/upload_file_contents.py +++ b/parsec/commands/libraries/upload_file_contents.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/libraries/upload_file_from_local_path.py b/parsec/commands/libraries/upload_file_from_local_path.py index b0a26e8..bff16e1 100644 --- a/parsec/commands/libraries/upload_file_from_local_path.py +++ b/parsec/commands/libraries/upload_file_from_local_path.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/libraries/upload_file_from_server.py b/parsec/commands/libraries/upload_file_from_server.py index 178f39f..17d76b9 100644 --- a/parsec/commands/libraries/upload_file_from_server.py +++ b/parsec/commands/libraries/upload_file_from_server.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/libraries/upload_file_from_url.py b/parsec/commands/libraries/upload_file_from_url.py index d7a4e67..2a74e16 100644 --- a/parsec/commands/libraries/upload_file_from_url.py +++ b/parsec/commands/libraries/upload_file_from_url.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/libraries/upload_from_galaxy_filesystem.py b/parsec/commands/libraries/upload_from_galaxy_filesystem.py index 04865a2..9210189 100644 --- a/parsec/commands/libraries/upload_from_galaxy_filesystem.py +++ b/parsec/commands/libraries/upload_from_galaxy_filesystem.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/quotas/get_quotas.py b/parsec/commands/quotas/get_quotas.py index b2ad3de..6c6bc47 100644 --- a/parsec/commands/quotas/get_quotas.py +++ b/parsec/commands/quotas/get_quotas.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/quotas/show_quota.py b/parsec/commands/quotas/show_quota.py index 9125ea4..3f10651 100644 --- a/parsec/commands/quotas/show_quota.py +++ b/parsec/commands/quotas/show_quota.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/roles/get_roles.py b/parsec/commands/roles/get_roles.py index 4de3fdc..ab17793 100644 --- a/parsec/commands/roles/get_roles.py +++ b/parsec/commands/roles/get_roles.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/roles/show_role.py b/parsec/commands/roles/show_role.py index ee803bc..77ee243 100644 --- a/parsec/commands/roles/show_role.py +++ b/parsec/commands/roles/show_role.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/tool_data/delete_data_table.py b/parsec/commands/tool_data/delete_data_table.py index d8c04bc..a8cd087 100644 --- a/parsec/commands/tool_data/delete_data_table.py +++ b/parsec/commands/tool_data/delete_data_table.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/tool_data/get_data_tables.py b/parsec/commands/tool_data/get_data_tables.py index dfa3d5a..33fc5b5 100644 --- a/parsec/commands/tool_data/get_data_tables.py +++ b/parsec/commands/tool_data/get_data_tables.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/tool_data/reload_data_table.py b/parsec/commands/tool_data/reload_data_table.py index becf3d0..3d942cc 100644 --- a/parsec/commands/tool_data/reload_data_table.py +++ b/parsec/commands/tool_data/reload_data_table.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/tool_data/show_data_table.py b/parsec/commands/tool_data/show_data_table.py index 9c038a9..f86c614 100644 --- a/parsec/commands/tool_data/show_data_table.py +++ b/parsec/commands/tool_data/show_data_table.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/tools/get_tool_panel.py b/parsec/commands/tools/get_tool_panel.py index 442940d..12d1374 100644 --- a/parsec/commands/tools/get_tool_panel.py +++ b/parsec/commands/tools/get_tool_panel.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/tools/get_tools.py b/parsec/commands/tools/get_tools.py index 5375713..08be413 100644 --- a/parsec/commands/tools/get_tools.py +++ b/parsec/commands/tools/get_tools.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/tools/install_dependencies.py b/parsec/commands/tools/install_dependencies.py index 2ebf491..a92244f 100644 --- a/parsec/commands/tools/install_dependencies.py +++ b/parsec/commands/tools/install_dependencies.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/tools/paste_content.py b/parsec/commands/tools/paste_content.py index d1b803c..c404abf 100644 --- a/parsec/commands/tools/paste_content.py +++ b/parsec/commands/tools/paste_content.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/tools/put_url.py b/parsec/commands/tools/put_url.py index 612d2a9..860f39e 100644 --- a/parsec/commands/tools/put_url.py +++ b/parsec/commands/tools/put_url.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/tools/run_tool.py b/parsec/commands/tools/run_tool.py index bad4353..1a4f856 100644 --- a/parsec/commands/tools/run_tool.py +++ b/parsec/commands/tools/run_tool.py @@ -1,12 +1,12 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output @click.command('run_tool') @click.argument("history_id", type=str) @click.argument("tool_id", type=str) -@click.argument("tool_inputs", type=dict) +@click.argument("tool_inputs", type=str) @pass_context diff --git a/parsec/commands/tools/show_tool.py b/parsec/commands/tools/show_tool.py index 0cbcfc4..8237096 100644 --- a/parsec/commands/tools/show_tool.py +++ b/parsec/commands/tools/show_tool.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/tools/upload_file.py b/parsec/commands/tools/upload_file.py index 4730a86..8669e75 100644 --- a/parsec/commands/tools/upload_file.py +++ b/parsec/commands/tools/upload_file.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output @@ -12,25 +12,25 @@ help="(optional) genome dbkey", type=str ) -@click.option( - "--to_posix_lines", - help="if True, convert universal line endings to POSIX line endings. Default is True. Set to False if you upload a gzip, bz2 or zip archive containing a binary file", - is_flag=True -) @click.option( "--file_name", help="(optional) name of the new history dataset", type=str ) +@click.option( + "--file_type", + help="Galaxy datatype for the new dataset, default is auto", + type=str +) @click.option( "--space_to_tab", help="whether to convert spaces to tabs. Default is False. Applicable only if to_posix_lines is True", is_flag=True ) @click.option( - "--file_type", - help="Galaxy datatype for the new dataset, default is auto", - type=str + "--to_posix_lines", + help="if True, convert universal line endings to POSIX line endings. Default is True. Set to False if you upload a gzip, bz2 or zip archive containing a binary file", + is_flag=True ) @pass_context @@ -42,13 +42,13 @@ def cli(ctx, path, history_id): kwargs = {} if dbkey and len(dbkey) > 0: kwargs['dbkey'] = dbkey - if to_posix_lines is not None: - kwargs['to_posix_lines'] = to_posix_lines if file_name and len(file_name) > 0: kwargs['file_name'] = file_name - if space_to_tab is not None: - kwargs['space_to_tab'] = space_to_tab if file_type and len(file_type) > 0: kwargs['file_type'] = file_type + if space_to_tab is not None: + kwargs['space_to_tab'] = space_to_tab + if to_posix_lines is not None: + kwargs['to_posix_lines'] = to_posix_lines return ctx.gi.tools.upload_file(path, history_id, **kwargs) diff --git a/parsec/commands/tools/upload_from_ftp.py b/parsec/commands/tools/upload_from_ftp.py index e7e0475..1dba1ee 100644 --- a/parsec/commands/tools/upload_from_ftp.py +++ b/parsec/commands/tools/upload_from_ftp.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/toolshed/get_repositories.py b/parsec/commands/toolshed/get_repositories.py index 60a65fc..2a958fc 100644 --- a/parsec/commands/toolshed/get_repositories.py +++ b/parsec/commands/toolshed/get_repositories.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/toolshed/install_repository_revision.py b/parsec/commands/toolshed/install_repository_revision.py index 34e5c45..6337027 100644 --- a/parsec/commands/toolshed/install_repository_revision.py +++ b/parsec/commands/toolshed/install_repository_revision.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/toolshed/show_repository.py b/parsec/commands/toolshed/show_repository.py index d1b8e1c..f99217d 100644 --- a/parsec/commands/toolshed/show_repository.py +++ b/parsec/commands/toolshed/show_repository.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/users/create_local_user.py b/parsec/commands/users/create_local_user.py index 5cbb2fb..376705c 100644 --- a/parsec/commands/users/create_local_user.py +++ b/parsec/commands/users/create_local_user.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/users/create_remote_user.py b/parsec/commands/users/create_remote_user.py index d440bf5..c063550 100644 --- a/parsec/commands/users/create_remote_user.py +++ b/parsec/commands/users/create_remote_user.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/users/create_user_apikey.py b/parsec/commands/users/create_user_apikey.py index 03fa870..97d0ba2 100644 --- a/parsec/commands/users/create_user_apikey.py +++ b/parsec/commands/users/create_user_apikey.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/users/delete_user.py b/parsec/commands/users/delete_user.py index fb6d219..e762221 100644 --- a/parsec/commands/users/delete_user.py +++ b/parsec/commands/users/delete_user.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/users/get_current_user.py b/parsec/commands/users/get_current_user.py index 065ecf6..d3a6702 100644 --- a/parsec/commands/users/get_current_user.py +++ b/parsec/commands/users/get_current_user.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/users/get_users.py b/parsec/commands/users/get_users.py index 2b3f059..08478b9 100644 --- a/parsec/commands/users/get_users.py +++ b/parsec/commands/users/get_users.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/users/show_user.py b/parsec/commands/users/show_user.py index a893e6e..f1c325c 100644 --- a/parsec/commands/users/show_user.py +++ b/parsec/commands/users/show_user.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/visual/get_visualizations.py b/parsec/commands/visual/get_visualizations.py index 474a75f..5b8c6bc 100644 --- a/parsec/commands/visual/get_visualizations.py +++ b/parsec/commands/visual/get_visualizations.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/visual/show_visualization.py b/parsec/commands/visual/show_visualization.py index 41912aa..ae60a93 100644 --- a/parsec/commands/visual/show_visualization.py +++ b/parsec/commands/visual/show_visualization.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/workflows/cancel_invocation.py b/parsec/commands/workflows/cancel_invocation.py index 328bfd2..9b1ec82 100644 --- a/parsec/commands/workflows/cancel_invocation.py +++ b/parsec/commands/workflows/cancel_invocation.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/workflows/delete_workflow.py b/parsec/commands/workflows/delete_workflow.py index 84f9b8d..b074dfa 100644 --- a/parsec/commands/workflows/delete_workflow.py +++ b/parsec/commands/workflows/delete_workflow.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/workflows/export_workflow_dict.py b/parsec/commands/workflows/export_workflow_dict.py index ea7508b..2b11e45 100644 --- a/parsec/commands/workflows/export_workflow_dict.py +++ b/parsec/commands/workflows/export_workflow_dict.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/workflows/export_workflow_json.py b/parsec/commands/workflows/export_workflow_json.py index 6725a14..88e7e80 100644 --- a/parsec/commands/workflows/export_workflow_json.py +++ b/parsec/commands/workflows/export_workflow_json.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/workflows/export_workflow_to_local_path.py b/parsec/commands/workflows/export_workflow_to_local_path.py index 0b99fde..7918bed 100644 --- a/parsec/commands/workflows/export_workflow_to_local_path.py +++ b/parsec/commands/workflows/export_workflow_to_local_path.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/workflows/get_invocations.py b/parsec/commands/workflows/get_invocations.py index 5214b97..fcc3f59 100644 --- a/parsec/commands/workflows/get_invocations.py +++ b/parsec/commands/workflows/get_invocations.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/workflows/get_workflow_inputs.py b/parsec/commands/workflows/get_workflow_inputs.py index 0394bf5..a90ff89 100644 --- a/parsec/commands/workflows/get_workflow_inputs.py +++ b/parsec/commands/workflows/get_workflow_inputs.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/workflows/get_workflows.py b/parsec/commands/workflows/get_workflows.py index b549f58..b5d3ba5 100644 --- a/parsec/commands/workflows/get_workflows.py +++ b/parsec/commands/workflows/get_workflows.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/workflows/import_shared_workflow.py b/parsec/commands/workflows/import_shared_workflow.py index 0e4f2f3..21890ca 100644 --- a/parsec/commands/workflows/import_shared_workflow.py +++ b/parsec/commands/workflows/import_shared_workflow.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/workflows/import_workflow_dict.py b/parsec/commands/workflows/import_workflow_dict.py index bd370b2..36d11ed 100644 --- a/parsec/commands/workflows/import_workflow_dict.py +++ b/parsec/commands/workflows/import_workflow_dict.py @@ -1,10 +1,10 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output @click.command('import_workflow_dict') -@click.argument("workflow_dict", type=dict) +@click.argument("workflow_dict", type=str) @pass_context diff --git a/parsec/commands/workflows/import_workflow_from_local_path.py b/parsec/commands/workflows/import_workflow_from_local_path.py index 326fdb2..615f76f 100644 --- a/parsec/commands/workflows/import_workflow_from_local_path.py +++ b/parsec/commands/workflows/import_workflow_from_local_path.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/workflows/import_workflow_json.py b/parsec/commands/workflows/import_workflow_json.py index a38a4f3..8b395b6 100644 --- a/parsec/commands/workflows/import_workflow_json.py +++ b/parsec/commands/workflows/import_workflow_json.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/workflows/invoke_workflow.py b/parsec/commands/workflows/invoke_workflow.py index 6f62140..baaafb3 100644 --- a/parsec/commands/workflows/invoke_workflow.py +++ b/parsec/commands/workflows/invoke_workflow.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output @@ -9,12 +9,12 @@ @click.option( "--inputs", help="A mapping of workflow inputs to datasets and dataset collections. The datasets source can be a LibraryDatasetDatasetAssociation (``ldda``), LibraryDataset (``ld``), HistoryDatasetAssociation (``hda``), or HistoryDatasetCollectionAssociation (``hdca``).", - type=dict + type=str ) @click.option( "--params", help="A mapping of non-datasets tool parameters (see below)", - type=dict + type=str ) @click.option( "--history_id", @@ -34,7 +34,7 @@ @click.option( "--replacement_params", help="pattern-based replacements for post-job actions (see below)", - type=dict + type=str ) @click.option( "--allow_tool_state_corrections", diff --git a/parsec/commands/workflows/run_invocation_step_action.py b/parsec/commands/workflows/run_invocation_step_action.py index c2c1661..0e7953e 100644 --- a/parsec/commands/workflows/run_invocation_step_action.py +++ b/parsec/commands/workflows/run_invocation_step_action.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/workflows/run_workflow.py b/parsec/commands/workflows/run_workflow.py index 011e12c..b519ca1 100644 --- a/parsec/commands/workflows/run_workflow.py +++ b/parsec/commands/workflows/run_workflow.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output @@ -9,12 +9,12 @@ @click.option( "--dataset_map", help="A mapping of workflow inputs to datasets. The datasets source can be a LibraryDatasetDatasetAssociation (``ldda``), LibraryDataset (``ld``), or HistoryDatasetAssociation (``hda``). The map must be in the following format: ``{'': {'id': , 'src': '[ldda, ld, hda]'}}`` (e.g. ``{'23': {'id': '29beef4fadeed09f', 'src': 'ld'}}``)", - type=dict + type=str ) @click.option( "--params", help="A mapping of non-datasets tool parameters (see below)", - type=dict + type=str ) @click.option( "--history_id", @@ -34,7 +34,7 @@ @click.option( "--replacement_params", help="pattern-based replacements for post-job actions (see below)", - type=dict + type=str ) @pass_context diff --git a/parsec/commands/workflows/show_invocation.py b/parsec/commands/workflows/show_invocation.py index 17af5f7..06f9124 100644 --- a/parsec/commands/workflows/show_invocation.py +++ b/parsec/commands/workflows/show_invocation.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/workflows/show_invocation_step.py b/parsec/commands/workflows/show_invocation_step.py index db91655..c56c99c 100644 --- a/parsec/commands/workflows/show_invocation_step.py +++ b/parsec/commands/workflows/show_invocation_step.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/commands/workflows/show_workflow.py b/parsec/commands/workflows/show_workflow.py index 1762cd9..c48893d 100644 --- a/parsec/commands/workflows/show_workflow.py +++ b/parsec/commands/workflows/show_workflow.py @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output diff --git a/parsec/galaxy.py b/parsec/galaxy.py index c881250..6a006cd 100644 --- a/parsec/galaxy.py +++ b/parsec/galaxy.py @@ -9,7 +9,7 @@ def get_instance(instance_name=None): conf = read_global_config() if not os.path.exists(global_config_path()): # Probably creating the file for the first time. - warn("No parsec config file found, continuning anyway...") + warn("No parsec config file found, continuing anyway...") return None if instance_name is None or instance_name == '__default': diff --git a/scripts/autobuilder.py b/scripts/autobuilder.py index 58b8256..e721501 100644 --- a/scripts/autobuilder.py +++ b/scripts/autobuilder.py @@ -35,7 +35,7 @@ ], 'dict': [ #TODO - 'type=dict', + 'type=str', ], 'int': [ 'type=int' @@ -260,7 +260,7 @@ def orig(self, module_name, submodule, subsubmodule, function_name): method_exec_args = [] method_exec_kwargs = [] - def process_arg(k, v, param_type): + def process_arg(k, v, param_type, real_type): # If v is not None, then it's a kwargs, otherwise an arg if v is not None: # Strings must be treated specially by removing their value @@ -275,6 +275,8 @@ def process_arg(k, v, param_type): # Register twice as the method invocation uses v=k if v != 'None': + if real_type == 'dict': + v = 'json.loads(%s)' % v method_signature_kwargs.append("%s=%s" % (k, v)) method_exec_kwargs.append('%s=%s' % (k, k)) @@ -287,8 +289,11 @@ def process_arg(k, v, param_type): data['click_options'] += self.__click_option(name=k, helpstr=descstr, ptype=param_type) else: # Args, not kwargs - method_signature_args.append(k) - method_exec_args.append(k) + tk = k + if real_type == 'dict': + tk = 'json.loads(%s)' % k + method_signature_args.append(tk) + method_exec_args.append(tk) data['click_arguments'] += self.__click_argument(name=k, ptype=param_type) @@ -296,13 +301,15 @@ def process_arg(k, v, param_type): for k, v in argspec: try: param_type = self.parameter_translation(param_docs[k]['type']) + real_type = param_docs[k]['type'] except Exception as e: param_type = [] + real_type = None print(candidate, e) - process_arg(k, v, param_type) + process_arg(k, v, param_type, None) had_weird_kwargs = False - for k in param_docs.keys(): + for k in sorted(param_docs.keys()): # Ignore things we've seen before if k in argspec_keys: continue @@ -312,7 +319,7 @@ def process_arg(k, v, param_type): else: default_value = '__None__' - process_arg(k, default_value, self.parameter_translation(param_type)) + process_arg(k, default_value, self.parameter_translation(param_type), param_docs[k]['type']) # Booleans are diff if param_type == 'bool': data['kwarg_updates'] += " if %s is not None:\n kwargs['%s'] = %s\n" % (k, k, k) diff --git a/scripts/templates/click.txt b/scripts/templates/click.txt index 4560572..be582db 100644 --- a/scripts/templates/click.txt +++ b/scripts/templates/click.txt @@ -1,5 +1,5 @@ import click - +import json from parsec.cli import pass_context from parsec.decorators import bioblend_exception, dict_output From bb512835fd9362c3eacd2a16d1d5d231f39eda02 Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Tue, 2 May 2017 21:33:47 +0000 Subject: [PATCH 21/80] json load --- parsec/commands/jobs/search_jobs.py | 2 +- parsec/commands/tools/run_tool.py | 2 +- parsec/commands/workflows/import_workflow_dict.py | 2 +- scripts/autobuilder.py | 9 +++++---- 4 files changed, 8 insertions(+), 7 deletions(-) diff --git a/parsec/commands/jobs/search_jobs.py b/parsec/commands/jobs/search_jobs.py index 6c12c9d..520bee0 100644 --- a/parsec/commands/jobs/search_jobs.py +++ b/parsec/commands/jobs/search_jobs.py @@ -13,4 +13,4 @@ def cli(ctx, job_info): """Return jobs for the current user based payload content. """ - return ctx.gi.jobs.search_jobs(job_info) + return ctx.gi.jobs.search_jobs(json.loads(job_info)) diff --git a/parsec/commands/tools/run_tool.py b/parsec/commands/tools/run_tool.py index 1a4f856..d3281d9 100644 --- a/parsec/commands/tools/run_tool.py +++ b/parsec/commands/tools/run_tool.py @@ -15,4 +15,4 @@ def cli(ctx, history_id, tool_id, tool_inputs): """Runs tool specified by ``tool_id`` in history indicated by ``history_id`` with inputs from ``dict`` ``tool_inputs``. """ - return ctx.gi.tools.run_tool(history_id, tool_id, tool_inputs) + return ctx.gi.tools.run_tool(history_id, tool_id, json.loads(tool_inputs)) diff --git a/parsec/commands/workflows/import_workflow_dict.py b/parsec/commands/workflows/import_workflow_dict.py index 36d11ed..7d41e9e 100644 --- a/parsec/commands/workflows/import_workflow_dict.py +++ b/parsec/commands/workflows/import_workflow_dict.py @@ -13,4 +13,4 @@ def cli(ctx, workflow_dict): """Imports a new workflow given a dictionary representing a previously exported workflow. """ - return ctx.gi.workflows.import_workflow_dict(workflow_dict) + return ctx.gi.workflows.import_workflow_dict(json.loads(workflow_dict)) diff --git a/scripts/autobuilder.py b/scripts/autobuilder.py index e721501..91d16aa 100644 --- a/scripts/autobuilder.py +++ b/scripts/autobuilder.py @@ -261,6 +261,7 @@ def orig(self, module_name, submodule, subsubmodule, function_name): method_exec_kwargs = [] def process_arg(k, v, param_type, real_type): + log.debug("Processing %s=%s %s %s", k, v, param_type, real_type) # If v is not None, then it's a kwargs, otherwise an arg if v is not None: # Strings must be treated specially by removing their value @@ -275,9 +276,9 @@ def process_arg(k, v, param_type, real_type): # Register twice as the method invocation uses v=k if v != 'None': + method_signature_kwargs.append("%s=%s" % (k, v)) if real_type == 'dict': v = 'json.loads(%s)' % v - method_signature_kwargs.append("%s=%s" % (k, v)) method_exec_kwargs.append('%s=%s' % (k, k)) # TODO: refactor @@ -290,9 +291,9 @@ def process_arg(k, v, param_type, real_type): else: # Args, not kwargs tk = k + method_signature_args.append(tk) if real_type == 'dict': tk = 'json.loads(%s)' % k - method_signature_args.append(tk) method_exec_args.append(tk) data['click_arguments'] += self.__click_argument(name=k, ptype=param_type) @@ -306,7 +307,7 @@ def process_arg(k, v, param_type, real_type): param_type = [] real_type = None print(candidate, e) - process_arg(k, v, param_type, None) + process_arg(k, v, param_type, real_type) had_weird_kwargs = False for k in sorted(param_docs.keys()): @@ -319,7 +320,7 @@ def process_arg(k, v, param_type, real_type): else: default_value = '__None__' - process_arg(k, default_value, self.parameter_translation(param_type), param_docs[k]['type']) + process_arg(k, default_value, self.parameter_translation(param_type), param_type) # Booleans are diff if param_type == 'bool': data['kwarg_updates'] += " if %s is not None:\n kwargs['%s'] = %s\n" % (k, k, k) From 879b4d05d29201e29b7b6adbb53562793f98273b Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Tue, 2 May 2017 21:38:11 +0000 Subject: [PATCH 22/80] custom json loading function --- parsec/cli.py | 12 ++++++++++++ parsec/commands/config/get_config.py | 3 +-- parsec/commands/datasets/download_dataset.py | 3 +-- parsec/commands/datasets/show_dataset.py | 3 +-- parsec/commands/datasets/show_stderr.py | 3 +-- parsec/commands/datasets/show_stdout.py | 3 +-- parsec/commands/datatypes/get_datatypes.py | 3 +-- parsec/commands/datatypes/get_sniffers.py | 3 +-- parsec/commands/folders/delete_folder.py | 3 +-- parsec/commands/folders/show_folder.py | 3 +-- parsec/commands/forms/create_form.py | 3 +-- parsec/commands/forms/get_forms.py | 3 +-- parsec/commands/forms/show_form.py | 3 +-- parsec/commands/ftpfiles/get_ftp_files.py | 3 +-- parsec/commands/genomes/get_genomes.py | 3 +-- parsec/commands/genomes/install_genome.py | 3 +-- parsec/commands/genomes/show_genome.py | 3 +-- parsec/commands/groups/add_group_role.py | 3 +-- parsec/commands/groups/add_group_user.py | 3 +-- parsec/commands/groups/create_group.py | 3 +-- parsec/commands/groups/delete_group_role.py | 3 +-- parsec/commands/groups/delete_group_user.py | 3 +-- parsec/commands/groups/get_group_roles.py | 3 +-- parsec/commands/groups/get_group_users.py | 3 +-- parsec/commands/groups/get_groups.py | 3 +-- parsec/commands/groups/show_group.py | 3 +-- parsec/commands/groups/update_group.py | 3 +-- .../commands/histories/create_dataset_collection.py | 3 +-- parsec/commands/histories/create_history.py | 3 +-- parsec/commands/histories/create_history_tag.py | 3 +-- parsec/commands/histories/delete_dataset.py | 3 +-- .../commands/histories/delete_dataset_collection.py | 3 +-- parsec/commands/histories/delete_history.py | 3 +-- parsec/commands/histories/download_dataset.py | 3 +-- parsec/commands/histories/download_history.py | 3 +-- parsec/commands/histories/export_history.py | 3 +-- parsec/commands/histories/get_current_history.py | 3 +-- parsec/commands/histories/get_histories.py | 3 +-- .../histories/get_most_recently_used_history.py | 3 +-- parsec/commands/histories/get_status.py | 3 +-- parsec/commands/histories/show_dataset.py | 3 +-- parsec/commands/histories/show_dataset_collection.py | 3 +-- parsec/commands/histories/show_dataset_provenance.py | 3 +-- parsec/commands/histories/show_history.py | 3 +-- parsec/commands/histories/show_matching_datasets.py | 3 +-- parsec/commands/histories/undelete_history.py | 3 +-- parsec/commands/histories/update_dataset.py | 3 +-- .../commands/histories/update_dataset_collection.py | 3 +-- parsec/commands/histories/update_history.py | 3 +-- .../histories/upload_dataset_from_library.py | 3 +-- parsec/commands/jobs/get_jobs.py | 3 +-- parsec/commands/jobs/get_state.py | 3 +-- parsec/commands/jobs/search_jobs.py | 5 ++--- parsec/commands/jobs/show_job.py | 3 +-- parsec/commands/libraries/copy_from_dataset.py | 3 +-- parsec/commands/libraries/create_folder.py | 3 +-- parsec/commands/libraries/create_library.py | 3 +-- parsec/commands/libraries/delete_library.py | 3 +-- parsec/commands/libraries/delete_library_dataset.py | 3 +-- parsec/commands/libraries/get_folders.py | 3 +-- parsec/commands/libraries/get_libraries.py | 3 +-- parsec/commands/libraries/get_library_permissions.py | 3 +-- parsec/commands/libraries/set_library_permissions.py | 3 +-- parsec/commands/libraries/show_dataset.py | 3 +-- parsec/commands/libraries/show_folder.py | 3 +-- parsec/commands/libraries/show_library.py | 3 +-- parsec/commands/libraries/upload_file_contents.py | 3 +-- .../libraries/upload_file_from_local_path.py | 3 +-- parsec/commands/libraries/upload_file_from_server.py | 3 +-- parsec/commands/libraries/upload_file_from_url.py | 3 +-- .../libraries/upload_from_galaxy_filesystem.py | 3 +-- parsec/commands/quotas/get_quotas.py | 3 +-- parsec/commands/quotas/show_quota.py | 3 +-- parsec/commands/roles/get_roles.py | 3 +-- parsec/commands/roles/show_role.py | 3 +-- parsec/commands/tool_data/delete_data_table.py | 3 +-- parsec/commands/tool_data/get_data_tables.py | 3 +-- parsec/commands/tool_data/reload_data_table.py | 3 +-- parsec/commands/tool_data/show_data_table.py | 3 +-- parsec/commands/tools/get_tool_panel.py | 3 +-- parsec/commands/tools/get_tools.py | 3 +-- parsec/commands/tools/install_dependencies.py | 3 +-- parsec/commands/tools/paste_content.py | 3 +-- parsec/commands/tools/put_url.py | 3 +-- parsec/commands/tools/run_tool.py | 5 ++--- parsec/commands/tools/show_tool.py | 3 +-- parsec/commands/tools/upload_file.py | 3 +-- parsec/commands/tools/upload_from_ftp.py | 3 +-- parsec/commands/toolshed/get_repositories.py | 3 +-- .../commands/toolshed/install_repository_revision.py | 3 +-- parsec/commands/toolshed/show_repository.py | 3 +-- parsec/commands/users/create_local_user.py | 3 +-- parsec/commands/users/create_remote_user.py | 3 +-- parsec/commands/users/create_user_apikey.py | 3 +-- parsec/commands/users/delete_user.py | 3 +-- parsec/commands/users/get_current_user.py | 3 +-- parsec/commands/users/get_users.py | 3 +-- parsec/commands/users/show_user.py | 3 +-- parsec/commands/visual/get_visualizations.py | 3 +-- parsec/commands/visual/show_visualization.py | 3 +-- parsec/commands/workflows/cancel_invocation.py | 3 +-- parsec/commands/workflows/delete_workflow.py | 3 +-- parsec/commands/workflows/export_workflow_dict.py | 3 +-- parsec/commands/workflows/export_workflow_json.py | 3 +-- .../workflows/export_workflow_to_local_path.py | 3 +-- parsec/commands/workflows/get_invocations.py | 3 +-- parsec/commands/workflows/get_workflow_inputs.py | 3 +-- parsec/commands/workflows/get_workflows.py | 3 +-- parsec/commands/workflows/import_shared_workflow.py | 3 +-- parsec/commands/workflows/import_workflow_dict.py | 5 ++--- .../workflows/import_workflow_from_local_path.py | 3 +-- parsec/commands/workflows/import_workflow_json.py | 3 +-- parsec/commands/workflows/invoke_workflow.py | 3 +-- .../commands/workflows/run_invocation_step_action.py | 3 +-- parsec/commands/workflows/run_workflow.py | 3 +-- parsec/commands/workflows/show_invocation.py | 3 +-- parsec/commands/workflows/show_invocation_step.py | 3 +-- parsec/commands/workflows/show_workflow.py | 3 +-- scripts/autobuilder.py | 4 ++-- scripts/templates/click.txt | 3 +-- 120 files changed, 135 insertions(+), 241 deletions(-) diff --git a/parsec/cli.py b/parsec/cli.py index 0808c07..95f5918 100644 --- a/parsec/cli.py +++ b/parsec/cli.py @@ -2,6 +2,7 @@ import os import sys import click +import json from .io import error from .config import read_global_config # noqa, ditto @@ -108,3 +109,14 @@ def parsec(ctx, galaxy_instance, verbose): except TypeError: ctx.log("Could not access Toolshed/Galaxy instance configuration") ctx.verbose = verbose + + +def json_loads(data): + """Load json data, allowing - to represent stdin.""" + if data == "-": + return json.load(sys.stdin) + elif os.path.exists(data): + with open(data, 'r') as handle: + return json.load(handle) + else: + return json.loads(data) diff --git a/parsec/commands/config/get_config.py b/parsec/commands/config/get_config.py index 63c9037..47549d6 100644 --- a/parsec/commands/config/get_config.py +++ b/parsec/commands/config/get_config.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('get_config') diff --git a/parsec/commands/datasets/download_dataset.py b/parsec/commands/datasets/download_dataset.py index 00ba84e..89fdfdf 100644 --- a/parsec/commands/datasets/download_dataset.py +++ b/parsec/commands/datasets/download_dataset.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('download_dataset') diff --git a/parsec/commands/datasets/show_dataset.py b/parsec/commands/datasets/show_dataset.py index 4e0ad42..52e7a55 100644 --- a/parsec/commands/datasets/show_dataset.py +++ b/parsec/commands/datasets/show_dataset.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('show_dataset') diff --git a/parsec/commands/datasets/show_stderr.py b/parsec/commands/datasets/show_stderr.py index 4b50749..fa37d78 100644 --- a/parsec/commands/datasets/show_stderr.py +++ b/parsec/commands/datasets/show_stderr.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('show_stderr') diff --git a/parsec/commands/datasets/show_stdout.py b/parsec/commands/datasets/show_stdout.py index 41da431..025caf6 100644 --- a/parsec/commands/datasets/show_stdout.py +++ b/parsec/commands/datasets/show_stdout.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('show_stdout') diff --git a/parsec/commands/datatypes/get_datatypes.py b/parsec/commands/datatypes/get_datatypes.py index 2c63221..8cf5351 100644 --- a/parsec/commands/datatypes/get_datatypes.py +++ b/parsec/commands/datatypes/get_datatypes.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('get_datatypes') diff --git a/parsec/commands/datatypes/get_sniffers.py b/parsec/commands/datatypes/get_sniffers.py index 5d80065..74cc57f 100644 --- a/parsec/commands/datatypes/get_sniffers.py +++ b/parsec/commands/datatypes/get_sniffers.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('get_sniffers') diff --git a/parsec/commands/folders/delete_folder.py b/parsec/commands/folders/delete_folder.py index c417dd6..65b2235 100644 --- a/parsec/commands/folders/delete_folder.py +++ b/parsec/commands/folders/delete_folder.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('delete_folder') diff --git a/parsec/commands/folders/show_folder.py b/parsec/commands/folders/show_folder.py index df756dd..b4b7486 100644 --- a/parsec/commands/folders/show_folder.py +++ b/parsec/commands/folders/show_folder.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('show_folder') diff --git a/parsec/commands/forms/create_form.py b/parsec/commands/forms/create_form.py index 8a712e6..a8234be 100644 --- a/parsec/commands/forms/create_form.py +++ b/parsec/commands/forms/create_form.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('create_form') diff --git a/parsec/commands/forms/get_forms.py b/parsec/commands/forms/get_forms.py index d955822..59b0d77 100644 --- a/parsec/commands/forms/get_forms.py +++ b/parsec/commands/forms/get_forms.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('get_forms') diff --git a/parsec/commands/forms/show_form.py b/parsec/commands/forms/show_form.py index 67a4bc0..7cfd558 100644 --- a/parsec/commands/forms/show_form.py +++ b/parsec/commands/forms/show_form.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('show_form') diff --git a/parsec/commands/ftpfiles/get_ftp_files.py b/parsec/commands/ftpfiles/get_ftp_files.py index d43ab29..ac357a9 100644 --- a/parsec/commands/ftpfiles/get_ftp_files.py +++ b/parsec/commands/ftpfiles/get_ftp_files.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('get_ftp_files') diff --git a/parsec/commands/genomes/get_genomes.py b/parsec/commands/genomes/get_genomes.py index 95ee397..8ce0c00 100644 --- a/parsec/commands/genomes/get_genomes.py +++ b/parsec/commands/genomes/get_genomes.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('get_genomes') diff --git a/parsec/commands/genomes/install_genome.py b/parsec/commands/genomes/install_genome.py index 5aa5d62..5ccd667 100644 --- a/parsec/commands/genomes/install_genome.py +++ b/parsec/commands/genomes/install_genome.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('install_genome') diff --git a/parsec/commands/genomes/show_genome.py b/parsec/commands/genomes/show_genome.py index 6de963f..86d9171 100644 --- a/parsec/commands/genomes/show_genome.py +++ b/parsec/commands/genomes/show_genome.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('show_genome') diff --git a/parsec/commands/groups/add_group_role.py b/parsec/commands/groups/add_group_role.py index 911b4ce..3ca8eb5 100644 --- a/parsec/commands/groups/add_group_role.py +++ b/parsec/commands/groups/add_group_role.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('add_group_role') diff --git a/parsec/commands/groups/add_group_user.py b/parsec/commands/groups/add_group_user.py index b2a68ee..fb98ec2 100644 --- a/parsec/commands/groups/add_group_user.py +++ b/parsec/commands/groups/add_group_user.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('add_group_user') diff --git a/parsec/commands/groups/create_group.py b/parsec/commands/groups/create_group.py index 1eb765d..147243f 100644 --- a/parsec/commands/groups/create_group.py +++ b/parsec/commands/groups/create_group.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('create_group') diff --git a/parsec/commands/groups/delete_group_role.py b/parsec/commands/groups/delete_group_role.py index 12d2e03..1d4196b 100644 --- a/parsec/commands/groups/delete_group_role.py +++ b/parsec/commands/groups/delete_group_role.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('delete_group_role') diff --git a/parsec/commands/groups/delete_group_user.py b/parsec/commands/groups/delete_group_user.py index 77bdcd8..5d1cf4c 100644 --- a/parsec/commands/groups/delete_group_user.py +++ b/parsec/commands/groups/delete_group_user.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('delete_group_user') diff --git a/parsec/commands/groups/get_group_roles.py b/parsec/commands/groups/get_group_roles.py index f3ad696..03611c7 100644 --- a/parsec/commands/groups/get_group_roles.py +++ b/parsec/commands/groups/get_group_roles.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('get_group_roles') diff --git a/parsec/commands/groups/get_group_users.py b/parsec/commands/groups/get_group_users.py index 6cbb32c..87bac82 100644 --- a/parsec/commands/groups/get_group_users.py +++ b/parsec/commands/groups/get_group_users.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('get_group_users') diff --git a/parsec/commands/groups/get_groups.py b/parsec/commands/groups/get_groups.py index 1723815..e97a55f 100644 --- a/parsec/commands/groups/get_groups.py +++ b/parsec/commands/groups/get_groups.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('get_groups') diff --git a/parsec/commands/groups/show_group.py b/parsec/commands/groups/show_group.py index f9ed9fe..c51e098 100644 --- a/parsec/commands/groups/show_group.py +++ b/parsec/commands/groups/show_group.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('show_group') diff --git a/parsec/commands/groups/update_group.py b/parsec/commands/groups/update_group.py index 9488e22..6ca1e03 100644 --- a/parsec/commands/groups/update_group.py +++ b/parsec/commands/groups/update_group.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('update_group') diff --git a/parsec/commands/histories/create_dataset_collection.py b/parsec/commands/histories/create_dataset_collection.py index a74e36d..4c71d7f 100644 --- a/parsec/commands/histories/create_dataset_collection.py +++ b/parsec/commands/histories/create_dataset_collection.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('create_dataset_collection') diff --git a/parsec/commands/histories/create_history.py b/parsec/commands/histories/create_history.py index 738dbd6..1afb74e 100644 --- a/parsec/commands/histories/create_history.py +++ b/parsec/commands/histories/create_history.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('create_history') diff --git a/parsec/commands/histories/create_history_tag.py b/parsec/commands/histories/create_history_tag.py index 41c72f1..fca29a9 100644 --- a/parsec/commands/histories/create_history_tag.py +++ b/parsec/commands/histories/create_history_tag.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('create_history_tag') diff --git a/parsec/commands/histories/delete_dataset.py b/parsec/commands/histories/delete_dataset.py index 89d4bdc..61e1bcc 100644 --- a/parsec/commands/histories/delete_dataset.py +++ b/parsec/commands/histories/delete_dataset.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('delete_dataset') diff --git a/parsec/commands/histories/delete_dataset_collection.py b/parsec/commands/histories/delete_dataset_collection.py index 20930f3..4ac2a51 100644 --- a/parsec/commands/histories/delete_dataset_collection.py +++ b/parsec/commands/histories/delete_dataset_collection.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('delete_dataset_collection') diff --git a/parsec/commands/histories/delete_history.py b/parsec/commands/histories/delete_history.py index a592546..d5094a1 100644 --- a/parsec/commands/histories/delete_history.py +++ b/parsec/commands/histories/delete_history.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('delete_history') diff --git a/parsec/commands/histories/download_dataset.py b/parsec/commands/histories/download_dataset.py index f48b1b0..21df58d 100644 --- a/parsec/commands/histories/download_dataset.py +++ b/parsec/commands/histories/download_dataset.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('download_dataset') diff --git a/parsec/commands/histories/download_history.py b/parsec/commands/histories/download_history.py index 3338ba7..3b0c53a 100644 --- a/parsec/commands/histories/download_history.py +++ b/parsec/commands/histories/download_history.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('download_history') diff --git a/parsec/commands/histories/export_history.py b/parsec/commands/histories/export_history.py index cb4b19a..9f15de5 100644 --- a/parsec/commands/histories/export_history.py +++ b/parsec/commands/histories/export_history.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('export_history') diff --git a/parsec/commands/histories/get_current_history.py b/parsec/commands/histories/get_current_history.py index afd998d..84d9e58 100644 --- a/parsec/commands/histories/get_current_history.py +++ b/parsec/commands/histories/get_current_history.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('get_current_history') diff --git a/parsec/commands/histories/get_histories.py b/parsec/commands/histories/get_histories.py index 44df4da..536f256 100644 --- a/parsec/commands/histories/get_histories.py +++ b/parsec/commands/histories/get_histories.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('get_histories') diff --git a/parsec/commands/histories/get_most_recently_used_history.py b/parsec/commands/histories/get_most_recently_used_history.py index 7e972fc..3772f48 100644 --- a/parsec/commands/histories/get_most_recently_used_history.py +++ b/parsec/commands/histories/get_most_recently_used_history.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('get_most_recently_used_history') diff --git a/parsec/commands/histories/get_status.py b/parsec/commands/histories/get_status.py index f98f63f..7cd183f 100644 --- a/parsec/commands/histories/get_status.py +++ b/parsec/commands/histories/get_status.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('get_status') diff --git a/parsec/commands/histories/show_dataset.py b/parsec/commands/histories/show_dataset.py index 0a5c616..4b542df 100644 --- a/parsec/commands/histories/show_dataset.py +++ b/parsec/commands/histories/show_dataset.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('show_dataset') diff --git a/parsec/commands/histories/show_dataset_collection.py b/parsec/commands/histories/show_dataset_collection.py index 5619649..d3b2121 100644 --- a/parsec/commands/histories/show_dataset_collection.py +++ b/parsec/commands/histories/show_dataset_collection.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('show_dataset_collection') diff --git a/parsec/commands/histories/show_dataset_provenance.py b/parsec/commands/histories/show_dataset_provenance.py index fe6c017..637d92c 100644 --- a/parsec/commands/histories/show_dataset_provenance.py +++ b/parsec/commands/histories/show_dataset_provenance.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('show_dataset_provenance') diff --git a/parsec/commands/histories/show_history.py b/parsec/commands/histories/show_history.py index 5562ec7..224b381 100644 --- a/parsec/commands/histories/show_history.py +++ b/parsec/commands/histories/show_history.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('show_history') diff --git a/parsec/commands/histories/show_matching_datasets.py b/parsec/commands/histories/show_matching_datasets.py index cd880c0..ff87194 100644 --- a/parsec/commands/histories/show_matching_datasets.py +++ b/parsec/commands/histories/show_matching_datasets.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('show_matching_datasets') diff --git a/parsec/commands/histories/undelete_history.py b/parsec/commands/histories/undelete_history.py index 0c6691d..b3d4729 100644 --- a/parsec/commands/histories/undelete_history.py +++ b/parsec/commands/histories/undelete_history.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('undelete_history') diff --git a/parsec/commands/histories/update_dataset.py b/parsec/commands/histories/update_dataset.py index e1c7349..a38d604 100644 --- a/parsec/commands/histories/update_dataset.py +++ b/parsec/commands/histories/update_dataset.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('update_dataset') diff --git a/parsec/commands/histories/update_dataset_collection.py b/parsec/commands/histories/update_dataset_collection.py index 573601d..94c834a 100644 --- a/parsec/commands/histories/update_dataset_collection.py +++ b/parsec/commands/histories/update_dataset_collection.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('update_dataset_collection') diff --git a/parsec/commands/histories/update_history.py b/parsec/commands/histories/update_history.py index 69afbb3..d2049b1 100644 --- a/parsec/commands/histories/update_history.py +++ b/parsec/commands/histories/update_history.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('update_history') diff --git a/parsec/commands/histories/upload_dataset_from_library.py b/parsec/commands/histories/upload_dataset_from_library.py index 688f2ad..1f927c7 100644 --- a/parsec/commands/histories/upload_dataset_from_library.py +++ b/parsec/commands/histories/upload_dataset_from_library.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('upload_dataset_from_library') diff --git a/parsec/commands/jobs/get_jobs.py b/parsec/commands/jobs/get_jobs.py index f884158..a69ec11 100644 --- a/parsec/commands/jobs/get_jobs.py +++ b/parsec/commands/jobs/get_jobs.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('get_jobs') diff --git a/parsec/commands/jobs/get_state.py b/parsec/commands/jobs/get_state.py index e0d5726..3d47a63 100644 --- a/parsec/commands/jobs/get_state.py +++ b/parsec/commands/jobs/get_state.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('get_state') diff --git a/parsec/commands/jobs/search_jobs.py b/parsec/commands/jobs/search_jobs.py index 520bee0..e26c06e 100644 --- a/parsec/commands/jobs/search_jobs.py +++ b/parsec/commands/jobs/search_jobs.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('search_jobs') @@ -13,4 +12,4 @@ def cli(ctx, job_info): """Return jobs for the current user based payload content. """ - return ctx.gi.jobs.search_jobs(json.loads(job_info)) + return ctx.gi.jobs.search_jobs(json_loads(job_info)) diff --git a/parsec/commands/jobs/show_job.py b/parsec/commands/jobs/show_job.py index 1bb03a2..f9b6619 100644 --- a/parsec/commands/jobs/show_job.py +++ b/parsec/commands/jobs/show_job.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('show_job') diff --git a/parsec/commands/libraries/copy_from_dataset.py b/parsec/commands/libraries/copy_from_dataset.py index 2c19179..2c20f0e 100644 --- a/parsec/commands/libraries/copy_from_dataset.py +++ b/parsec/commands/libraries/copy_from_dataset.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('copy_from_dataset') diff --git a/parsec/commands/libraries/create_folder.py b/parsec/commands/libraries/create_folder.py index d2fe059..e7c165f 100644 --- a/parsec/commands/libraries/create_folder.py +++ b/parsec/commands/libraries/create_folder.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('create_folder') diff --git a/parsec/commands/libraries/create_library.py b/parsec/commands/libraries/create_library.py index 23e072a..2fe6951 100644 --- a/parsec/commands/libraries/create_library.py +++ b/parsec/commands/libraries/create_library.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('create_library') diff --git a/parsec/commands/libraries/delete_library.py b/parsec/commands/libraries/delete_library.py index de1ee3a..af13002 100644 --- a/parsec/commands/libraries/delete_library.py +++ b/parsec/commands/libraries/delete_library.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('delete_library') diff --git a/parsec/commands/libraries/delete_library_dataset.py b/parsec/commands/libraries/delete_library_dataset.py index 292ee9a..0f5c0ee 100644 --- a/parsec/commands/libraries/delete_library_dataset.py +++ b/parsec/commands/libraries/delete_library_dataset.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('delete_library_dataset') diff --git a/parsec/commands/libraries/get_folders.py b/parsec/commands/libraries/get_folders.py index 2534f76..888a82f 100644 --- a/parsec/commands/libraries/get_folders.py +++ b/parsec/commands/libraries/get_folders.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('get_folders') diff --git a/parsec/commands/libraries/get_libraries.py b/parsec/commands/libraries/get_libraries.py index 54247d8..1544737 100644 --- a/parsec/commands/libraries/get_libraries.py +++ b/parsec/commands/libraries/get_libraries.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('get_libraries') diff --git a/parsec/commands/libraries/get_library_permissions.py b/parsec/commands/libraries/get_library_permissions.py index e5ad4fb..fc2e2ff 100644 --- a/parsec/commands/libraries/get_library_permissions.py +++ b/parsec/commands/libraries/get_library_permissions.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('get_library_permissions') diff --git a/parsec/commands/libraries/set_library_permissions.py b/parsec/commands/libraries/set_library_permissions.py index 04d9680..0ad84d6 100644 --- a/parsec/commands/libraries/set_library_permissions.py +++ b/parsec/commands/libraries/set_library_permissions.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('set_library_permissions') diff --git a/parsec/commands/libraries/show_dataset.py b/parsec/commands/libraries/show_dataset.py index 7fa2734..c2624c3 100644 --- a/parsec/commands/libraries/show_dataset.py +++ b/parsec/commands/libraries/show_dataset.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('show_dataset') diff --git a/parsec/commands/libraries/show_folder.py b/parsec/commands/libraries/show_folder.py index 22ce57b..e358e70 100644 --- a/parsec/commands/libraries/show_folder.py +++ b/parsec/commands/libraries/show_folder.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('show_folder') diff --git a/parsec/commands/libraries/show_library.py b/parsec/commands/libraries/show_library.py index e68ac15..299e773 100644 --- a/parsec/commands/libraries/show_library.py +++ b/parsec/commands/libraries/show_library.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('show_library') diff --git a/parsec/commands/libraries/upload_file_contents.py b/parsec/commands/libraries/upload_file_contents.py index 5941a31..415e8b3 100644 --- a/parsec/commands/libraries/upload_file_contents.py +++ b/parsec/commands/libraries/upload_file_contents.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('upload_file_contents') diff --git a/parsec/commands/libraries/upload_file_from_local_path.py b/parsec/commands/libraries/upload_file_from_local_path.py index bff16e1..d5d4281 100644 --- a/parsec/commands/libraries/upload_file_from_local_path.py +++ b/parsec/commands/libraries/upload_file_from_local_path.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('upload_file_from_local_path') diff --git a/parsec/commands/libraries/upload_file_from_server.py b/parsec/commands/libraries/upload_file_from_server.py index 17d76b9..8feefa0 100644 --- a/parsec/commands/libraries/upload_file_from_server.py +++ b/parsec/commands/libraries/upload_file_from_server.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('upload_file_from_server') diff --git a/parsec/commands/libraries/upload_file_from_url.py b/parsec/commands/libraries/upload_file_from_url.py index 2a74e16..f637a85 100644 --- a/parsec/commands/libraries/upload_file_from_url.py +++ b/parsec/commands/libraries/upload_file_from_url.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('upload_file_from_url') diff --git a/parsec/commands/libraries/upload_from_galaxy_filesystem.py b/parsec/commands/libraries/upload_from_galaxy_filesystem.py index 9210189..fb8bb3c 100644 --- a/parsec/commands/libraries/upload_from_galaxy_filesystem.py +++ b/parsec/commands/libraries/upload_from_galaxy_filesystem.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('upload_from_galaxy_filesystem') diff --git a/parsec/commands/quotas/get_quotas.py b/parsec/commands/quotas/get_quotas.py index 6c6bc47..60b3ba7 100644 --- a/parsec/commands/quotas/get_quotas.py +++ b/parsec/commands/quotas/get_quotas.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('get_quotas') diff --git a/parsec/commands/quotas/show_quota.py b/parsec/commands/quotas/show_quota.py index 3f10651..b6ff221 100644 --- a/parsec/commands/quotas/show_quota.py +++ b/parsec/commands/quotas/show_quota.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('show_quota') diff --git a/parsec/commands/roles/get_roles.py b/parsec/commands/roles/get_roles.py index ab17793..3a28ed9 100644 --- a/parsec/commands/roles/get_roles.py +++ b/parsec/commands/roles/get_roles.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('get_roles') diff --git a/parsec/commands/roles/show_role.py b/parsec/commands/roles/show_role.py index 77ee243..484b3e9 100644 --- a/parsec/commands/roles/show_role.py +++ b/parsec/commands/roles/show_role.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('show_role') diff --git a/parsec/commands/tool_data/delete_data_table.py b/parsec/commands/tool_data/delete_data_table.py index a8cd087..22fbd9b 100644 --- a/parsec/commands/tool_data/delete_data_table.py +++ b/parsec/commands/tool_data/delete_data_table.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('delete_data_table') diff --git a/parsec/commands/tool_data/get_data_tables.py b/parsec/commands/tool_data/get_data_tables.py index 33fc5b5..322866c 100644 --- a/parsec/commands/tool_data/get_data_tables.py +++ b/parsec/commands/tool_data/get_data_tables.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('get_data_tables') diff --git a/parsec/commands/tool_data/reload_data_table.py b/parsec/commands/tool_data/reload_data_table.py index 3d942cc..7a89414 100644 --- a/parsec/commands/tool_data/reload_data_table.py +++ b/parsec/commands/tool_data/reload_data_table.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('reload_data_table') diff --git a/parsec/commands/tool_data/show_data_table.py b/parsec/commands/tool_data/show_data_table.py index f86c614..dac24f6 100644 --- a/parsec/commands/tool_data/show_data_table.py +++ b/parsec/commands/tool_data/show_data_table.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('show_data_table') diff --git a/parsec/commands/tools/get_tool_panel.py b/parsec/commands/tools/get_tool_panel.py index 12d1374..1c41ec2 100644 --- a/parsec/commands/tools/get_tool_panel.py +++ b/parsec/commands/tools/get_tool_panel.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('get_tool_panel') diff --git a/parsec/commands/tools/get_tools.py b/parsec/commands/tools/get_tools.py index 08be413..b816a3b 100644 --- a/parsec/commands/tools/get_tools.py +++ b/parsec/commands/tools/get_tools.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('get_tools') diff --git a/parsec/commands/tools/install_dependencies.py b/parsec/commands/tools/install_dependencies.py index a92244f..9f96302 100644 --- a/parsec/commands/tools/install_dependencies.py +++ b/parsec/commands/tools/install_dependencies.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('install_dependencies') diff --git a/parsec/commands/tools/paste_content.py b/parsec/commands/tools/paste_content.py index c404abf..d61dd90 100644 --- a/parsec/commands/tools/paste_content.py +++ b/parsec/commands/tools/paste_content.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('paste_content') diff --git a/parsec/commands/tools/put_url.py b/parsec/commands/tools/put_url.py index 860f39e..d0564cd 100644 --- a/parsec/commands/tools/put_url.py +++ b/parsec/commands/tools/put_url.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('put_url') diff --git a/parsec/commands/tools/run_tool.py b/parsec/commands/tools/run_tool.py index d3281d9..0a90a7a 100644 --- a/parsec/commands/tools/run_tool.py +++ b/parsec/commands/tools/run_tool.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('run_tool') @@ -15,4 +14,4 @@ def cli(ctx, history_id, tool_id, tool_inputs): """Runs tool specified by ``tool_id`` in history indicated by ``history_id`` with inputs from ``dict`` ``tool_inputs``. """ - return ctx.gi.tools.run_tool(history_id, tool_id, json.loads(tool_inputs)) + return ctx.gi.tools.run_tool(history_id, tool_id, json_loads(tool_inputs)) diff --git a/parsec/commands/tools/show_tool.py b/parsec/commands/tools/show_tool.py index 8237096..52ec436 100644 --- a/parsec/commands/tools/show_tool.py +++ b/parsec/commands/tools/show_tool.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('show_tool') diff --git a/parsec/commands/tools/upload_file.py b/parsec/commands/tools/upload_file.py index 8669e75..0fa5a64 100644 --- a/parsec/commands/tools/upload_file.py +++ b/parsec/commands/tools/upload_file.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('upload_file') diff --git a/parsec/commands/tools/upload_from_ftp.py b/parsec/commands/tools/upload_from_ftp.py index 1dba1ee..deef6a1 100644 --- a/parsec/commands/tools/upload_from_ftp.py +++ b/parsec/commands/tools/upload_from_ftp.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('upload_from_ftp') diff --git a/parsec/commands/toolshed/get_repositories.py b/parsec/commands/toolshed/get_repositories.py index 2a958fc..ba028d3 100644 --- a/parsec/commands/toolshed/get_repositories.py +++ b/parsec/commands/toolshed/get_repositories.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('get_repositories') diff --git a/parsec/commands/toolshed/install_repository_revision.py b/parsec/commands/toolshed/install_repository_revision.py index 6337027..694f14c 100644 --- a/parsec/commands/toolshed/install_repository_revision.py +++ b/parsec/commands/toolshed/install_repository_revision.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('install_repository_revision') diff --git a/parsec/commands/toolshed/show_repository.py b/parsec/commands/toolshed/show_repository.py index f99217d..0e94ec9 100644 --- a/parsec/commands/toolshed/show_repository.py +++ b/parsec/commands/toolshed/show_repository.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('show_repository') diff --git a/parsec/commands/users/create_local_user.py b/parsec/commands/users/create_local_user.py index 376705c..7209757 100644 --- a/parsec/commands/users/create_local_user.py +++ b/parsec/commands/users/create_local_user.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('create_local_user') diff --git a/parsec/commands/users/create_remote_user.py b/parsec/commands/users/create_remote_user.py index c063550..039e8a0 100644 --- a/parsec/commands/users/create_remote_user.py +++ b/parsec/commands/users/create_remote_user.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('create_remote_user') diff --git a/parsec/commands/users/create_user_apikey.py b/parsec/commands/users/create_user_apikey.py index 97d0ba2..bb367e2 100644 --- a/parsec/commands/users/create_user_apikey.py +++ b/parsec/commands/users/create_user_apikey.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('create_user_apikey') diff --git a/parsec/commands/users/delete_user.py b/parsec/commands/users/delete_user.py index e762221..12d159c 100644 --- a/parsec/commands/users/delete_user.py +++ b/parsec/commands/users/delete_user.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('delete_user') diff --git a/parsec/commands/users/get_current_user.py b/parsec/commands/users/get_current_user.py index d3a6702..ae65b17 100644 --- a/parsec/commands/users/get_current_user.py +++ b/parsec/commands/users/get_current_user.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('get_current_user') diff --git a/parsec/commands/users/get_users.py b/parsec/commands/users/get_users.py index 08478b9..c761bdb 100644 --- a/parsec/commands/users/get_users.py +++ b/parsec/commands/users/get_users.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('get_users') diff --git a/parsec/commands/users/show_user.py b/parsec/commands/users/show_user.py index f1c325c..e859f92 100644 --- a/parsec/commands/users/show_user.py +++ b/parsec/commands/users/show_user.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('show_user') diff --git a/parsec/commands/visual/get_visualizations.py b/parsec/commands/visual/get_visualizations.py index 5b8c6bc..1537d72 100644 --- a/parsec/commands/visual/get_visualizations.py +++ b/parsec/commands/visual/get_visualizations.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('get_visualizations') diff --git a/parsec/commands/visual/show_visualization.py b/parsec/commands/visual/show_visualization.py index ae60a93..c4754d2 100644 --- a/parsec/commands/visual/show_visualization.py +++ b/parsec/commands/visual/show_visualization.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('show_visualization') diff --git a/parsec/commands/workflows/cancel_invocation.py b/parsec/commands/workflows/cancel_invocation.py index 9b1ec82..dea8815 100644 --- a/parsec/commands/workflows/cancel_invocation.py +++ b/parsec/commands/workflows/cancel_invocation.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('cancel_invocation') diff --git a/parsec/commands/workflows/delete_workflow.py b/parsec/commands/workflows/delete_workflow.py index b074dfa..372463b 100644 --- a/parsec/commands/workflows/delete_workflow.py +++ b/parsec/commands/workflows/delete_workflow.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('delete_workflow') diff --git a/parsec/commands/workflows/export_workflow_dict.py b/parsec/commands/workflows/export_workflow_dict.py index 2b11e45..e50e577 100644 --- a/parsec/commands/workflows/export_workflow_dict.py +++ b/parsec/commands/workflows/export_workflow_dict.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('export_workflow_dict') diff --git a/parsec/commands/workflows/export_workflow_json.py b/parsec/commands/workflows/export_workflow_json.py index 88e7e80..6137bdf 100644 --- a/parsec/commands/workflows/export_workflow_json.py +++ b/parsec/commands/workflows/export_workflow_json.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('export_workflow_json') diff --git a/parsec/commands/workflows/export_workflow_to_local_path.py b/parsec/commands/workflows/export_workflow_to_local_path.py index 7918bed..e6ee73f 100644 --- a/parsec/commands/workflows/export_workflow_to_local_path.py +++ b/parsec/commands/workflows/export_workflow_to_local_path.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('export_workflow_to_local_path') diff --git a/parsec/commands/workflows/get_invocations.py b/parsec/commands/workflows/get_invocations.py index fcc3f59..5e2b7f8 100644 --- a/parsec/commands/workflows/get_invocations.py +++ b/parsec/commands/workflows/get_invocations.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('get_invocations') diff --git a/parsec/commands/workflows/get_workflow_inputs.py b/parsec/commands/workflows/get_workflow_inputs.py index a90ff89..12e92f7 100644 --- a/parsec/commands/workflows/get_workflow_inputs.py +++ b/parsec/commands/workflows/get_workflow_inputs.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('get_workflow_inputs') diff --git a/parsec/commands/workflows/get_workflows.py b/parsec/commands/workflows/get_workflows.py index b5d3ba5..a77f531 100644 --- a/parsec/commands/workflows/get_workflows.py +++ b/parsec/commands/workflows/get_workflows.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('get_workflows') diff --git a/parsec/commands/workflows/import_shared_workflow.py b/parsec/commands/workflows/import_shared_workflow.py index 21890ca..82fca96 100644 --- a/parsec/commands/workflows/import_shared_workflow.py +++ b/parsec/commands/workflows/import_shared_workflow.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('import_shared_workflow') diff --git a/parsec/commands/workflows/import_workflow_dict.py b/parsec/commands/workflows/import_workflow_dict.py index 7d41e9e..5930c69 100644 --- a/parsec/commands/workflows/import_workflow_dict.py +++ b/parsec/commands/workflows/import_workflow_dict.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('import_workflow_dict') @@ -13,4 +12,4 @@ def cli(ctx, workflow_dict): """Imports a new workflow given a dictionary representing a previously exported workflow. """ - return ctx.gi.workflows.import_workflow_dict(json.loads(workflow_dict)) + return ctx.gi.workflows.import_workflow_dict(json_loads(workflow_dict)) diff --git a/parsec/commands/workflows/import_workflow_from_local_path.py b/parsec/commands/workflows/import_workflow_from_local_path.py index 615f76f..d057aba 100644 --- a/parsec/commands/workflows/import_workflow_from_local_path.py +++ b/parsec/commands/workflows/import_workflow_from_local_path.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('import_workflow_from_local_path') diff --git a/parsec/commands/workflows/import_workflow_json.py b/parsec/commands/workflows/import_workflow_json.py index 8b395b6..4e84d84 100644 --- a/parsec/commands/workflows/import_workflow_json.py +++ b/parsec/commands/workflows/import_workflow_json.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('import_workflow_json') diff --git a/parsec/commands/workflows/invoke_workflow.py b/parsec/commands/workflows/invoke_workflow.py index baaafb3..95e9628 100644 --- a/parsec/commands/workflows/invoke_workflow.py +++ b/parsec/commands/workflows/invoke_workflow.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('invoke_workflow') diff --git a/parsec/commands/workflows/run_invocation_step_action.py b/parsec/commands/workflows/run_invocation_step_action.py index 0e7953e..de2d342 100644 --- a/parsec/commands/workflows/run_invocation_step_action.py +++ b/parsec/commands/workflows/run_invocation_step_action.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('run_invocation_step_action') diff --git a/parsec/commands/workflows/run_workflow.py b/parsec/commands/workflows/run_workflow.py index b519ca1..e6e2874 100644 --- a/parsec/commands/workflows/run_workflow.py +++ b/parsec/commands/workflows/run_workflow.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('run_workflow') diff --git a/parsec/commands/workflows/show_invocation.py b/parsec/commands/workflows/show_invocation.py index 06f9124..6771095 100644 --- a/parsec/commands/workflows/show_invocation.py +++ b/parsec/commands/workflows/show_invocation.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('show_invocation') diff --git a/parsec/commands/workflows/show_invocation_step.py b/parsec/commands/workflows/show_invocation_step.py index c56c99c..f3064e3 100644 --- a/parsec/commands/workflows/show_invocation_step.py +++ b/parsec/commands/workflows/show_invocation_step.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('show_invocation_step') diff --git a/parsec/commands/workflows/show_workflow.py b/parsec/commands/workflows/show_workflow.py index c48893d..1b9bc94 100644 --- a/parsec/commands/workflows/show_workflow.py +++ b/parsec/commands/workflows/show_workflow.py @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('show_workflow') diff --git a/scripts/autobuilder.py b/scripts/autobuilder.py index 91d16aa..7c19282 100644 --- a/scripts/autobuilder.py +++ b/scripts/autobuilder.py @@ -278,7 +278,7 @@ def process_arg(k, v, param_type, real_type): if v != 'None': method_signature_kwargs.append("%s=%s" % (k, v)) if real_type == 'dict': - v = 'json.loads(%s)' % v + v = 'json_loads(%s)' % v method_exec_kwargs.append('%s=%s' % (k, k)) # TODO: refactor @@ -293,7 +293,7 @@ def process_arg(k, v, param_type, real_type): tk = k method_signature_args.append(tk) if real_type == 'dict': - tk = 'json.loads(%s)' % k + tk = 'json_loads(%s)' % k method_exec_args.append(tk) data['click_arguments'] += self.__click_argument(name=k, ptype=param_type) diff --git a/scripts/templates/click.txt b/scripts/templates/click.txt index be582db..fc22c3d 100644 --- a/scripts/templates/click.txt +++ b/scripts/templates/click.txt @@ -1,6 +1,5 @@ import click -import json -from parsec.cli import pass_context +from parsec.cli import pass_context, json_loads from parsec.decorators import bioblend_exception, dict_output @click.command('%(command_name)s') From 9e299699f4ed02ee401bdd5aeda7e88ef1350c92 Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Tue, 2 May 2017 23:08:22 +0000 Subject: [PATCH 23/80] extended example of launching a workflow --- README.rst | 558 +++++++++++++----- parsec/cli.py | 3 + parsec/commands/histories/update_dataset.py | 2 +- .../histories/update_dataset_collection.py | 2 +- parsec/commands/histories/update_history.py | 2 +- parsec/commands/tools/upload_file.py | 2 +- parsec/commands/workflows/invoke_workflow.py | 9 +- scripts/autobuilder.py | 3 + 8 files changed, 422 insertions(+), 159 deletions(-) diff --git a/README.rst b/README.rst index 53c4fdc..95f3ee3 100644 --- a/README.rst +++ b/README.rst @@ -39,9 +39,11 @@ Connect to a Galaxy server To connect to a running Galaxy server, you will need an account on that Galaxy instance and an API key for the account. Instructions on getting an API key can be found at http://wiki.galaxyproject.org/Learn/API . -First initialize the parsec configuration file in ``~/.parsec.yml`` via the ``parsec`` command ``config_init``:: +First initialize the parsec configuration file in ``~/.parsec.yml`` via the ``parsec`` command ``config_init`` - user@host:~$ parsec config_init +.. code-block:: shell + + $ parsec config_init No parsec config file found, continuing anyway... Wrote configuration template to ~/.paresc.yml, please open with editor and fill out. @@ -107,6 +109,7 @@ After installation, running ``parsec`` will present you with a list of sub-comma Each of these commands has more commands under it: .. code-block:: shell + $ parsec histories Usage: parsec histories [OPTIONS] COMMAND [ARGS]... @@ -132,11 +135,18 @@ Each of these commands has more commands under it: Viewing Histories and Datasets ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -To get information on the Histories currently in your account, call +To get information on the Histories currently in your account, call ``history +get_histories``, and we will pipe this to a ``jq`` command which selects the +first element from the JSON array. .. code-block:: shell $ parsec histories get_histories | jq .[0] + +Parsec will respond with information about your first history + +.. code-block:: json + { "name": "BuildID=Manual-2017.05.02T16:13 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=CCS Source=Jenkins", "url": "/galaxy/api/histories/548c0777ac615645", @@ -153,75 +163,176 @@ To get information on the Histories currently in your account, call "deleted": false } -This returns a list of dictionaries containing basic metadata, including the id -and name of each History. To get more detailed information about a History we -can pass its id to the ``parsec histories_show_history`` script:: +This may not be all of the information you were expecting about your history. +In that case, you might want to call ``show_history`` which will show you more +details about a single history. You can either manually type ``parsec histories +show_history 548c0777ac615645``, or we can do this in batch: - user@host:~$ parsec histories_show_history f3c2b0f3ecac9f02 - { - "importable": false, - "create_time": "2015-02-27T23:01:11.766560", - "contents_url": "/api/histories/f3c2b0f3ecac9f02/contents", - "size": 0, - "user_id": "ebfb8f50c6abde6d", - "username_and_slug": null, - "annotation": null, - "state_details": { - "paused": 0, - "ok": 0, - "failed_metadata": 0, - "upload": 0, - "discarded": 0, - "resubmitted": 0, - "running": 0, - "setting_metadata": 0, - "error": 0, - "new": 0, - "queued": 0, - "empty": 0 - }, - "state": "new", - "empty": true, - "update_time": "2015-02-27T23:01:11.766577", - "tags": [], - "deleted": false, - "genome_build": null, - 'nice_size': '93.5 MB', - "slug": null, - 'name': 'RNAseq_DGE_BASIC_Prep', - "url": "/api/histories/f3c2b0f3ecac9f02", - "state_ids": { - "paused": [], - "ok": [ - 'd6842fb08a76e351', - '10a4b652da44e82a', - '81c601a2549966a0', - 'a154f05e3bcee26b', - '1352fe19ddce0400', - '06d549c52d753e53', - '9ec54455d6279cc7' - ], - "failed_metadata": [], - "upload": [], - "discarded": [], - "resubmitted": [], - "running": [], - "setting_metadata": [], - "error": [], - "new": [], - "queued": [], - "empty": [] - }, - "published": false, - "model_class": "History", - "purged": false - } +.. code-block:: shell -.. _example-dataset: + $ parsec histories get_histories | jq .[0].id | xargs -n 1 parsec histories show_history + +Which pulls out the first history, select the ``id`` attribute, before passing it to ``xargs``. +If you have not used it before, ``xargs`` allows us to execute multiple +commands for some input data. Here we execute the command ``parsec histories +show_history`` for each line of input (i.e. each ID returned to us from the jq call). +``xargs -n 1`` ensures that we will only pass a single ID to a +single call of ``show_history``. If you were to use ``jq .[].id`` instead of +``jq .[0].id`` it would output the IDs for every history you own. You could +then pipe this to xargs and run ``show_history`` on all of your histories! + +.. code-block:: json + + { + "annotation": null, + "contents_url": "/galaxy/api/histories/548c0777ac615645/contents", + "create_time": "2017-05-02T16:18:21.285382", + "deleted": false, + "empty": false, + "genome_build": null, + "id": "548c0777ac615645", + "importable": true, + "model_class": "History", + "name": "BuildID=Manual-2017.05.02T16:13 WF=PAP_2017_Comparative_(v1.0)_BOOTSTRAPPED Org=CCS Source=Jenkins", + "published": false, + "purged": false, + "size": 34760258, + "slug": "buildidmanual-20170502t1613-wfpap2017comparativev10bootstrapped-orgccs-sourcejenkins", + "state": "ok", + "state_details": { + "discarded": 0, + "empty": 0, + "error": 0, + "failed_metadata": 0, + "new": 0, + "ok": 29, + "paused": 0, + "queued": 0, + "running": 0, + "setting_metadata": 0, + "upload": 0 + }, + "state_ids": { + "discarded": [ + "a6cc986453fae8ba", + "f2f9b7b017f20578", + "70eb5af78c588bd1" + ], + "empty": [], + "error": [ + "d643e34e1114cc52", + "98ae3d35d73f82c9" + ], + "failed_metadata": [], + "new": [], + "ok": [ + "e510305efbee5f49", + "0d595b7c2b6e9b93", + "d04ac6f949ae266c", + "175f283ddaeca39c", + "b34432b8a0847c04", + "ea7ff5323ddebcb8", + "3e40a393efafc45c", + "7ce5ec5d51ef85cb", + "577e4242cdfbe1aa", + "193d15527d13f45e", + "4543f9456af7f0df", + "5e1293df75b4f95b", + "a57bae35eca5fbfe", + "6c306b2ed4533f1f", + "97c5f81b159505f0", + "64d1d8e46b4554bd", + "8e9432496d7e2b43", + "5c8579257c579aae", + "243ad216fbfa268e", + "8336d9eb27b27677", + "a1d4cc61bdba629d", + "7f93a80890822fa9", + "c479b351902302e2", + "36b60fb58ad24a71", + "041dd3cb6879f1f7", + "36992e90715c9c77", + "4bddfe152467e972", + "2d9f5c0c36d89e10", + "e53ad6f3133b2816" + ], + "paused": [ + "4a8143557292a233", + "b0f8a75aa6be2c1d" + ], + "queued": [], + "running": [], + "setting_metadata": [], + "upload": [] + }, + "tags": [ + "Automated", + "Annotation", + "BICH464" + ], + "update_time": "2017-05-02T16:49:07.941097", + "url": "/galaxy/api/histories/548c0777ac615645", + "user_id": "f570ade6e7840ba0", + "username_and_slug": "u/eric-rasche/h/buildidmanual-20170502t1613-wfpap2017comparativev10bootstrapped-orgccs-sourcejenkins" + } + +So much metadata to play with and filter on! Note that many of these commands +have additional flags, for example ``parsec histories show_history --help`` +will tell us that we can also pass the --contents option to retrieve a list of datasets in that history, even filtering on their visibility. + +.. code-block:: shell + + $ parsec histories show_history --help + Usage: parsec histories show_history [OPTIONS] HISTORY_ID + + Get details of a given history. By default, just get the history meta + information. + + Options: + --contents When ``True``, the complete list of datasets in the given + history. + --deleted TEXT Used when contents=True, includes deleted datasets in + history dataset list + --visible TEXT Used when contents=True, includes only visible datasets in + history dataset list + --details TEXT Used when contents=True, includes dataset details. Set to + 'all' for the most information + +Thus with a simple query + +.. code-block:: shell + + $ parsec histories show_history 548c0777ac615645 --contents --deleted True | jq -S '.[0]' + +We see the first deleted dataset in the history. + +.. code-block:: shell + + { + "create_time": "2017-05-02T16:18:54.272050", + "dataset_id": "93c926a0dabafde3", + "deleted": true, + "extension": "fasta", + "hid": 30, + "history_content_type": "dataset", + "history_id": "548c0777ac615645", + "id": "d643e34e1114cc52", + "name": "Feature Sequence Export Unique on data 27 and data 20", + "purged": false, + "state": "error", + "type": "file", + "type_id": "dataset-d643e34e1114cc52", + "update_time": "2017-05-02T16:47:57.807506", + "url": "/galaxy/api/histories/548c0777ac615645/contents/d643e34e1114cc52", + "visible": true + } + + +This gives us a dictionary containing the History's metadata. With ``contents=False`` (the default), we only get a list of ids of the datasets contained within the History; with ``contents=True`` we would get metadata on each dataset. We can also directly access more detailed information on a particular dataset by passing its id to the ``show_dataset`` method: -This gives us a dictionary containing the History's metadata. With ``contents=False`` (the default), we only get a list of ids of the datasets contained within the History; with ``contents=True`` we would get metadata on each dataset. We can also directly access more detailed information on a particular dataset by passing its id to the ``show_dataset`` method:: +.. code-block:: shell - user@host:~$ parsec datasets_show_dataset 10a4b652da44e82a + $ parsec datasets_show_dataset 10a4b652da44e82a { "accessible": true, "annotation": null, @@ -262,46 +373,46 @@ This gives us a dictionary containing the History's metadata. With ``contents=Fa "visualizations": [] } -View Data Libraries -~~~~~~~~~~~~~~~~~~~ -Methods for accessing Data Libraries are grouped under ``GalaxyInstance.libraries.*``. Most Data Library methods are available to all users, but as only administrators can create new Data Libraries within Galaxy, the ``create_folder`` and ``create_library`` methods can only be called using an API key belonging to an admin account. -We can view the Data Libraries available to our account using:: +On JQ +----- - user@host:~$ parsec libraries_get_libraries - [ - { - "can_user_add": false, - "description": "RNA-Seq workshop data", - "deleted": false, - "can_user_manage": false, - "can_user_modify": false, - "public": true, - "synopsis": "Data for the RNA-Seq tutorial", - "root_folder_id": "Ff2db41e1fa331b3e", - "model_class": "Library", - "id": "f2db41e1fa331b3e", - "name": "RNA-seq workshop data" - } - ] +It is worth it to look at some of the things possible with JQ for a moment. The +above example may not be so exciting at first blush, but you can do incredible +things with the combination of parsec, jq, and xargs. Here are some examples to consider: -This gives a list of metadata dictionaries with basic information on each library. We can get more information on a particular Data Library by passing its id to the ``show_library`` method:: +- find all histories with a public link, but not published in the + shared-histories section, and print out their history name and the shared + link. - user@host:~$ parsec libraries_get_libraries - { - "can_user_add": false, - "description": "RNA-Seq workshop data", - "deleted": false, - "can_user_manage": false, - "can_user_modify": false, - "public": true, - "synopsis": "Data for the RNA-Seq tutorial", - "root_folder_id": "Ff2db41e1fa331b3e", - "model_class": "Library", - "id": "f2db41e1fa331b3e", - "name": "RNA-seq workshop data" - } + .. code-block:: shell + + $ parsec histories get_histories | \ + jq .[].id | \ + xargs -n 1 parsec histories show_history | \ + jq '. | select(.published == false) | select(.importable == true) | [.published, .importable, .id, .username_and_slug] | @tsv' -r + +- reset the API keys for 30 users at once. + + .. code-block:: shell + + $ parsec users get_users | \ + jq '.[] | \ + select(.username | contains("elenimijalis")) | .id' | \ + xargs -n 1 parsec users create_user_apikey + +- download all of the OK datasets in a set of histories + + .. code-block:: shell + + $ parsec histories get_histories | \ + jq .[].id | \ # Or other, more complex filtering? + xargs -n 1 parsec histories show_history | \ # Get history details + jq .state_ids.ok[] | \ # Find OK datasets + xargs -n 1 parsec datasets download_dataset --file_path '.' --use_default_filename # Download + +.. _example-dataset: View Workflows @@ -309,9 +420,11 @@ View Workflows Methods for accessing workflows are grouped under ``GalaxyInstance.workflows.*``. -To get information on the Workflows currently in your account, use:: +To get information on the Workflows currently in your account, use: - user@host:~$ parsec workflows_get_workflows +.. code-block:: shell + + $ parsec workflows get_workflows [ { 'id': 'e8b85ad72aefca86', @@ -325,49 +438,47 @@ To get information on the Workflows currently in your account, use:: } ] -This returns a list of metadata dictionaries. We can get the details of a particular Workflow, including its steps, by passing its id to the ``show_workflow`` method:: - - user@host:~$ parsec workflows_show_workflow e8b85ad72aefca86 - {'id': 'e8b85ad72aefca86', - 'inputs': - {'252': - {'label': 'Input RNA-seq fastq', - 'value': '' - } - }, - 'name': u"TopHat + cufflinks part 1", - 'steps': - {'250': - {'id': 250, - 'input_steps': - {'input1': - {'source_step': 252, - 'step_output': 'output' - } - }, - 'tool_id': 'tophat', - 'type': 'tool' - }, - '251': - {'id': 251, - 'input_steps': - {'input': - {'source_step': 250, - 'step_output': 'accepted_hits' - } - }, - 'tool_id': 'cufflinks', - 'type': 'tool' - }, - '252': - {'id': 252, - 'input_steps': {}, - 'tool_id': None, - 'type': 'data_input' - } - }, - 'url': '/api/workflows/e8b85ad72aefca86' - } +For example, to further investigate a workflow, we can request: + +.. code-block:: shell + + $ parsec workflows show_workflow ded67e5aa1371841 | jq 'del(.steps)' + +The workflow output is generally quite large as it embeds a full copy of the +workflow. In the above JQ command I have removed the ``steps`` attribute from +the output for brevity. + +.. code-block:: json + + { + "annotation": "", + "model_class": "StoredWorkflow", + "latest_workflow_uuid": "94c40212-c4bb-43b7-a43b-eadc1a3b2894", + "id": "ded67e5aa1371841", + "url": "/galaxy/api/workflows/ded67e5aa1371841", + "deleted": false, + "tags": [], + "owner": "eric-rasche", + "name": "PAP 2017 Functional (v8.15)", + "inputs": { + "0": { + "value": "", + "uuid": "9397916e-afb7-4e48-b89e-d4c99bf202de", + "label": "Apollo Organism JSON File" + }, + "2": { + "value": "", + "uuid": "eca835c6-328a-4698-a387-d0719b24d19d", + "label": "Genome Sequence" + }, + "1": { + "value": "", + "uuid": "5511d038-e96b-49b2-998a-d037935f6e06", + "label": "Annotation Set" + } + }, + "published": false + } View Users @@ -377,11 +488,11 @@ Methods for managing users are grouped under ``GalaxyInstance.users.*``. User ma To get a list of users, call:: - user@host:~$ parsec users_get_users + $ parsec users get_users [ { - "username": "test", - "model_class": "User", + "username": "test", + "model_class": "User", "email": "test@local.host", "id": "f2db41e1fa331b3e" }, @@ -389,7 +500,6 @@ To get a list of users, call:: ] - .. _Galaxy: (http://galaxyproject.org/) .. _GitHub: https://github.com/ @@ -397,6 +507,146 @@ To get a list of users, call:: In Depth Example ~~~~~~~~~~~~~~~~ -:: +As a more detailed example, we'll launch a simple workflow. + +Step 1. What are the Inputs +^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. code-block:: shell + + $ parsec workflows show_workflow ded67e5aa1371841 | jq .inputs > inputs.json + +In practice this file probably looks similar to this: + +.. code-block:: json + + { + "0": { + "value": "", + "uuid": "9397916e-afb7-4e48-b89e-d4c99bf202de", + "label": "Apollo Organism JSON File" + }, + "2": { + "value": "", + "uuid": "eca835c6-328a-4698-a387-d0719b24d19d", + "label": "Genome Sequence" + }, + "1": { + "value": "", + "uuid": "5511d038-e96b-49b2-998a-d037935f6e06", + "label": "Annotation Set" + } + } + + +Step 2: Prepare History and Load Datasets +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +First, we'll create a history to manage all of our work: + +.. code-block:: shell + + $ parsec histories create_history | jq .id | xargs -n 1 parsec histories update_history --name 'Parsec test' + +This could be done in one step, but this shows another example of piping commands together. Next we have to fetch some datasets. You could upload them: + +But in my case, I need to run a tool which produces them: + +.. code-block:: shell + + JOB_ID=$(parsec tools run_tool 0d17c6f8cd8d49a5 edu.tamu.cpt2.webapollo.export \ + '{"org_source|source_select": "direct", "org_source|org_raw": "Miro"}' | \ + jq .id) + + $ parsec jobs show_job .outputs $JOB_ID + +By storing the job ID in a variable, we can make repeated requests to check on +it. The second parsec statement fetches the output datasets from this step. + +.. code-block:: json + + { + "fasta_out": { + "id": "61513e15ce98c986", + "src": "hda", + "uuid": "0de1442b-c410-4a38-b9ca-49cff973d9b8" + }, + "gff_out": { + "id": "62ee69adcf74378c", + "src": "hda", + "uuid": "887aaf6f-ed07-4ee8-a396-c16612f83d83" + }, + "json_out": { + "id": "1f73e96543934ac8", + "src": "hda", + "uuid": "3be3d364-83c5-4a23-87fa-ebd8c27f2094" + } + } + + +Step 3: Invoking the Workflow +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Remembering back to the inputs in step 1, we will match them up and create an ``inputs.json`` file + +- 0 / organism json file => json_out +- 1 / genome sequence => gff_out +- 2 / annotation set => fasta_out + +This gives us an inputs.json that looks like so: + +.. code-block:: json + + { + "0": { + "id": "1f73e96543934ac8", + "src": "hda" + }, + "1": { + "id": "62ee69adcf74378c", + "src": "hda" + }, + "2": { + "id": "61513e15ce98c986", + "src": "hda" + } + } + +We can now invoke our workflow using parsec! +Since the inputs is a JSON parameter, it can be supplied many different ways for your convenience. All of the following behave identically. + +.. code-block:: shell + + $ cat params.json | parsec jobs search_jobs -; # Stdin + $ parsec jobs search_jobs params.json; # Filename + $ parsec jobs search_jobs $(cat params.json); # String argument + +Running the invocation: + +.. code-block:: shell + + $ parsec workflows invoke_workflow ded67e5aa1371841 --inputs inputs.json --history_id 0d17c6f8cd8d49a5 + +Produces a very succinct workflow launch output: + +.. code-block:: json + + { + "uuid": "94246003-2f8b-11e7-9427-20474784cc00", + "state": "new", + "workflow_id": "3daf5606d767a471", + "id": "c7f60cfda02f0f46", + "update_time": "2017-05-02T23:03:39.693288", + "model_class": "WorkflowInvocation", + "history_id": "0d17c6f8cd8d49a5" + } + +We can now use parsec to check on the status of all of the datasets: + +.. code-block:: shell - parsec histories_get_most_recently_used_history | jq '.state_ids.error[]' | $TODO_dataset_to_tool | $TODO_rerun_job + $ parsec workflows show_invocation 3daf5606d767a471 c7f60cfda02f0f46 | jq .steps[].state | sort | uniq -c + 3 "running" + 72 "new" + 3 null + 1 "ok" diff --git a/parsec/cli.py b/parsec/cli.py index 95f5918..e2e8a8a 100644 --- a/parsec/cli.py +++ b/parsec/cli.py @@ -113,6 +113,9 @@ def parsec(ctx, galaxy_instance, verbose): def json_loads(data): """Load json data, allowing - to represent stdin.""" + if data is None: + return "" + if data == "-": return json.load(sys.stdin) elif os.path.exists(data): diff --git a/parsec/commands/histories/update_dataset.py b/parsec/commands/histories/update_dataset.py index a38d604..5d5cb2f 100644 --- a/parsec/commands/histories/update_dataset.py +++ b/parsec/commands/histories/update_dataset.py @@ -35,7 +35,7 @@ @pass_context @bioblend_exception @dict_output -def cli(ctx, history_id, dataset_id): +def cli(ctx, history_id, dataset_id, annotation=None, deleted=None, genome_build=None, name=None, visible=None): """Update history dataset metadata. Some of the attributes that can be modified are documented below. """ kwargs = {} diff --git a/parsec/commands/histories/update_dataset_collection.py b/parsec/commands/histories/update_dataset_collection.py index 94c834a..01a5f71 100644 --- a/parsec/commands/histories/update_dataset_collection.py +++ b/parsec/commands/histories/update_dataset_collection.py @@ -25,7 +25,7 @@ @pass_context @bioblend_exception @dict_output -def cli(ctx, history_id, dataset_collection_id): +def cli(ctx, history_id, dataset_collection_id, deleted=None, name=None, visible=None): """Update history dataset collection metadata. Some of the attributes that can be modified are documented below. """ kwargs = {} diff --git a/parsec/commands/histories/update_history.py b/parsec/commands/histories/update_history.py index d2049b1..e435655 100644 --- a/parsec/commands/histories/update_history.py +++ b/parsec/commands/histories/update_history.py @@ -45,7 +45,7 @@ @pass_context @bioblend_exception @dict_output -def cli(ctx, history_id, tags=None): +def cli(ctx, history_id, annotation=None, deleted=None, importable=None, name=None, published=None, purged=None, tags=None): """Update history metadata information. Some of the attributes that can be modified are documented below. """ kwargs = {} diff --git a/parsec/commands/tools/upload_file.py b/parsec/commands/tools/upload_file.py index 0fa5a64..ee566cd 100644 --- a/parsec/commands/tools/upload_file.py +++ b/parsec/commands/tools/upload_file.py @@ -35,7 +35,7 @@ @pass_context @bioblend_exception @dict_output -def cli(ctx, path, history_id): +def cli(ctx, path, history_id, dbkey=None, file_name=None, file_type=None, space_to_tab=None, to_posix_lines=None): """Upload the file specified by ``path`` to the history specified by ``history_id``. """ kwargs = {} diff --git a/parsec/commands/workflows/invoke_workflow.py b/parsec/commands/workflows/invoke_workflow.py index 95e9628..6a9172b 100644 --- a/parsec/commands/workflows/invoke_workflow.py +++ b/parsec/commands/workflows/invoke_workflow.py @@ -47,4 +47,11 @@ def cli(ctx, workflow_id, inputs="", params="", history_id="", history_name="", import_inputs_to_history=False, replacement_params="", allow_tool_state_corrections=""): """Invoke the workflow identified by ``workflow_id``. This will cause a workflow to be scheduled and return an object describing the workflow invocation. """ - return ctx.gi.workflows.invoke_workflow(workflow_id, inputs=inputs, params=params, history_id=history_id, history_name=history_name, import_inputs_to_history=import_inputs_to_history, replacement_params=replacement_params, allow_tool_state_corrections=allow_tool_state_corrections) + return ctx.gi.workflows.invoke_workflow(workflow_id, + inputs=json_loads(inputs), + params=json_loads(params), + history_id=history_id, + history_name=history_name, + import_inputs_to_history=import_inputs_to_history, + replacement_params=json_loads(replacement_params), + allow_tool_state_corrections=allow_tool_state_corrections) diff --git a/scripts/autobuilder.py b/scripts/autobuilder.py index 7c19282..c7ef437 100644 --- a/scripts/autobuilder.py +++ b/scripts/autobuilder.py @@ -280,6 +280,9 @@ def process_arg(k, v, param_type, real_type): if real_type == 'dict': v = 'json_loads(%s)' % v method_exec_kwargs.append('%s=%s' % (k, k)) + else: + # Add to signature, but NOT exec because we take care of that elsewhere. + method_signature_kwargs.append("%s=%s" % (k, v)) # TODO: refactor try: From 880a6e41d63efef2c7a177295fb007e26efd8612 Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Tue, 2 May 2017 23:13:01 +0000 Subject: [PATCH 24/80] fix example --- README.rst | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/README.rst b/README.rst index 95f3ee3..2909285 100644 --- a/README.rst +++ b/README.rst @@ -546,15 +546,20 @@ First, we'll create a history to manage all of our work: .. code-block:: shell - $ parsec histories create_history | jq .id | xargs -n 1 parsec histories update_history --name 'Parsec test' + $ HISTORY_ID=$(parsec histories create_history | jq .id) + $ parsec histories update_history --name 'Parsec test' -This could be done in one step, but this shows another example of piping commands together. Next we have to fetch some datasets. You could upload them: +Next we have to fetch some datasets. You could upload them: + +.. code-block:: shell + + $ parsec tools upload_file my-file.gff3 $HISTORY_ID But in my case, I need to run a tool which produces them: .. code-block:: shell - JOB_ID=$(parsec tools run_tool 0d17c6f8cd8d49a5 edu.tamu.cpt2.webapollo.export \ + JOB_ID=$(parsec tools run_tool $HISTORY_ID edu.tamu.cpt2.webapollo.export \ '{"org_source|source_select": "direct", "org_source|org_raw": "Miro"}' | \ jq .id) @@ -625,7 +630,7 @@ Running the invocation: .. code-block:: shell - $ parsec workflows invoke_workflow ded67e5aa1371841 --inputs inputs.json --history_id 0d17c6f8cd8d49a5 + $ parsec workflows invoke_workflow ded67e5aa1371841 --inputs inputs.json --history_id $HISTORY_ID Produces a very succinct workflow launch output: From e7e576b8ea925d921e423e784348a4fdf300a106 Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Tue, 2 May 2017 23:14:52 +0000 Subject: [PATCH 25/80] Add travis.yml to deploy --- .travis.yml | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 .travis.yml diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..8b8fc54 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,15 @@ +language: python +python: +- '2.7' +- '3.3' +- pypy + +deploy: + provider: pypi + user: erasche + password: + secure: XfxDtN97f2yRXqw0VVG+GqLfStZIlPQWX+4BT1mP7RwHSJUfPUMEUdzBOi361XHdNPUbuaVr95mFty6eCiTT9WUiEXyQ6FHtK0I8mBt84twlI3caRMCQjJQTsK8mYKKWWliJV2ywQPu/XkWgklZJRhauYU5MoY9hKUB1mNx6FwM= + on: + tags: true + distributions: sdist bdist_wheel + repo: galaxy-iuc/parsec From 6e662a1aeec7e29a9f4f1e0c416a1b8714c3f8f3 Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Tue, 2 May 2017 23:18:20 +0000 Subject: [PATCH 26/80] flake8 --- .travis.yml | 9 +++++++-- parsec/cli.py | 6 ++++-- parsec/decorators.py | 4 +++- parsec/galaxy.py | 3 +++ 4 files changed, 17 insertions(+), 5 deletions(-) diff --git a/.travis.yml b/.travis.yml index 8b8fc54..b28b85a 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,9 +1,13 @@ language: python python: - '2.7' -- '3.3' -- pypy +- '3.5' +install: pip install -r requirements.txt + +script: +- pip install -U flake8 +- flake8 parsec --exclude=parsec/commands/ --ignore=E501 deploy: provider: pypi user: erasche @@ -11,5 +15,6 @@ deploy: secure: XfxDtN97f2yRXqw0VVG+GqLfStZIlPQWX+4BT1mP7RwHSJUfPUMEUdzBOi361XHdNPUbuaVr95mFty6eCiTT9WUiEXyQ6FHtK0I8mBt84twlI3caRMCQjJQTsK8mYKKWWliJV2ywQPu/XkWgklZJRhauYU5MoY9hKUB1mNx6FwM= on: tags: true + all_branches: true distributions: sdist bdist_wheel repo: galaxy-iuc/parsec diff --git a/parsec/cli.py b/parsec/cli.py index e2e8a8a..1a29b9b 100644 --- a/parsec/cli.py +++ b/parsec/cli.py @@ -9,9 +9,9 @@ from .galaxy import get_galaxy_instance, get_toolshed_instance from parsec import __version__ # noqa, ditto - CONTEXT_SETTINGS = dict(auto_envvar_prefix='PARSEC') + class Context(object): def __init__(self): @@ -101,7 +101,9 @@ def get_command(self, ctx, name): ) @pass_context def parsec(ctx, galaxy_instance, verbose): - """Command line wrappers around BioBlend functions. While this sounds unexciting, with parsec and jq you can easily build powerful command line scripts.""" + """Command line wrappers around BioBlend functions. While this sounds + unexciting, with parsec and jq you can easily build powerful command line + scripts.""" # We abuse this, knowing that calls to one will fail. try: ctx.gi = get_galaxy_instance(galaxy_instance) diff --git a/parsec/decorators.py b/parsec/decorators.py index 10a60ab..de61a19 100644 --- a/parsec/decorators.py +++ b/parsec/decorators.py @@ -4,6 +4,7 @@ import wrapt from .io import error + @wrapt.decorator def bioblend_exception(wrapped, instance, args, kwargs): try: @@ -14,8 +15,9 @@ def bioblend_exception(wrapped, instance, args, kwargs): else: print(e) + @wrapt.decorator def dict_output(wrapped, instance, args, kwargs): - #TODO enhance + # TODO enhance output = wrapped(*args, **kwargs) print((json.dumps(output, indent=4))) diff --git a/parsec/galaxy.py b/parsec/galaxy.py index 6a006cd..db9fa8e 100644 --- a/parsec/galaxy.py +++ b/parsec/galaxy.py @@ -4,6 +4,7 @@ from .config import read_global_config, global_config_path from .io import warn + def get_instance(instance_name=None): # I don't like reading the config twice. conf = read_global_config() @@ -23,11 +24,13 @@ def get_instance(instance_name=None): return conf[instance_name] + def get_galaxy_instance(instance_name=None): conf = get_instance(instance_name=instance_name) return galaxy.GalaxyInstance(conf['url'], conf['key']) + def get_toolshed_instance(instance_name=None): conf = get_instance(instance_name=instance_name) return toolshed.ToolShedInstance(conf['url'], From d15adca5cb6523d08dd7e0c10e721aa0af884e46 Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Wed, 3 May 2017 16:14:17 +0000 Subject: [PATCH 27/80] pin bioblend version until an update is released --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index e08a6b4..1a58728 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,6 +1,6 @@ Click pyyaml # pre-release version -git+https://github.com/galaxyproject/bioblend.git +git+https://github.com/galaxyproject/bioblend.git@49e48e365f21b080529e1485915374f73254473e docutils wrapt From d55dcffcbc0ce3130161e7ccc677d7c1cd65fa95 Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Wed, 3 May 2017 18:43:32 +0000 Subject: [PATCH 28/80] Update history --- HISTORY.rst | 9 +++++++++ parsec/decorators.py | 7 +++++-- setup.py | 5 +++-- 3 files changed, 17 insertions(+), 4 deletions(-) diff --git a/HISTORY.rst b/HISTORY.rst index fbde70a..fc7eaa6 100644 --- a/HISTORY.rst +++ b/HISTORY.rst @@ -5,6 +5,15 @@ History .. to_doc +---------------------- +1.0.0.rc1 (2017-05-03) +---------------------- + +* Updates to auto-builder +* Updated help +* New routes +* Subcommands instead of top-level commands + ---------------------- 0.9.rc2 (2015-03-05) ---------------------- diff --git a/parsec/decorators.py b/parsec/decorators.py index de61a19..819ee72 100644 --- a/parsec/decorators.py +++ b/parsec/decorators.py @@ -11,9 +11,12 @@ def bioblend_exception(wrapped, instance, args, kwargs): return wrapped(*args, **kwargs) except Exception as e: if hasattr(e, 'body'): - error(json.loads(e.body)['err_msg']) + try: + error(json.loads(e.body)['err_msg']) + except json.decoder.JSONDecodeError: + error(str(e)) else: - print(e) + error(str(e)) @wrapt.decorator diff --git a/setup.py b/setup.py index 8fba4b2..87a530a 100644 --- a/setup.py +++ b/setup.py @@ -20,12 +20,13 @@ # TODO: put package test requirements here ] -version = '1.0.0' +version = '1.0.0-rc1' setup( - name='parsec', + name='galaxy-parsec', version=version, description='Command-line utilities to assist in interacting with Galaxy servers (http://galaxyproject.org/).', + long_description=readme + '\n\n' + history, author='Galaxy Project and Community', author_email='rasche.eric@gmail.com', url='https://github.com/galaxy-iuc/parsec', From 4909dfad3a148500a8094cc8098892374c64e0b9 Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Wed, 3 May 2017 18:51:56 +0000 Subject: [PATCH 29/80] onboarding experience --- README.rst | 13 +++++++++---- parsec/commands/{config/init.py => cmd_init.py} | 0 2 files changed, 9 insertions(+), 4 deletions(-) rename parsec/commands/{config/init.py => cmd_init.py} (100%) diff --git a/README.rst b/README.rst index 2909285..536dabf 100644 --- a/README.rst +++ b/README.rst @@ -1,6 +1,6 @@ -================================ -Parsec: the BioBlend CLI Utility -================================ +==================================== +Parsec: Galaxy at the Speed of Light +==================================== .. image:: https://readthedocs.org/projects/pip/badge/?version=latest :target: https://parsec.readthedocs.org. @@ -13,7 +13,7 @@ Parsec: the BioBlend CLI Utility :alt: Requirements Status -Command-line utilities to assist in working with a Galaxy_ server instance. +Command-line utilities to assist in working with Galaxy_ servers. * Free software: Apache License v2 * Documentation: https://parsec.readthedocs.org. @@ -25,7 +25,12 @@ Installation .. code-block:: shell pip install galaxy-parsec + parsec init +Questions? +---------- + +[![Gitter](https://badges.gitter.im/galaxy-iuc/parsec.svg)](https://gitter.im/galaxy-iuc/parsec?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge) Quick Start ----------- diff --git a/parsec/commands/config/init.py b/parsec/commands/cmd_init.py similarity index 100% rename from parsec/commands/config/init.py rename to parsec/commands/cmd_init.py From e03657341bf620a704dbe1d012eff7920106d2eb Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Wed, 3 May 2017 18:55:38 +0000 Subject: [PATCH 30/80] rebuild with new init --- parsec/cli.py | 6 +++++- parsec/commands/cmd_config.py | 4 +--- parsec/commands/workflows/invoke_workflow.py | 9 +-------- 3 files changed, 7 insertions(+), 12 deletions(-) diff --git a/parsec/cli.py b/parsec/cli.py index 1a29b9b..b37c181 100644 --- a/parsec/cli.py +++ b/parsec/cli.py @@ -107,9 +107,13 @@ def parsec(ctx, galaxy_instance, verbose): # We abuse this, knowing that calls to one will fail. try: ctx.gi = get_galaxy_instance(galaxy_instance) + except TypeError: + ctx.log("Could not access Galaxy instance configuration") + + try: ctx.ti = get_toolshed_instance(galaxy_instance) except TypeError: - ctx.log("Could not access Toolshed/Galaxy instance configuration") + ctx.log("Could not access Toolshed instance configuration") ctx.verbose = verbose diff --git a/parsec/commands/cmd_config.py b/parsec/commands/cmd_config.py index aedfdf4..46dca4c 100644 --- a/parsec/commands/cmd_config.py +++ b/parsec/commands/cmd_config.py @@ -1,10 +1,8 @@ import click -from parsec.commands.config.init import cli as func0 -from parsec.commands.config.get_config import cli as func1 +from parsec.commands.config.get_config import cli as func0 @click.group() def cli(): pass cli.add_command(func0) -cli.add_command(func1) diff --git a/parsec/commands/workflows/invoke_workflow.py b/parsec/commands/workflows/invoke_workflow.py index 6a9172b..95e9628 100644 --- a/parsec/commands/workflows/invoke_workflow.py +++ b/parsec/commands/workflows/invoke_workflow.py @@ -47,11 +47,4 @@ def cli(ctx, workflow_id, inputs="", params="", history_id="", history_name="", import_inputs_to_history=False, replacement_params="", allow_tool_state_corrections=""): """Invoke the workflow identified by ``workflow_id``. This will cause a workflow to be scheduled and return an object describing the workflow invocation. """ - return ctx.gi.workflows.invoke_workflow(workflow_id, - inputs=json_loads(inputs), - params=json_loads(params), - history_id=history_id, - history_name=history_name, - import_inputs_to_history=import_inputs_to_history, - replacement_params=json_loads(replacement_params), - allow_tool_state_corrections=allow_tool_state_corrections) + return ctx.gi.workflows.invoke_workflow(workflow_id, inputs=inputs, params=params, history_id=history_id, history_name=history_name, import_inputs_to_history=import_inputs_to_history, replacement_params=replacement_params, allow_tool_state_corrections=allow_tool_state_corrections) From 5ff65dd5a0ef6dbd51583f57ea796844fdbd0ddf Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Wed, 3 May 2017 19:24:37 +0000 Subject: [PATCH 31/80] Make init more fun --- parsec/cli.py | 6 ++-- parsec/commands/cmd_init.py | 63 +++++++++++++++++++++++-------------- parsec/galaxy.py | 1 - 3 files changed, 44 insertions(+), 26 deletions(-) diff --git a/parsec/cli.py b/parsec/cli.py index b37c181..f463925 100644 --- a/parsec/cli.py +++ b/parsec/cli.py @@ -108,12 +108,14 @@ def parsec(ctx, galaxy_instance, verbose): try: ctx.gi = get_galaxy_instance(galaxy_instance) except TypeError: - ctx.log("Could not access Galaxy instance configuration") + pass + # ctx.log("Could not access Galaxy instance configuration") try: ctx.ti = get_toolshed_instance(galaxy_instance) except TypeError: - ctx.log("Could not access Toolshed instance configuration") + pass + # ctx.log("Could not access Toolshed instance configuration") ctx.verbose = verbose diff --git a/parsec/commands/cmd_init.py b/parsec/commands/cmd_init.py index 2af61c1..a8b71b5 100644 --- a/parsec/commands/cmd_init.py +++ b/parsec/commands/cmd_init.py @@ -2,6 +2,7 @@ import click +from bioblend import galaxy from parsec.cli import pass_context from parsec import config from parsec.io import warn, info @@ -10,49 +11,65 @@ # Each stanza should contian a single galaxy server to control. # # You can set the key __default to the name of a default instance -# __default: local +__default: local local: key: "%(key)s" - email: "" - password: "" url: "%(url)s" - admin: %(admin)s + # email: "" + # password: "" """ SUCCESS_MESSAGE = ( - "Wrote configuration template to %s, " - "please open with editor and fill out." + "Ready to go! Type `parsec` to get a list of commands you can execute." ) @click.command("config_init") -@click.option( - '--url', - help="URL to galaxy server", -) -@click.option( - '--api_key', - help="API key for galaxy server", -) -@click.option( - '--admin', - is_flag=True, - help="This API key is an admin/master API key", -) @pass_context def cli(ctx, url=None, api_key=None, admin=False, **kwds): """Help initialize global configuration (in home directory) """ # TODO: prompt for values someday. + click.echo(""" +Welcome to + ==== _____ _____ ____ ______ ___ + ==== | \ /\ | | | | / + == ==== |----/ / \ |----/ \____ |_____ | + == ==== | /----\ | \ \ | | + == == ==== | / \| \ _____/ |_____ \___/ + Access Galaxy at the Speed of Light +""") + + while True: + galaxy_url = click.prompt("Please entry your Galaxy's URL") + galaxy_key = click.prompt("Please entry your Galaxy API Key") + info("Testing connection...") + try: + gi = galaxy.GalaxyInstance(galaxy_url, galaxy_key) + if 'version_major' in gi.config.get_config(): + # Ok, success + info("Ok! Everything looks good.") + break + else: + warn("Error, we could not access the configuration data for your instance.") + should_break = click.prompt("Continue despite inability to contact this Galaxy Instance? [y/n]") + if should_break in ('Y', 'y'): + break + except Exception as e: + warn("Error, we could not access the configuration data for your instance.") + should_break = click.prompt("Continue despite inability to contact this Galaxy Instance? [y/n]") + if should_break in ('Y', 'y'): + break + config_path = config.global_config_path() if os.path.exists(config_path): - warn("File %s already exists, exiting." % config_path) + warn("File %s already exists, refusing to overwrite." % config_path) return -1 with open(config_path, "w") as f: f.write( CONFIG_TEMPLATE % { - 'key': '' if api_key is None else api_key, - 'url': '' if url is None else url, - 'admin': admin}) + 'key': galaxy_key, + 'url': galaxy_url, + }) info(SUCCESS_MESSAGE % config_path) diff --git a/parsec/galaxy.py b/parsec/galaxy.py index db9fa8e..7ba8d24 100644 --- a/parsec/galaxy.py +++ b/parsec/galaxy.py @@ -10,7 +10,6 @@ def get_instance(instance_name=None): conf = read_global_config() if not os.path.exists(global_config_path()): # Probably creating the file for the first time. - warn("No parsec config file found, continuing anyway...") return None if instance_name is None or instance_name == '__default': From f66abc3f0e85af1f520f6bdc0b9a963b95349cf5 Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Wed, 3 May 2017 19:25:38 +0000 Subject: [PATCH 32/80] center it more? --- parsec/commands/cmd_init.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/parsec/commands/cmd_init.py b/parsec/commands/cmd_init.py index a8b71b5..e08dc3f 100644 --- a/parsec/commands/cmd_init.py +++ b/parsec/commands/cmd_init.py @@ -33,12 +33,12 @@ def cli(ctx, url=None, api_key=None, admin=False, **kwds): # TODO: prompt for values someday. click.echo(""" Welcome to - ==== _____ _____ ____ ______ ___ - ==== | \ /\ | | | | / - == ==== |----/ / \ |----/ \____ |_____ | - == ==== | /----\ | \ \ | | - == == ==== | / \| \ _____/ |_____ \___/ - Access Galaxy at the Speed of Light + == == ==== _____ _____ ____ ______ ___ + = = ==== | \ /\ | | | | / + === ==== |----/ / \ |----/ \____ |_____ | + = = === | /----\ | \ \ | | + == == ==== | / \| \ _____/ |_____ \___/ + Access Galaxy at the Speed of Light """) while True: From 7ac7077de304ae6305fa33c0904e8d8d0c5d9c80 Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Wed, 3 May 2017 19:28:50 +0000 Subject: [PATCH 33/80] unused --- parsec/galaxy.py | 1 - 1 file changed, 1 deletion(-) diff --git a/parsec/galaxy.py b/parsec/galaxy.py index 7ba8d24..d509d4d 100644 --- a/parsec/galaxy.py +++ b/parsec/galaxy.py @@ -2,7 +2,6 @@ import os from bioblend import galaxy, toolshed from .config import read_global_config, global_config_path -from .io import warn def get_instance(instance_name=None): From a5637f074160363c27586ca6decf17cc4f0bbb12 Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Wed, 3 May 2017 19:31:59 +0000 Subject: [PATCH 34/80] Ok, better --- docs/commands/config.rst | 15 ---------- docs/commands/datasets.rst | 40 ------------------------- docs/commands/histories.rst | 16 +++++----- docs/commands/tools.rst | 8 ++--- docs/commands/workflows.rst | 12 ++++---- parsec/commands/cmd_datasets.py | 6 +--- parsec/commands/datasets/show_stderr.py | 15 ---------- parsec/commands/datasets/show_stdout.py | 15 ---------- scripts/autobuilder.py | 2 ++ scripts/commands_to_rst.py | 5 +++- 10 files changed, 25 insertions(+), 109 deletions(-) delete mode 100644 parsec/commands/datasets/show_stderr.py delete mode 100644 parsec/commands/datasets/show_stdout.py diff --git a/docs/commands/config.rst b/docs/commands/config.rst index 5405e00..f80726a 100644 --- a/docs/commands/config.rst +++ b/docs/commands/config.rst @@ -20,18 +20,3 @@ Get a list of attributes about the Galaxy instance. More attributes will be pres --help Show this message and exit. - -``init`` command ----------------- - -This section is auto-generated from the help text for the parsec command -``config``. - -**Usage**:: - - parsec config [OPTIONS] COMMAND [ARGS]... - -**Help** - -Help initialize global configuration (in home directory) - diff --git a/docs/commands/datasets.rst b/docs/commands/datasets.rst index 0f4a42a..2275a80 100644 --- a/docs/commands/datasets.rst +++ b/docs/commands/datasets.rst @@ -61,43 +61,3 @@ Get details about a given dataset. This can be a history or a library dataset. library dataset ('ldda'). --help Show this message and exit. - -``show_stderr`` command ------------------------ - -This section is auto-generated from the help text for the parsec command -``datasets``. - -**Usage**:: - - parsec datasets show_stderr [OPTIONS] DATASET_ID - -**Help** - -Get the stderr output of a dataset. - -**Options**:: - - - --help Show this message and exit. - - -``show_stdout`` command ------------------------ - -This section is auto-generated from the help text for the parsec command -``datasets``. - -**Usage**:: - - parsec datasets show_stdout [OPTIONS] DATASET_ID - -**Help** - -Get the stdout output of a dataset. - -**Options**:: - - - --help Show this message and exit. - diff --git a/docs/commands/histories.rst b/docs/commands/histories.rst index 092585a..06e2a5b 100644 --- a/docs/commands/histories.rst +++ b/docs/commands/histories.rst @@ -426,11 +426,11 @@ Update history dataset metadata. Some of the attributes that can be modified are **Options**:: - --name TEXT Replace history dataset name with the given string --annotation TEXT Replace history dataset annotation with given string --deleted Mark or unmark history dataset as deleted - --visible Mark or unmark history dataset as visible --genome_build TEXT Replace history dataset genome build (dbkey) + --name TEXT Replace history dataset name with the given string + --visible Mark or unmark history dataset as visible --help Show this message and exit. @@ -451,8 +451,8 @@ Update history dataset collection metadata. Some of the attributes that can be m **Options**:: - --name TEXT Replace history dataset collection name with the given string --deleted Mark or unmark history dataset collection as deleted + --name TEXT Replace history dataset collection name with the given string --visible Mark or unmark history dataset collection as visible --help Show this message and exit. @@ -474,14 +474,14 @@ Update history metadata information. Some of the attributes that can be modified **Options**:: - --tags TEXT Replace history tags with the given list - --importable Mark or unmark history as importable - --purged If True, mark history as purged (permanently deleted). - Ignored on Galaxy release_15.01 and earlier - --name TEXT Replace history name with the given string --annotation TEXT Replace history annotation with given string --deleted Mark or unmark history as deleted + --importable Mark or unmark history as importable + --name TEXT Replace history name with the given string --published Mark or unmark history as published + --purged If True, mark history as purged (permanently deleted). + Ignored on Galaxy release_15.01 and earlier + --tags TEXT Replace history tags with the given list --help Show this message and exit. diff --git a/docs/commands/tools.rst b/docs/commands/tools.rst index 1a14f39..822c5a5 100644 --- a/docs/commands/tools.rst +++ b/docs/commands/tools.rst @@ -165,13 +165,13 @@ Upload the file specified by ``path`` to the history specified by ``history_id`` --dbkey TEXT (optional) genome dbkey - --to_posix_lines if True, convert universal line endings to POSIX line - endings. Default is True. Set to False if you upload a gzip, - bz2 or zip archive containing a binary file --file_name TEXT (optional) name of the new history dataset + --file_type TEXT Galaxy datatype for the new dataset, default is auto --space_to_tab whether to convert spaces to tabs. Default is False. Applicable only if to_posix_lines is True - --file_type TEXT Galaxy datatype for the new dataset, default is auto + --to_posix_lines if True, convert universal line endings to POSIX line + endings. Default is True. Set to False if you upload a gzip, + bz2 or zip archive containing a binary file --help Show this message and exit. diff --git a/docs/commands/workflows.rst b/docs/commands/workflows.rst index 30bbf39..af7794e 100644 --- a/docs/commands/workflows.rst +++ b/docs/commands/workflows.rst @@ -268,14 +268,14 @@ Invoke the workflow identified by ``workflow_id``. This will cause a workflow to **Options**:: - --inputs DICT A mapping of workflow inputs to datasets and + --inputs TEXT A mapping of workflow inputs to datasets and dataset collections. The datasets source can be a LibraryDatasetDatasetAssociation (``ldda``), LibraryDataset (``ld``), HistoryDatasetAssociation (``hda``), or HistoryDatasetCollectionAssociation (``hdca``). - --params DICT A mapping of non-datasets tool parameters (see + --params TEXT A mapping of non-datasets tool parameters (see below) --history_id TEXT The encoded history ID where to store the workflow output. Alternatively, @@ -291,7 +291,7 @@ Invoke the workflow identified by ``workflow_id``. This will cause a workflow to imported into the history. If ``False``, only workflow outputs will be visible in the given history. - --replacement_params DICT pattern-based replacements for post-job + --replacement_params TEXT pattern-based replacements for post-job actions (see below) --allow_tool_state_corrections If True, allow Galaxy to fill in missing tool state when running workflows. This may be @@ -339,7 +339,7 @@ Run the workflow identified by ``workflow_id``. This method is deprecated, pleas **Options**:: - --dataset_map DICT A mapping of workflow inputs to datasets. The + --dataset_map TEXT A mapping of workflow inputs to datasets. The datasets source can be a LibraryDatasetDatasetAssociation (``ldda``), LibraryDataset (``ld``), or @@ -348,7 +348,7 @@ Run the workflow identified by ``workflow_id``. This method is deprecated, pleas , 'src': '[ldda, ld, hda]'}}`` (e.g. ``{'23': {'id': '29beef4fadeed09f', 'src': 'ld'}}``) - --params DICT A mapping of non-datasets tool parameters (see + --params TEXT A mapping of non-datasets tool parameters (see below) --history_id TEXT The encoded history ID where to store the workflow output. Alternatively, ``history_name`` may be @@ -361,7 +361,7 @@ Run the workflow identified by ``workflow_id``. This method is deprecated, pleas --import_inputs_to_history If ``True``, used workflow inputs will be imported into the history. If ``False``, only workflow outputs will be visible in the given history. - --replacement_params DICT pattern-based replacements for post-job actions + --replacement_params TEXT pattern-based replacements for post-job actions (see below) --help Show this message and exit. diff --git a/parsec/commands/cmd_datasets.py b/parsec/commands/cmd_datasets.py index 3a70451..6f5bd64 100644 --- a/parsec/commands/cmd_datasets.py +++ b/parsec/commands/cmd_datasets.py @@ -1,8 +1,6 @@ import click from parsec.commands.datasets.download_dataset import cli as func0 -from parsec.commands.datasets.show_stdout import cli as func1 -from parsec.commands.datasets.show_stderr import cli as func2 -from parsec.commands.datasets.show_dataset import cli as func3 +from parsec.commands.datasets.show_dataset import cli as func1 @click.group() def cli(): @@ -10,5 +8,3 @@ def cli(): cli.add_command(func0) cli.add_command(func1) -cli.add_command(func2) -cli.add_command(func3) diff --git a/parsec/commands/datasets/show_stderr.py b/parsec/commands/datasets/show_stderr.py deleted file mode 100644 index fa37d78..0000000 --- a/parsec/commands/datasets/show_stderr.py +++ /dev/null @@ -1,15 +0,0 @@ -import click -from parsec.cli import pass_context, json_loads -from parsec.decorators import bioblend_exception, dict_output - -@click.command('show_stderr') -@click.argument("dataset_id", type=str) - - -@pass_context -@bioblend_exception -@dict_output -def cli(ctx, dataset_id): - """Get the stderr output of a dataset. - """ - return ctx.gi.datasets.show_stderr(dataset_id) diff --git a/parsec/commands/datasets/show_stdout.py b/parsec/commands/datasets/show_stdout.py deleted file mode 100644 index 025caf6..0000000 --- a/parsec/commands/datasets/show_stdout.py +++ /dev/null @@ -1,15 +0,0 @@ -import click -from parsec.cli import pass_context, json_loads -from parsec.decorators import bioblend_exception, dict_output - -@click.command('show_stdout') -@click.argument("dataset_id", type=str) - - -@pass_context -@bioblend_exception -@dict_output -def cli(ctx, dataset_id): - """Get the stdout output of a dataset. - """ - return ctx.gi.datasets.show_stdout(dataset_id) diff --git a/scripts/autobuilder.py b/scripts/autobuilder.py index c7ef437..ca54a0a 100644 --- a/scripts/autobuilder.py +++ b/scripts/autobuilder.py @@ -25,6 +25,8 @@ 'get_retry_delay', 'set_retry_delay', 'max_get_retries', + 'show_stderr', + 'show_stdout', ] diff --git a/scripts/commands_to_rst.py b/scripts/commands_to_rst.py index db05e91..9382b05 100644 --- a/scripts/commands_to_rst.py +++ b/scripts/commands_to_rst.py @@ -42,11 +42,14 @@ commands = COMMANDS_TEMPLATE for command in list_cmds(): + if command == 'init': + # Skip documenting init because it's special + continue + commands += "\n commands/%s.rst" % command parent_doc_handle = open(os.path.join(command_doc_dir, command + ".rst"), "w") parent_doc_handle.write('%s\n' % command) parent_doc_handle.write('%s\n' % ('=' * len(command))) - for subcommand in list_subcmds(command): command_obj = cli.name_to_command(command, subcommand) From 2fe41d67c6b69d00d2cc0eeccd5de436b6a63bad Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Wed, 3 May 2017 19:32:16 +0000 Subject: [PATCH 35/80] makefile for simplicity of updating tools --- Makefile | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 Makefile diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..78f8978 --- /dev/null +++ b/Makefile @@ -0,0 +1,3 @@ +rebuild: + python scripts/autobuilder.py + python scripts/commands_to_rst.py From b3af825a2390386df111a90126a8f5adfa7c3bea Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Wed, 3 May 2017 19:33:21 +0000 Subject: [PATCH 36/80] notify gitter --- .travis.yml | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/.travis.yml b/.travis.yml index b28b85a..91decae 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,4 +1,5 @@ language: python + python: - '2.7' - '3.5' @@ -8,6 +9,7 @@ install: pip install -r requirements.txt script: - pip install -U flake8 - flake8 parsec --exclude=parsec/commands/ --ignore=E501 + deploy: provider: pypi user: erasche @@ -18,3 +20,11 @@ deploy: all_branches: true distributions: sdist bdist_wheel repo: galaxy-iuc/parsec + +notifications: + webhooks: + urls: + - https://webhooks.gitter.im/e/bbb7ff1f8cc46ceaa3a8 + on_success: change # options: [always|never|change] default: always + on_failure: always # options: [always|never|change] default: always + on_start: never # options: [always|never|change] default: always From a013aa3a6a07b7f249e721163c4a0a93897a024f Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Wed, 3 May 2017 19:37:25 +0000 Subject: [PATCH 37/80] Exit early for existing config --- parsec/commands/cmd_init.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/parsec/commands/cmd_init.py b/parsec/commands/cmd_init.py index e08dc3f..7e4b5d2 100644 --- a/parsec/commands/cmd_init.py +++ b/parsec/commands/cmd_init.py @@ -40,6 +40,9 @@ def cli(ctx, url=None, api_key=None, admin=False, **kwds): == == ==== | / \| \ _____/ |_____ \___/ Access Galaxy at the Speed of Light """) + if os.path.exists(config.global_config_path()): + info("Your parsec configuration already exists. Please edit it instead: %s" % config.global_config_path()) + return 0 while True: galaxy_url = click.prompt("Please entry your Galaxy's URL") From 02bd4ae232d9d8770443809927bb3f4bb2658d90 Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Wed, 3 May 2017 19:37:41 +0000 Subject: [PATCH 38/80] ok, good --- README.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.rst b/README.rst index 536dabf..9fcc5b9 100644 --- a/README.rst +++ b/README.rst @@ -24,8 +24,8 @@ Installation .. code-block:: shell - pip install galaxy-parsec - parsec init + $ pip install galaxy-parsec + $ parsec init Questions? ---------- From 6ca2fbca41cb6d28abba1d1eeb7e4198ec4c276f Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Wed, 3 May 2017 19:42:33 +0000 Subject: [PATCH 39/80] fix link --- README.rst | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/README.rst b/README.rst index 9fcc5b9..0877cb2 100644 --- a/README.rst +++ b/README.rst @@ -30,7 +30,10 @@ Installation Questions? ---------- -[![Gitter](https://badges.gitter.im/galaxy-iuc/parsec.svg)](https://gitter.im/galaxy-iuc/parsec?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge) +|Gitter| + +.. |Gitter| image:: https://badges.gitter.im/galaxy-iuc/parsec.svg + :target: https://gitter.im/galaxy-iuc/parsec?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge Quick Start ----------- From bd43cf78f66ab5dd145bb94988a5f2a348b7965c Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Wed, 3 May 2017 19:43:40 +0000 Subject: [PATCH 40/80] fix quickstart with new init --- README.rst | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/README.rst b/README.rst index 0877cb2..79dd68e 100644 --- a/README.rst +++ b/README.rst @@ -51,9 +51,7 @@ First initialize the parsec configuration file in ``~/.parsec.yml`` via the ``pa .. code-block:: shell - $ parsec config_init - No parsec config file found, continuing anyway... - Wrote configuration template to ~/.paresc.yml, please open with editor and fill out. + $ parsec init This will look something like the following:: @@ -61,16 +59,13 @@ This will look something like the following:: # Each stanza should contian a single galaxy server to control. # # You can set the key __default to the name of a default instance - # __default: local + __default: local local: - key: "" - email: "" - password: "" - url: "" - admin: False + key: "..." + url: "https://..." -Once those fields are filled out (and setting ``__default`` is highly recommended), parsec will now be usable from the command line. +Once those fields are filled out, parsec will be usable from the command line. An admin account is required for a few actions like creation of data libraries. From 5fa773c57f8f89f1b50d237e79adba9df99849c8 Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Wed, 3 May 2017 19:44:59 +0000 Subject: [PATCH 41/80] make this work --- parsec/commands/cmd_init.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parsec/commands/cmd_init.py b/parsec/commands/cmd_init.py index 7e4b5d2..d771bdf 100644 --- a/parsec/commands/cmd_init.py +++ b/parsec/commands/cmd_init.py @@ -75,4 +75,4 @@ def cli(ctx, url=None, api_key=None, admin=False, **kwds): 'key': galaxy_key, 'url': galaxy_url, }) - info(SUCCESS_MESSAGE % config_path) + info(SUCCESS_MESSAGE) From 32e46cac8f3f245bdda72b10ffdd1bf5ef996b91 Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Wed, 3 May 2017 19:47:17 +0000 Subject: [PATCH 42/80] try testing --- .travis.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.travis.yml b/.travis.yml index 91decae..f63654b 100644 --- a/.travis.yml +++ b/.travis.yml @@ -9,6 +9,10 @@ install: pip install -r requirements.txt script: - pip install -U flake8 - flake8 parsec --exclude=parsec/commands/ --ignore=E501 +- python setup.py install +- printf "https://usegalaxy.org\ntesting\ny" | parsec init +- sed -i 's/testing//g' ~/.parsec.yml +- parsec config get_config | grep version deploy: provider: pypi From d001db15d84b3b55cbbfa151dea466438ffb3ef4 Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Wed, 3 May 2017 19:56:39 +0000 Subject: [PATCH 43/80] include all the packages --- setup.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/setup.py b/setup.py index 87a530a..5917295 100644 --- a/setup.py +++ b/setup.py @@ -1,6 +1,6 @@ #!/usr/bin/env python # -*- coding: utf-8 -*- - +import glob try: from setuptools import setup @@ -21,6 +21,7 @@ ] version = '1.0.0-rc1' +subpackages = [x.replace('/', '.') for x in glob.glob('parsec/commands/*') if not x.endswith('.py')] setup( name='galaxy-parsec', @@ -33,7 +34,7 @@ packages=[ 'parsec', 'parsec.commands', - ], + ] + subpackages, entry_points=''' [console_scripts] parsec=parsec.cli:parsec From 45c2bfc69009abb0c94097d254c4fc310845568a Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Wed, 3 May 2017 19:59:40 +0000 Subject: [PATCH 44/80] fix install --- parsec/cli.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/parsec/cli.py b/parsec/cli.py index f463925..3861a1b 100644 --- a/parsec/cli.py +++ b/parsec/cli.py @@ -83,7 +83,14 @@ def name_to_command(parent, name): class ParsecCLI(click.MultiCommand): def list_commands(self, ctx): - return list_cmds() + # We pre-calculate this so it works more nicely within packaged + # versions of parsec. Please feel free to fix this? + + commands = ['config', 'datasets', 'datatypes', 'folders', 'forms', + 'ftpfiles', 'genomes', 'groups', 'histories', 'jobs', + 'libraries', 'quotas', 'roles', 'tool', 'tool_data', + 'tools', 'toolshed', 'users', 'visual', 'workflows'] + return commands def get_command(self, ctx, name): return name_to_command(None, name) From f313be8383e68646da021dff9baf2ef63b3a27f9 Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Mon, 8 May 2017 22:08:41 +0000 Subject: [PATCH 45/80] switch to my fork --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 1a58728..893ca37 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,6 +1,6 @@ Click pyyaml # pre-release version -git+https://github.com/galaxyproject/bioblend.git@49e48e365f21b080529e1485915374f73254473e +git+https://github.com/erasche/bioblend.git@4fc0803ffc86bab14bf36eeb30bb055c7ef6cd94 docutils wrapt From 4b0d8c35f3fb76d838bb72fdc04c7c7365b34fc8 Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Mon, 8 May 2017 22:10:48 +0000 Subject: [PATCH 46/80] Quota / Folder support --- parsec/commands/cmd_folders.py | 12 ++++- parsec/commands/cmd_quotas.py | 8 ++++ parsec/commands/folders/create_folder.py | 21 ++++++++ parsec/commands/folders/get_permissions.py | 16 +++++++ parsec/commands/folders/set_permissions.py | 32 +++++++++++++ parsec/commands/folders/update_folder.py | 21 ++++++++ parsec/commands/quotas/create_quota.py | 31 ++++++++++++ parsec/commands/quotas/delete_quota.py | 15 ++++++ parsec/commands/quotas/undelete_quota.py | 15 ++++++ parsec/commands/quotas/update_quota.py | 48 +++++++++++++++++++ .../toolshed/install_repository_revision.py | 4 +- scripts/autobuilder.py | 3 +- 12 files changed, 220 insertions(+), 6 deletions(-) create mode 100644 parsec/commands/folders/create_folder.py create mode 100644 parsec/commands/folders/get_permissions.py create mode 100644 parsec/commands/folders/set_permissions.py create mode 100644 parsec/commands/folders/update_folder.py create mode 100644 parsec/commands/quotas/create_quota.py create mode 100644 parsec/commands/quotas/delete_quota.py create mode 100644 parsec/commands/quotas/undelete_quota.py create mode 100644 parsec/commands/quotas/update_quota.py diff --git a/parsec/commands/cmd_folders.py b/parsec/commands/cmd_folders.py index 6cfb816..3a23aa1 100644 --- a/parsec/commands/cmd_folders.py +++ b/parsec/commands/cmd_folders.py @@ -1,6 +1,10 @@ import click -from parsec.commands.folders.show_folder import cli as func0 -from parsec.commands.folders.delete_folder import cli as func1 +from parsec.commands.folders.create_folder import cli as func0 +from parsec.commands.folders.show_folder import cli as func1 +from parsec.commands.folders.update_folder import cli as func2 +from parsec.commands.folders.set_permissions import cli as func3 +from parsec.commands.folders.get_permissions import cli as func4 +from parsec.commands.folders.delete_folder import cli as func5 @click.group() def cli(): @@ -8,3 +12,7 @@ def cli(): cli.add_command(func0) cli.add_command(func1) +cli.add_command(func2) +cli.add_command(func3) +cli.add_command(func4) +cli.add_command(func5) diff --git a/parsec/commands/cmd_quotas.py b/parsec/commands/cmd_quotas.py index 011c284..b99bf5f 100644 --- a/parsec/commands/cmd_quotas.py +++ b/parsec/commands/cmd_quotas.py @@ -1,6 +1,10 @@ import click from parsec.commands.quotas.get_quotas import cli as func0 from parsec.commands.quotas.show_quota import cli as func1 +from parsec.commands.quotas.delete_quota import cli as func2 +from parsec.commands.quotas.update_quota import cli as func3 +from parsec.commands.quotas.create_quota import cli as func4 +from parsec.commands.quotas.undelete_quota import cli as func5 @click.group() def cli(): @@ -8,3 +12,7 @@ def cli(): cli.add_command(func0) cli.add_command(func1) +cli.add_command(func2) +cli.add_command(func3) +cli.add_command(func4) +cli.add_command(func5) diff --git a/parsec/commands/folders/create_folder.py b/parsec/commands/folders/create_folder.py new file mode 100644 index 0000000..750987d --- /dev/null +++ b/parsec/commands/folders/create_folder.py @@ -0,0 +1,21 @@ +import click +from parsec.cli import pass_context, json_loads +from parsec.decorators import bioblend_exception, dict_output + +@click.command('create_folder') +@click.argument("parent_folder_id", type=str) +@click.argument("name", type=str) + +@click.option( + "--description", + help="folder's description", + type=str +) + +@pass_context +@bioblend_exception +@dict_output +def cli(ctx, parent_folder_id, name, description=""): + """Create a folder. + """ + return ctx.gi.folders.create_folder(parent_folder_id, name, description=description) diff --git a/parsec/commands/folders/get_permissions.py b/parsec/commands/folders/get_permissions.py new file mode 100644 index 0000000..4d40af1 --- /dev/null +++ b/parsec/commands/folders/get_permissions.py @@ -0,0 +1,16 @@ +import click +from parsec.cli import pass_context, json_loads +from parsec.decorators import bioblend_exception, dict_output + +@click.command('get_permissions') +@click.argument("folder_id", type=str) +@click.argument("scope", type=str) + + +@pass_context +@bioblend_exception +@dict_output +def cli(ctx, folder_id, scope): + """Get the permissions of a folder. + """ + return ctx.gi.folders.get_permissions(folder_id, scope) diff --git a/parsec/commands/folders/set_permissions.py b/parsec/commands/folders/set_permissions.py new file mode 100644 index 0000000..6340147 --- /dev/null +++ b/parsec/commands/folders/set_permissions.py @@ -0,0 +1,32 @@ +import click +from parsec.cli import pass_context, json_loads +from parsec.decorators import bioblend_exception, dict_output + +@click.command('set_permissions') +@click.argument("folder_id", type=str) + +@click.option( + "--action", + help="action to execute, only "set_permissions" is supported.", + type=str +) +@click.option( + "--add_ids", + help="list of role IDs which can add datasets to the folder" +) +@click.option( + "--manage_ids", + help="list of role IDs which can manage datasets in the folder" +) +@click.option( + "--modify_ids", + help="list of role IDs which can modify datasets in the folder" +) + +@pass_context +@bioblend_exception +@dict_output +def cli(ctx, folder_id, action="", add_ids="", manage_ids="", modify_ids=""): + """Set the permissions of a folder. + """ + return ctx.gi.folders.set_permissions(folder_id, action=action, add_ids=add_ids, manage_ids=manage_ids, modify_ids=modify_ids) diff --git a/parsec/commands/folders/update_folder.py b/parsec/commands/folders/update_folder.py new file mode 100644 index 0000000..3c5fd30 --- /dev/null +++ b/parsec/commands/folders/update_folder.py @@ -0,0 +1,21 @@ +import click +from parsec.cli import pass_context, json_loads +from parsec.decorators import bioblend_exception, dict_output + +@click.command('update_folder') +@click.argument("folder_id", type=str) +@click.argument("name", type=str) + +@click.option( + "--description", + help="folder's description", + type=str +) + +@pass_context +@bioblend_exception +@dict_output +def cli(ctx, folder_id, name, description=""): + """Update folder information. + """ + return ctx.gi.folders.update_folder(folder_id, name, description=description) diff --git a/parsec/commands/quotas/create_quota.py b/parsec/commands/quotas/create_quota.py new file mode 100644 index 0000000..dbaeab9 --- /dev/null +++ b/parsec/commands/quotas/create_quota.py @@ -0,0 +1,31 @@ +import click +from parsec.cli import pass_context, json_loads +from parsec.decorators import bioblend_exception, dict_output + +@click.command('create_quota') +@click.argument("name", type=str) +@click.argument("description", type=str) +@click.argument("amount", type=str) +@click.argument("operation", type=str) + +@click.option( + "--default", + help="Whether or not this is a default quota. Valid values are ``no``, ``unregistered``, ``registered``. None is equivalent to ``no``.", + type=str +) +@click.option( + "--in_users", + help="A list of user IDs or user emails." +) +@click.option( + "--in_groups", + help="A list of group IDs or names." +) + +@pass_context +@bioblend_exception +@dict_output +def cli(ctx, name, description, amount, operation, default="", in_users="", in_groups=""): + """Create a new quota + """ + return ctx.gi.quotas.create_quota(name, description, amount, operation, default=default, in_users=in_users, in_groups=in_groups) diff --git a/parsec/commands/quotas/delete_quota.py b/parsec/commands/quotas/delete_quota.py new file mode 100644 index 0000000..3ea326e --- /dev/null +++ b/parsec/commands/quotas/delete_quota.py @@ -0,0 +1,15 @@ +import click +from parsec.cli import pass_context, json_loads +from parsec.decorators import bioblend_exception, dict_output + +@click.command('delete_quota') +@click.argument("quota_id", type=str) + + +@pass_context +@bioblend_exception +@dict_output +def cli(ctx, quota_id): + """Delete a quota + """ + return ctx.gi.quotas.delete_quota(quota_id) diff --git a/parsec/commands/quotas/undelete_quota.py b/parsec/commands/quotas/undelete_quota.py new file mode 100644 index 0000000..4a8c876 --- /dev/null +++ b/parsec/commands/quotas/undelete_quota.py @@ -0,0 +1,15 @@ +import click +from parsec.cli import pass_context, json_loads +from parsec.decorators import bioblend_exception, dict_output + +@click.command('undelete_quota') +@click.argument("quota_id", type=str) + + +@pass_context +@bioblend_exception +@dict_output +def cli(ctx, quota_id): + """Unelete a quota + """ + return ctx.gi.quotas.undelete_quota(quota_id) diff --git a/parsec/commands/quotas/update_quota.py b/parsec/commands/quotas/update_quota.py new file mode 100644 index 0000000..72fadf8 --- /dev/null +++ b/parsec/commands/quotas/update_quota.py @@ -0,0 +1,48 @@ +import click +from parsec.cli import pass_context, json_loads +from parsec.decorators import bioblend_exception, dict_output + +@click.command('update_quota') +@click.argument("quota_id", type=str) + +@click.option( + "--name", + help="Name for the new quota. This must be unique within a Galaxy instance.", + type=str +) +@click.option( + "--description", + help="Quota description. If you supply this parameter, but not the name, an error will be thrown.", + type=str +) +@click.option( + "--amount", + help="Quota size (E.g. ``10000MB``, ``99 gb``, ``0.2T``, ``unlimited``)", + type=str +) +@click.option( + "--operation", + help="One of (``+``, ``-``, ``=``). If you wish to change this value, you must also provide the ``amount``, otherwise it will not take effect.", + type=str +) +@click.option( + "--default", + help="Whether or not this is a default quota. Valid values are ``no``, ``unregistered``, ``registered``. Calling update twice with a default of ``no`` will throw an error. Not passing this parameter is equivalent to passing ``no``.", + type=str +) +@click.option( + "--in_users", + help="A list of user IDs or user emails." +) +@click.option( + "--in_groups", + help="A list of group IDs or names." +) + +@pass_context +@bioblend_exception +@dict_output +def cli(ctx, quota_id, name="", description="", amount="", operation="", default="", in_users="", in_groups=""): + """Update an existing quota + """ + return ctx.gi.quotas.update_quota(quota_id, name=name, description=description, amount=amount, operation=operation, default=default, in_users=in_users, in_groups=in_groups) diff --git a/parsec/commands/toolshed/install_repository_revision.py b/parsec/commands/toolshed/install_repository_revision.py index 694f14c..46a8f89 100644 --- a/parsec/commands/toolshed/install_repository_revision.py +++ b/parsec/commands/toolshed/install_repository_revision.py @@ -10,12 +10,12 @@ @click.option( "--install_tool_dependencies", - help="Whether or not to automatically handle tool dependencies (see http://wiki.galaxyproject.org/AToolOrASuitePerRepository for more details)", + help="Whether or not to automatically handle tool dependencies (see https://galaxyproject.org/toolshed/tool-dependency-recipes/ for more details)", is_flag=True ) @click.option( "--install_repository_dependencies", - help="Whether or not to automatically handle repository dependencies (see http://wiki.galaxyproject.org/DefiningRepositoryDependencies for more details)", + help="Whether or not to automatically handle repository dependencies (see https://galaxyproject.org/toolshed/defining-repository-dependencies/ for more details)", is_flag=True ) @click.option( diff --git a/scripts/autobuilder.py b/scripts/autobuilder.py index ca54a0a..adcddda 100644 --- a/scripts/autobuilder.py +++ b/scripts/autobuilder.py @@ -7,7 +7,7 @@ import glob import argparse import logging -logging.basicConfig(level=logging.DEBUG) +logging.basicConfig(level=logging.INFO) log = logging.getLogger() @@ -311,7 +311,6 @@ def process_arg(k, v, param_type, real_type): except Exception as e: param_type = [] real_type = None - print(candidate, e) process_arg(k, v, param_type, real_type) had_weird_kwargs = False From c3b8d8678d261ac99a9748ad138ec5eedebb3ea9 Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Mon, 8 May 2017 22:48:48 +0000 Subject: [PATCH 47/80] Handle list of str properly --- parsec/commands/folders/set_permissions.py | 12 +++++++++--- parsec/commands/quotas/create_quota.py | 10 +++++++--- parsec/commands/quotas/update_quota.py | 10 +++++++--- requirements.txt | 2 +- scripts/autobuilder.py | 4 ++++ 5 files changed, 28 insertions(+), 10 deletions(-) diff --git a/parsec/commands/folders/set_permissions.py b/parsec/commands/folders/set_permissions.py index 6340147..f2f4d88 100644 --- a/parsec/commands/folders/set_permissions.py +++ b/parsec/commands/folders/set_permissions.py @@ -12,15 +12,21 @@ ) @click.option( "--add_ids", - help="list of role IDs which can add datasets to the folder" + help="list of role IDs which can add datasets to the folder", + type=str, + multiple=True ) @click.option( "--manage_ids", - help="list of role IDs which can manage datasets in the folder" + help="list of role IDs which can manage datasets in the folder", + type=str, + multiple=True ) @click.option( "--modify_ids", - help="list of role IDs which can modify datasets in the folder" + help="list of role IDs which can modify datasets in the folder", + type=str, + multiple=True ) @pass_context diff --git a/parsec/commands/quotas/create_quota.py b/parsec/commands/quotas/create_quota.py index dbaeab9..cd9ab88 100644 --- a/parsec/commands/quotas/create_quota.py +++ b/parsec/commands/quotas/create_quota.py @@ -15,17 +15,21 @@ ) @click.option( "--in_users", - help="A list of user IDs or user emails." + help="A list of user IDs or user emails.", + type=str, + multiple=True ) @click.option( "--in_groups", - help="A list of group IDs or names." + help="A list of group IDs or names.", + type=str, + multiple=True ) @pass_context @bioblend_exception @dict_output -def cli(ctx, name, description, amount, operation, default="", in_users="", in_groups=""): +def cli(ctx, name, description, amount, operation, default="", in_users=None, in_groups=None): """Create a new quota """ return ctx.gi.quotas.create_quota(name, description, amount, operation, default=default, in_users=in_users, in_groups=in_groups) diff --git a/parsec/commands/quotas/update_quota.py b/parsec/commands/quotas/update_quota.py index 72fadf8..e8e3b16 100644 --- a/parsec/commands/quotas/update_quota.py +++ b/parsec/commands/quotas/update_quota.py @@ -32,17 +32,21 @@ ) @click.option( "--in_users", - help="A list of user IDs or user emails." + help="A list of user IDs or user emails.", + type=str, + multiple=True ) @click.option( "--in_groups", - help="A list of group IDs or names." + help="A list of group IDs or names.", + type=str, + multiple=True ) @pass_context @bioblend_exception @dict_output -def cli(ctx, quota_id, name="", description="", amount="", operation="", default="", in_users="", in_groups=""): +def cli(ctx, quota_id, name="", description="", amount="", operation="", default="", in_users=None, in_groups=None): """Update an existing quota """ return ctx.gi.quotas.update_quota(quota_id, name=name, description=description, amount=amount, operation=operation, default=default, in_users=in_users, in_groups=in_groups) diff --git a/requirements.txt b/requirements.txt index 893ca37..2b18b01 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,6 +1,6 @@ Click pyyaml # pre-release version -git+https://github.com/erasche/bioblend.git@4fc0803ffc86bab14bf36eeb30bb055c7ef6cd94 +git+https://github.com/erasche/bioblend.git@2e92cbcc22d2e1d9dec6554f3ad21b12112925d5 docutils wrapt diff --git a/scripts/autobuilder.py b/scripts/autobuilder.py index adcddda..1e34918 100644 --- a/scripts/autobuilder.py +++ b/scripts/autobuilder.py @@ -52,6 +52,10 @@ 'type=str', # TODO 'multiple=True', ], + 'list of str': [ + 'type=str', # TODO + 'multiple=True', + ], 'file': [ 'type=click.File(\'rb+\')' ], From 7e9dc00a47580e37d5d5bda9df036aa7443db5c6 Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Mon, 8 May 2017 22:54:42 +0000 Subject: [PATCH 48/80] add badge for travis --- README.rst | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/README.rst b/README.rst index 79dd68e..9e5b3b0 100644 --- a/README.rst +++ b/README.rst @@ -3,7 +3,7 @@ Parsec: Galaxy at the Speed of Light ==================================== .. image:: https://readthedocs.org/projects/pip/badge/?version=latest - :target: https://parsec.readthedocs.org. + :target: https://parsec.readthedocs.org. .. image:: https://landscape.io/github/galaxy-iuc/parsec/master/landscape.svg?stytle=flat :target: https://landscape.io/github/galaxy-iuc/parsec/master @@ -12,6 +12,8 @@ Parsec: Galaxy at the Speed of Light :target: https://requires.io/github/galaxy-iuc/parsec/requirements/?branch=master :alt: Requirements Status +.. image:: https://travis-ci.org/galaxy-iuc/parsec.svg?branch=master + :target: https://travis-ci.org/galaxy-iuc/parsec Command-line utilities to assist in working with Galaxy_ servers. From 5a5f18497e57f32ca1c2d1ef95b5cf8e34c97b65 Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Mon, 8 May 2017 23:30:40 +0000 Subject: [PATCH 49/80] Bump RC version --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index 5917295..22c290d 100644 --- a/setup.py +++ b/setup.py @@ -20,7 +20,7 @@ # TODO: put package test requirements here ] -version = '1.0.0-rc1' +version = '1.0.0-rc4' subpackages = [x.replace('/', '.') for x in glob.glob('parsec/commands/*') if not x.endswith('.py')] setup( From 8a86cc5e3beec8a931748a56adb29e1276dd2eb8 Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Mon, 8 May 2017 23:31:32 +0000 Subject: [PATCH 50/80] fix deps --- setup.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/setup.py b/setup.py index 22c290d..18b27ec 100644 --- a/setup.py +++ b/setup.py @@ -12,8 +12,9 @@ requirements = [ 'Click>=6.7', - 'bioblend', + 'git+https://github.com/erasche/bioblend.git@2e92cbcc22d2e1d9dec6554f3ad21b12112925d5', 'wrapt', + 'pyyaml', ] test_requirements = [ From 9e6988d2eed1478f0944da1da177e88b2dfe557d Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Mon, 8 May 2017 23:40:32 +0000 Subject: [PATCH 51/80] fix bad req spec --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index 18b27ec..d147216 100644 --- a/setup.py +++ b/setup.py @@ -21,7 +21,7 @@ # TODO: put package test requirements here ] -version = '1.0.0-rc4' +version = '1.0.0-rc5' subpackages = [x.replace('/', '.') for x in glob.glob('parsec/commands/*') if not x.endswith('.py')] setup( From 36e7f7da1756953c1e42a09c7662c4d5f9b0f51d Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Mon, 8 May 2017 23:59:20 +0000 Subject: [PATCH 52/80] fix installation --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index d147216..f8c5fbc 100644 --- a/setup.py +++ b/setup.py @@ -12,7 +12,7 @@ requirements = [ 'Click>=6.7', - 'git+https://github.com/erasche/bioblend.git@2e92cbcc22d2e1d9dec6554f3ad21b12112925d5', + 'bioblend', 'wrapt', 'pyyaml', ] From 3524655c3dadf29a60d0127dc4f517d3db3479bb Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Tue, 9 May 2017 00:08:17 +0000 Subject: [PATCH 53/80] Fix section size? --- HISTORY.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/HISTORY.rst b/HISTORY.rst index fc7eaa6..f76f03b 100644 --- a/HISTORY.rst +++ b/HISTORY.rst @@ -1,7 +1,7 @@ .. :changelog: History -------- +======= .. to_doc From cb0b48f0b3ae84aa6928e00da90611a9907227a2 Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Tue, 9 May 2017 00:12:53 +0000 Subject: [PATCH 54/80] Ok, ignore history for now --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index f8c5fbc..00fdb03 100644 --- a/setup.py +++ b/setup.py @@ -28,7 +28,7 @@ name='galaxy-parsec', version=version, description='Command-line utilities to assist in interacting with Galaxy servers (http://galaxyproject.org/).', - long_description=readme + '\n\n' + history, + long_description=readme, # TODO: + '\n\n' + history, author='Galaxy Project and Community', author_email='rasche.eric@gmail.com', url='https://github.com/galaxy-iuc/parsec', From b82ae49e83d1d455e365ef0014c2a5d720c258ed Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Tue, 9 May 2017 16:38:59 +0000 Subject: [PATCH 55/80] Ensure escaping works automatically --- parsec/commands/datatypes/get_datatypes.py | 4 ++-- parsec/commands/folders/set_permissions.py | 2 +- parsec/commands/ftpfiles/get_ftp_files.py | 2 +- parsec/commands/histories/download_dataset.py | 2 +- parsec/commands/histories/get_histories.py | 2 +- parsec/commands/users/get_users.py | 2 +- scripts/autobuilder.py | 2 +- 7 files changed, 8 insertions(+), 8 deletions(-) diff --git a/parsec/commands/datatypes/get_datatypes.py b/parsec/commands/datatypes/get_datatypes.py index 8cf5351..1c22088 100644 --- a/parsec/commands/datatypes/get_datatypes.py +++ b/parsec/commands/datatypes/get_datatypes.py @@ -6,11 +6,11 @@ @click.option( "--extension_only", - help="None" + help="" ) @click.option( "--upload_only", - help="None" + help="" ) @pass_context diff --git a/parsec/commands/folders/set_permissions.py b/parsec/commands/folders/set_permissions.py index f2f4d88..b39eeed 100644 --- a/parsec/commands/folders/set_permissions.py +++ b/parsec/commands/folders/set_permissions.py @@ -7,7 +7,7 @@ @click.option( "--action", - help="action to execute, only "set_permissions" is supported.", + help="action to execute, only \"set_permissions\" is supported.", type=str ) @click.option( diff --git a/parsec/commands/ftpfiles/get_ftp_files.py b/parsec/commands/ftpfiles/get_ftp_files.py index ac357a9..2d839cc 100644 --- a/parsec/commands/ftpfiles/get_ftp_files.py +++ b/parsec/commands/ftpfiles/get_ftp_files.py @@ -6,7 +6,7 @@ @click.option( "--deleted", - help="None" + help="" ) @pass_context diff --git a/parsec/commands/histories/download_dataset.py b/parsec/commands/histories/download_dataset.py index 21df58d..dea7943 100644 --- a/parsec/commands/histories/download_dataset.py +++ b/parsec/commands/histories/download_dataset.py @@ -9,7 +9,7 @@ @click.option( "--use_default_filename", - help="None" + help="" ) @pass_context diff --git a/parsec/commands/histories/get_histories.py b/parsec/commands/histories/get_histories.py index 536f256..f158908 100644 --- a/parsec/commands/histories/get_histories.py +++ b/parsec/commands/histories/get_histories.py @@ -16,7 +16,7 @@ ) @click.option( "--deleted", - help="None" + help="" ) @pass_context diff --git a/parsec/commands/users/get_users.py b/parsec/commands/users/get_users.py index c761bdb..c3172fc 100644 --- a/parsec/commands/users/get_users.py +++ b/parsec/commands/users/get_users.py @@ -6,7 +6,7 @@ @click.option( "--deleted", - help="None" + help="" ) @pass_context diff --git a/scripts/autobuilder.py b/scripts/autobuilder.py index 1e34918..61875c1 100644 --- a/scripts/autobuilder.py +++ b/scripts/autobuilder.py @@ -81,7 +81,7 @@ def template(self, template, opts): def __click_option(cls, name='arg', helpstr='TODO', ptype=None): args = [ '"--%s"' % name, - 'help="%s"' % helpstr + 'help="%s"' % (helpstr.replace('"', '\\"') if helpstr else "") ] if ptype is not None: args.extend(ptype) From 60d25a2dc48382a20cd30c98d7237f46525eddbb Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Wed, 10 May 2017 17:37:57 +0000 Subject: [PATCH 56/80] docs update --- docs/commands/datatypes.rst | 4 +- docs/commands/folders.rst | 86 +++++++++++++++++++++++++++++++ docs/commands/ftpfiles.rst | 2 +- docs/commands/histories.rst | 4 +- docs/commands/quotas.rst | 100 ++++++++++++++++++++++++++++++++++++ docs/commands/toolshed.rst | 11 ++-- docs/commands/users.rst | 2 +- 7 files changed, 198 insertions(+), 11 deletions(-) diff --git a/docs/commands/datatypes.rst b/docs/commands/datatypes.rst index 2c7afd2..15fd63f 100644 --- a/docs/commands/datatypes.rst +++ b/docs/commands/datatypes.rst @@ -18,8 +18,8 @@ Get the list of all installed datatypes. **Options**:: - --extension_only TEXT None - --upload_only TEXT None + --extension_only TEXT + --upload_only TEXT --help Show this message and exit. diff --git a/docs/commands/folders.rst b/docs/commands/folders.rst index 93a623c..cd3b1d0 100644 --- a/docs/commands/folders.rst +++ b/docs/commands/folders.rst @@ -1,6 +1,27 @@ folders ======= +``create_folder`` command +------------------------- + +This section is auto-generated from the help text for the parsec command +``folders``. + +**Usage**:: + + parsec folders create_folder [OPTIONS] PARENT_FOLDER_ID NAME + +**Help** + +Create a folder. + +**Options**:: + + + --description TEXT folder's description + --help Show this message and exit. + + ``delete_folder`` command ------------------------- @@ -23,6 +44,50 @@ Marks the folder with the given ``id`` as `deleted` (or removes the `deleted` ma --help Show this message and exit. +``get_permissions`` command +--------------------------- + +This section is auto-generated from the help text for the parsec command +``folders``. + +**Usage**:: + + parsec folders get_permissions [OPTIONS] FOLDER_ID SCOPE + +**Help** + +Get the permissions of a folder. + +**Options**:: + + + --help Show this message and exit. + + +``set_permissions`` command +--------------------------- + +This section is auto-generated from the help text for the parsec command +``folders``. + +**Usage**:: + + parsec folders set_permissions [OPTIONS] FOLDER_ID + +**Help** + +Set the permissions of a folder. + +**Options**:: + + + --action TEXT action to execute, only "set_permissions" is supported. + --add_ids TEXT list of role IDs which can add datasets to the folder + --manage_ids TEXT list of role IDs which can manage datasets in the folder + --modify_ids TEXT list of role IDs which can modify datasets in the folder + --help Show this message and exit. + + ``show_folder`` command ----------------------- @@ -42,3 +107,24 @@ Display information about a folder. --help Show this message and exit. + +``update_folder`` command +------------------------- + +This section is auto-generated from the help text for the parsec command +``folders``. + +**Usage**:: + + parsec folders update_folder [OPTIONS] FOLDER_ID NAME + +**Help** + +Update folder information. + +**Options**:: + + + --description TEXT folder's description + --help Show this message and exit. + diff --git a/docs/commands/ftpfiles.rst b/docs/commands/ftpfiles.rst index e228553..b7ead47 100644 --- a/docs/commands/ftpfiles.rst +++ b/docs/commands/ftpfiles.rst @@ -18,6 +18,6 @@ Get a list of local files. **Options**:: - --deleted TEXT None + --deleted TEXT --help Show this message and exit. diff --git a/docs/commands/histories.rst b/docs/commands/histories.rst index 06e2a5b..74cc691 100644 --- a/docs/commands/histories.rst +++ b/docs/commands/histories.rst @@ -141,7 +141,7 @@ Deprecated method, use :meth:`~bioblend.galaxy.datasets.DatasetClient.download_d **Options**:: - --use_default_filename TEXT None + --use_default_filename TEXT --help Show this message and exit. @@ -230,7 +230,7 @@ Get all histories or filter the specific one(s) via the provided ``name`` or ``h --history_id TEXT Encoded history ID to filter on --name TEXT Name of history to filter on - --deleted TEXT None + --deleted TEXT --help Show this message and exit. diff --git a/docs/commands/quotas.rst b/docs/commands/quotas.rst index 1d5c6dc..3302d38 100644 --- a/docs/commands/quotas.rst +++ b/docs/commands/quotas.rst @@ -1,6 +1,51 @@ quotas ====== +``create_quota`` command +------------------------ + +This section is auto-generated from the help text for the parsec command +``quotas``. + +**Usage**:: + + parsec quotas create_quota [OPTIONS] NAME DESCRIPTION AMOUNT OPERATION + +**Help** + +Create a new quota + +**Options**:: + + + --default TEXT Whether or not this is a default quota. Valid values are + ``no``, ``unregistered``, ``registered``. None is equivalent + to ``no``. + --in_users TEXT A list of user IDs or user emails. + --in_groups TEXT A list of group IDs or names. + --help Show this message and exit. + + +``delete_quota`` command +------------------------ + +This section is auto-generated from the help text for the parsec command +``quotas``. + +**Usage**:: + + parsec quotas delete_quota [OPTIONS] QUOTA_ID + +**Help** + +Delete a quota + +**Options**:: + + + --help Show this message and exit. + + ``get_quotas`` command ---------------------- @@ -42,3 +87,58 @@ Display information on a quota --deleted Search for quota in list of ones already marked as deleted --help Show this message and exit. + +``undelete_quota`` command +-------------------------- + +This section is auto-generated from the help text for the parsec command +``quotas``. + +**Usage**:: + + parsec quotas undelete_quota [OPTIONS] QUOTA_ID + +**Help** + +Unelete a quota + +**Options**:: + + + --help Show this message and exit. + + +``update_quota`` command +------------------------ + +This section is auto-generated from the help text for the parsec command +``quotas``. + +**Usage**:: + + parsec quotas update_quota [OPTIONS] QUOTA_ID + +**Help** + +Update an existing quota + +**Options**:: + + + --name TEXT Name for the new quota. This must be unique within a + Galaxy instance. + --description TEXT Quota description. If you supply this parameter, but not + the name, an error will be thrown. + --amount TEXT Quota size (E.g. ``10000MB``, ``99 gb``, ``0.2T``, + ``unlimited``) + --operation TEXT One of (``+``, ``-``, ``=``). If you wish to change this + value, you must also provide the ``amount``, otherwise it + will not take effect. + --default TEXT Whether or not this is a default quota. Valid values are + ``no``, ``unregistered``, ``registered``. Calling update + twice with a default of ``no`` will throw an error. Not + passing this parameter is equivalent to passing ``no``. + --in_users TEXT A list of user IDs or user emails. + --in_groups TEXT A list of group IDs or names. + --help Show this message and exit. + diff --git a/docs/commands/toolshed.rst b/docs/commands/toolshed.rst index b436dd1..9f84f0d 100644 --- a/docs/commands/toolshed.rst +++ b/docs/commands/toolshed.rst @@ -39,13 +39,14 @@ Install a specified repository revision from a specified Tool Shed into this Gal --install_tool_dependencies Whether or not to automatically handle tool - dependencies (see http://wiki.galaxyproject.or - g/AToolOrASuitePerRepository for more details) + dependencies (see + https://galaxyproject.org/toolshed/tool- + dependency-recipes/ for more details) --install_repository_dependencies Whether or not to automatically handle - repository dependencies (see http://wiki.galax - yproject.org/DefiningRepositoryDependencies - for more details) + repository dependencies (see + https://galaxyproject.org/toolshed/defining- + repository-dependencies/ for more details) --install_resolver_dependencies Whether or not to automatically install resolver dependencies (e.g. conda). This diff --git a/docs/commands/users.rst b/docs/commands/users.rst index 54dff75..e69e96c 100644 --- a/docs/commands/users.rst +++ b/docs/commands/users.rst @@ -134,7 +134,7 @@ Get a list of all registered users. If ``deleted`` is set to ``True``, get a lis **Options**:: - --deleted TEXT None + --deleted TEXT --help Show this message and exit. From 84ac8362fab17ed97ef496b733162c7569ad92cb Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Wed, 10 May 2017 17:40:33 +0000 Subject: [PATCH 57/80] Import changes from apollo's arrow work --- scripts/autobuilder.py | 44 +++++++++++++++++++++++++++++++++--------- 1 file changed, 35 insertions(+), 9 deletions(-) diff --git a/scripts/autobuilder.py b/scripts/autobuilder.py index 61875c1..b86c365 100644 --- a/scripts/autobuilder.py +++ b/scripts/autobuilder.py @@ -59,6 +59,7 @@ 'file': [ 'type=click.File(\'rb+\')' ], + 'None': [], } class ScriptBuilder(object): @@ -78,11 +79,13 @@ def template(self, template, opts): return self.templates[template] % opts @classmethod - def __click_option(cls, name='arg', helpstr='TODO', ptype=None): + def __click_option(cls, name='arg', helpstr='TODO', ptype=None, default=None): args = [ '"--%s"' % name, - 'help="%s"' % (helpstr.replace('"', '\\"') if helpstr else "") + 'help="%s"' % (helpstr.replace('"', '\\"') if helpstr else ""), ] + if default: + args.append('default="%s"' % default) if ptype is not None: args.extend(ptype) return '@click.option(\n%s\n)\n' % (',\n'.join([' ' + x for x in args])) @@ -193,10 +196,11 @@ def process(self): continue sm = getattr(bg, module) - submodules = dir(sm) - # Find the "...Client" - wanted = [x for x in submodules if 'Client' in x and x != 'Client'][0] - self.process_client(module, sm, wanted) + print(module, sm) + # submodules = dir(sm) + # # Find the "...Client" + # wanted = [x for x in submodules if 'Client' in x and x != 'Client'][0] + # self.process_client(module, sm, wanted) def process_client(self, module, sm, ssm_name): log.info("Processing bioblend.%s.%s", module, ssm_name) @@ -247,12 +251,19 @@ def orig(self, module_name, submodule, subsubmodule, function_name): sections = [x for x in argdoc.split("\n\n")] sections = [re.sub('\s+', ' ', x.strip()) for x in sections if x != ''] paramre = re.compile(":type (?P[^:]+): (?P[^:]+) :param (?P[^:]+): (?P.+)") + returnre = re.compile(":rtype: (?P[^:]+) :return: (?P.+)") for subsec in sections: m = paramre.match(subsec) if m: assert m.group('param_name') == m.group('param_name2') param_docs[m.group('param_name')] = {'type': m.group('param_type'), 'desc': m.group('desc')} + m = returnre.match(subsec) + if m: + param_docs['__return__'] = { + 'type': m.group('param_type'), + 'desc': m.group('desc'), + } argspec = list(self.pair_arguments(func)) data['kwarg_updates'] = '' @@ -268,16 +279,19 @@ def orig(self, module_name, submodule, subsubmodule, function_name): def process_arg(k, v, param_type, real_type): log.debug("Processing %s=%s %s %s", k, v, param_type, real_type) + orig_v = copy.deepcopy(v) # If v is not None, then it's a kwargs, otherwise an arg if v is not None: # Strings must be treated specially by removing their value if v == '__None__': v = 'None' + orig_v = None elif isinstance(v, str): - v = '""' + v = '"%s"' % v if v == []: v = None + orig_v = None # All other instances of V are fine, e.g. boolean=False or int=1000 # Register twice as the method invocation uses v=k @@ -296,7 +310,7 @@ def process_arg(k, v, param_type, real_type): except KeyError: print("Error finding %s in %s" % (k, candidate)) descstr = None - data['click_options'] += self.__click_option(name=k, helpstr=descstr, ptype=param_type) + data['click_options'] += self.__click_option(name=k, helpstr=descstr, ptype=param_type, default=orig_v) else: # Args, not kwargs tk = k @@ -309,16 +323,20 @@ def process_arg(k, v, param_type, real_type): argspec_keys = [x[0] for x in argspec] for k, v in argspec: + if k == '__return__': + continue try: param_type = self.parameter_translation(param_docs[k]['type']) real_type = param_docs[k]['type'] - except Exception as e: + except Exception: param_type = [] real_type = None process_arg(k, v, param_type, real_type) had_weird_kwargs = False for k in sorted(param_docs.keys()): + if k == '__return__': + continue # Ignore things we've seen before if k in argspec_keys: continue @@ -346,6 +364,14 @@ def process_arg(k, v, param_type, real_type): data['wrapped_method_args'] += ', **kwargs' data['empty_kwargs'] = '\n kwargs = {}\n' + # TODO: rtype -> dict_output / list_output / text_output + # __return__ must be in param_docs or it's a documentation BUG. + if '__return__' not in param_docs: + raise Exception("%s is not documented with a return type" % candidate) + data['output_format'] = param_docs['__return__']['type'] + # We allow "list of dicts" and other such silliness. + if ' ' in data['output_format']: + data['output_format'] = data['output_format'][0:data['output_format'].index(' ')] # My function is more effective until can figure out docstring data['short_docstring'] = self.important_doc(argdoc) From b2f11800ce246e0da400808e21991e33348f9d15 Mon Sep 17 00:00:00 2001 From: Eric Rasche Date: Wed, 10 May 2017 18:00:16 +0000 Subject: [PATCH 58/80] Update docs --- docs/commands/config.rst | 2 +- docs/commands/datasets.rst | 4 +-- docs/commands/datatypes.rst | 4 +-- docs/commands/folders.rst | 12 ++++----- docs/commands/forms.rst | 6 ++--- docs/commands/ftpfiles.rst | 2 +- docs/commands/genomes.rst | 6 ++--- docs/commands/groups.rst | 20 +++++++------- docs/commands/histories.rst | 54 ++++++++++++++++++------------------- docs/commands/jobs.rst | 8 +++--- docs/commands/libraries.rst | 36 ++++++++++++------------- docs/commands/quotas.rst | 16 +++++------ docs/commands/roles.rst | 4 +-- docs/commands/tool_data.rst | 8 +++--- docs/commands/tools.rst | 18 ++++++------- docs/commands/toolshed.rst | 6 ++--- docs/commands/users.rst | 18 ++++++------- docs/commands/visual.rst | 4 +-- docs/commands/workflows.rst | 36 ++++++++++++------------- parsec/cli.py | 2 +- scripts/commands_to_rst.py | 13 +++++++-- 21 files changed, 144 insertions(+), 135 deletions(-) diff --git a/docs/commands/config.rst b/docs/commands/config.rst index f80726a..c4cb2d2 100644 --- a/docs/commands/config.rst +++ b/docs/commands/config.rst @@ -18,5 +18,5 @@ Get a list of attributes about the Galaxy instance. More attributes will be pres **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. diff --git a/docs/commands/datasets.rst b/docs/commands/datasets.rst index 2275a80..71b01e8 100644 --- a/docs/commands/datasets.rst +++ b/docs/commands/datasets.rst @@ -36,7 +36,7 @@ Download a dataset to file or in memory. --maxwait FLOAT Time (in seconds) to wait for dataset to complete. If the dataset state is not complete within this time, a DatasetTimeoutException will be thrown. - --help Show this message and exit. + -h, --help Show this message and exit. ``show_dataset`` command @@ -59,5 +59,5 @@ Get details about a given dataset. This can be a history or a library dataset. --deleted Whether to return results for a deleted dataset --hda_ldda TEXT Whether to show a history dataset ('hda' - the default) or library dataset ('ldda'). - --help Show this message and exit. + -h, --help Show this message and exit. diff --git a/docs/commands/datatypes.rst b/docs/commands/datatypes.rst index 15fd63f..ca5a844 100644 --- a/docs/commands/datatypes.rst +++ b/docs/commands/datatypes.rst @@ -20,7 +20,7 @@ Get the list of all installed datatypes. --extension_only TEXT --upload_only TEXT - --help Show this message and exit. + -h, --help Show this message and exit. ``get_sniffers`` command @@ -40,5 +40,5 @@ Get the list of all installed sniffers. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. diff --git a/docs/commands/folders.rst b/docs/commands/folders.rst index cd3b1d0..c026e07 100644 --- a/docs/commands/folders.rst +++ b/docs/commands/folders.rst @@ -19,7 +19,7 @@ Create a folder. --description TEXT folder's description - --help Show this message and exit. + -h, --help Show this message and exit. ``delete_folder`` command @@ -41,7 +41,7 @@ Marks the folder with the given ``id`` as `deleted` (or removes the `deleted` ma --undelete If set to True, the folder will be undeleted (i.e. the `deleted` mark will be removed) - --help Show this message and exit. + -h, --help Show this message and exit. ``get_permissions`` command @@ -61,7 +61,7 @@ Get the permissions of a folder. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``set_permissions`` command @@ -85,7 +85,7 @@ Set the permissions of a folder. --add_ids TEXT list of role IDs which can add datasets to the folder --manage_ids TEXT list of role IDs which can manage datasets in the folder --modify_ids TEXT list of role IDs which can modify datasets in the folder - --help Show this message and exit. + -h, --help Show this message and exit. ``show_folder`` command @@ -105,7 +105,7 @@ Display information about a folder. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``update_folder`` command @@ -126,5 +126,5 @@ Update folder information. --description TEXT folder's description - --help Show this message and exit. + -h, --help Show this message and exit. diff --git a/docs/commands/forms.rst b/docs/commands/forms.rst index 9656153..8b0a16e 100644 --- a/docs/commands/forms.rst +++ b/docs/commands/forms.rst @@ -18,7 +18,7 @@ Create a new form. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``get_forms`` command @@ -38,7 +38,7 @@ Get the list of all forms. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``show_form`` command @@ -58,5 +58,5 @@ Get details of a given form. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. diff --git a/docs/commands/ftpfiles.rst b/docs/commands/ftpfiles.rst index b7ead47..7061975 100644 --- a/docs/commands/ftpfiles.rst +++ b/docs/commands/ftpfiles.rst @@ -19,5 +19,5 @@ Get a list of local files. --deleted TEXT - --help Show this message and exit. + -h, --help Show this message and exit. diff --git a/docs/commands/genomes.rst b/docs/commands/genomes.rst index d5d527f..f8125e6 100644 --- a/docs/commands/genomes.rst +++ b/docs/commands/genomes.rst @@ -18,7 +18,7 @@ Returns a list of installed genomes **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``install_genome`` command @@ -52,7 +52,7 @@ Download and/or index a genome. specified as the source --indexers TEXT POST array of indexers to run after downloading (indexers[] = first, indexers[] = second, ...) - --help Show this message and exit. + -h, --help Show this message and exit. ``show_genome`` command @@ -76,5 +76,5 @@ Returns information about build --chrom TEXT chrom --low TEXT low --high TEXT high - --help Show this message and exit. + -h, --help Show this message and exit. diff --git a/docs/commands/groups.rst b/docs/commands/groups.rst index 5e3c52c..4c832e3 100644 --- a/docs/commands/groups.rst +++ b/docs/commands/groups.rst @@ -18,7 +18,7 @@ Add a role to the given group. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``add_group_user`` command @@ -38,7 +38,7 @@ Add a user to the given group. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``create_group`` command @@ -60,7 +60,7 @@ Create a new group. --user_ids TEXT A list of encoded user IDs to add to the new group --role_ids TEXT A list of encoded role IDs to add to the new group - --help Show this message and exit. + -h, --help Show this message and exit. ``delete_group_role`` command @@ -80,7 +80,7 @@ Remove a role from the given group. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``delete_group_user`` command @@ -100,7 +100,7 @@ Remove a user from the given group. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``get_group_roles`` command @@ -120,7 +120,7 @@ Get the list of roles associated to the given group. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``get_group_users`` command @@ -140,7 +140,7 @@ Get the list of users associated to the given group. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``get_groups`` command @@ -160,7 +160,7 @@ Get all (not deleted) groups. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``show_group`` command @@ -180,7 +180,7 @@ Get details of a given group. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``update_group`` command @@ -208,5 +208,5 @@ Update a group. --role_ids TEXT New list of encoded role IDs for the group. It will substitute the previous list of roles (with [] if not specified) - --help Show this message and exit. + -h, --help Show this message and exit. diff --git a/docs/commands/histories.rst b/docs/commands/histories.rst index 74cc691..32d90bc 100644 --- a/docs/commands/histories.rst +++ b/docs/commands/histories.rst @@ -18,7 +18,7 @@ Create a new dataset collection **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``create_history`` command @@ -39,7 +39,7 @@ Create a new history, optionally setting the ``name``. --name TEXT Optional name for new history - --help Show this message and exit. + -h, --help Show this message and exit. ``create_history_tag`` command @@ -59,7 +59,7 @@ Create history tag **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``delete_dataset`` command @@ -79,8 +79,8 @@ Mark corresponding dataset as deleted. **Options**:: - --purge if ``True``, also purge (permanently delete) the dataset - --help Show this message and exit. + --purge if ``True``, also purge (permanently delete) the dataset + -h, --help Show this message and exit. ``delete_dataset_collection`` command @@ -100,7 +100,7 @@ Mark corresponding dataset collection as deleted. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``delete_history`` command @@ -120,8 +120,8 @@ Delete a history. **Options**:: - --purge if ``True``, also purge (permanently delete) the history - --help Show this message and exit. + --purge if ``True``, also purge (permanently delete) the history + -h, --help Show this message and exit. ``download_dataset`` command @@ -142,7 +142,7 @@ Deprecated method, use :meth:`~bioblend.galaxy.datasets.DatasetClient.download_d --use_default_filename TEXT - --help Show this message and exit. + -h, --help Show this message and exit. ``download_history`` command @@ -163,7 +163,7 @@ Download a history export archive. Use :meth:`export_history` to create an expo --chunk_size INTEGER how many bytes at a time should be read into memory - --help Show this message and exit. + -h, --help Show this message and exit. ``export_history`` command @@ -188,7 +188,7 @@ Start a job to create an export archive for the given history. --include_deleted whether to include deleted datasets in the export --wait if ``True``, block until the export is ready; else, return immediately - --help Show this message and exit. + -h, --help Show this message and exit. ``get_current_history`` command @@ -208,7 +208,7 @@ Deprecated method. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``get_histories`` command @@ -231,7 +231,7 @@ Get all histories or filter the specific one(s) via the provided ``name`` or ``h --history_id TEXT Encoded history ID to filter on --name TEXT Name of history to filter on --deleted TEXT - --help Show this message and exit. + -h, --help Show this message and exit. ``get_most_recently_used_history`` command @@ -251,7 +251,7 @@ Returns the current user's most recently used history (not deleted). **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``get_status`` command @@ -271,7 +271,7 @@ Returns the state of this history **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``show_dataset`` command @@ -291,7 +291,7 @@ Get details about a given history dataset. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``show_dataset_collection`` command @@ -311,7 +311,7 @@ Get details about a given history dataset collection. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``show_dataset_provenance`` command @@ -331,9 +331,9 @@ Get details related to how dataset was created (``id``, ``job_id``, ``tool_id``, **Options**:: - --follow If ``follow`` is ``True``, recursively fetch dataset provenance - information for all inputs and their inputs, etc... - --help Show this message and exit. + --follow If ``follow`` is ``True``, recursively fetch dataset provenance + information for all inputs and their inputs, etc... + -h, --help Show this message and exit. ``show_history`` command @@ -362,7 +362,7 @@ Get details of a given history. By default, just get the history meta informatio --details TEXT Used when contents=True, includes dataset details. Set to 'all' for the most information --types TEXT ??? - --help Show this message and exit. + -h, --help Show this message and exit. ``show_matching_datasets`` command @@ -386,7 +386,7 @@ Get dataset details for matching datasets within a history. regular expression will be returned; use plain strings for exact matches and None to match all datasets in the history - --help Show this message and exit. + -h, --help Show this message and exit. ``undelete_history`` command @@ -406,7 +406,7 @@ Undelete a history **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``update_dataset`` command @@ -431,7 +431,7 @@ Update history dataset metadata. Some of the attributes that can be modified are --genome_build TEXT Replace history dataset genome build (dbkey) --name TEXT Replace history dataset name with the given string --visible Mark or unmark history dataset as visible - --help Show this message and exit. + -h, --help Show this message and exit. ``update_dataset_collection`` command @@ -454,7 +454,7 @@ Update history dataset collection metadata. Some of the attributes that can be m --deleted Mark or unmark history dataset collection as deleted --name TEXT Replace history dataset collection name with the given string --visible Mark or unmark history dataset collection as visible - --help Show this message and exit. + -h, --help Show this message and exit. ``update_history`` command @@ -482,7 +482,7 @@ Update history metadata information. Some of the attributes that can be modified --purged If True, mark history as purged (permanently deleted). Ignored on Galaxy release_15.01 and earlier --tags TEXT Replace history tags with the given list - --help Show this message and exit. + -h, --help Show this message and exit. ``upload_dataset_from_library`` command @@ -502,5 +502,5 @@ Upload a dataset into the history from a library. Requires the library dataset I **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. diff --git a/docs/commands/jobs.rst b/docs/commands/jobs.rst index b5dc41c..3b04bb5 100644 --- a/docs/commands/jobs.rst +++ b/docs/commands/jobs.rst @@ -18,7 +18,7 @@ Get the list of jobs of the current user. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``get_state`` command @@ -38,7 +38,7 @@ Display the current state for a given job of the current user. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``search_jobs`` command @@ -58,7 +58,7 @@ Return jobs for the current user based payload content. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``show_job`` command @@ -79,5 +79,5 @@ Get details of a given job of the current user. --full_details when ``True``, the complete list of details for the given job. - --help Show this message and exit. + -h, --help Show this message and exit. diff --git a/docs/commands/libraries.rst b/docs/commands/libraries.rst index a69d8ad..2babd2a 100644 --- a/docs/commands/libraries.rst +++ b/docs/commands/libraries.rst @@ -21,7 +21,7 @@ Copy a Galaxy dataset into a library. --folder_id TEXT id of the folder where to place the uploaded files. If not provided, the root folder will be used --message TEXT message for copying action - --help Show this message and exit. + -h, --help Show this message and exit. ``create_folder`` command @@ -44,7 +44,7 @@ Create a folder in a library. --description TEXT description of the new folder in the data library --base_folder_id TEXT id of the folder where to create the new folder. If not provided, the root folder will be used - --help Show this message and exit. + -h, --help Show this message and exit. ``create_library`` command @@ -66,7 +66,7 @@ Create a data library with the properties defined in the arguments. --description TEXT Optional data library description --synopsis TEXT Optional data library synopsis - --help Show this message and exit. + -h, --help Show this message and exit. ``delete_library`` command @@ -86,7 +86,7 @@ Delete a data library. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``delete_library_dataset`` command @@ -106,8 +106,8 @@ Delete a library dataset in a data library. **Options**:: - --purged Indicate that the dataset should be purged (permanently deleted) - --help Show this message and exit. + --purged Indicate that the dataset should be purged (permanently deleted) + -h, --help Show this message and exit. ``get_folders`` command @@ -131,7 +131,7 @@ Get all the folders or filter specific one(s) via the provided ``name`` or ``fol --name TEXT filter for folder by name. For ``name`` specify the full path of the folder starting from the library's root folder, e.g. ``/subfolder/subsubfolder``. - --help Show this message and exit. + -h, --help Show this message and exit. ``get_libraries`` command @@ -155,7 +155,7 @@ Get all the libraries or filter for specific one(s) via the provided name or ID. --name TEXT If ``name`` is set and multiple names match the given name, all the libraries matching the argument will be returned --deleted If set to ``True``, return libraries that have been deleted - --help Show this message and exit. + -h, --help Show this message and exit. ``get_library_permissions`` command @@ -175,7 +175,7 @@ Get the permessions for a library. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``set_library_permissions`` command @@ -199,7 +199,7 @@ Set the permissions for a library. Note: it will override all security for this --modify_in TEXT list of role ids --add_in TEXT list of role ids --manage_in TEXT list of role ids - --help Show this message and exit. + -h, --help Show this message and exit. ``show_dataset`` command @@ -219,7 +219,7 @@ Get details about a given library dataset. The required ``library_id`` can be ob **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``show_folder`` command @@ -239,7 +239,7 @@ Get details about a given folder. The required ``folder_id`` can be obtained fro **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``show_library`` command @@ -261,7 +261,7 @@ Get information about a library. --contents True if want to get contents of the library (rather than just the library details) - --help Show this message and exit. + -h, --help Show this message and exit. ``upload_file_contents`` command @@ -285,7 +285,7 @@ Upload pasted_content to a data library as a new file. provided, the root folder will be used --file_type TEXT Galaxy file format name --dbkey TEXT Dbkey - --help Show this message and exit. + -h, --help Show this message and exit. ``upload_file_from_local_path`` command @@ -309,7 +309,7 @@ Read local file contents from file_local_path and upload data to a library. provided, the root folder will be used --file_type TEXT Galaxy file format name --dbkey TEXT Dbkey - --help Show this message and exit. + -h, --help Show this message and exit. ``upload_file_from_server`` command @@ -337,7 +337,7 @@ Upload all files in the specified subdirectory of the Galaxy library import dire Setting to 'link_to_files' symlinks instead of copying the files --roles TEXT ??? - --help Show this message and exit. + -h, --help Show this message and exit. ``upload_file_from_url`` command @@ -361,7 +361,7 @@ Upload a file to a library from a URL. provided, the root folder will be used --file_type TEXT Galaxy file format name --dbkey TEXT Dbkey - --help Show this message and exit. + -h, --help Show this message and exit. ``upload_from_galaxy_filesystem`` command @@ -389,5 +389,5 @@ Upload a set of files already present on the filesystem of the Galaxy server to Setting to 'link_to_files' symlinks instead of copying the files --roles TEXT ??? - --help Show this message and exit. + -h, --help Show this message and exit. diff --git a/docs/commands/quotas.rst b/docs/commands/quotas.rst index 3302d38..493ec51 100644 --- a/docs/commands/quotas.rst +++ b/docs/commands/quotas.rst @@ -23,7 +23,7 @@ Create a new quota to ``no``. --in_users TEXT A list of user IDs or user emails. --in_groups TEXT A list of group IDs or names. - --help Show this message and exit. + -h, --help Show this message and exit. ``delete_quota`` command @@ -43,7 +43,7 @@ Delete a quota **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``get_quotas`` command @@ -63,8 +63,8 @@ Get a list of quotas **Options**:: - --deleted Only return quota(s) that have been deleted - --help Show this message and exit. + --deleted Only return quota(s) that have been deleted + -h, --help Show this message and exit. ``show_quota`` command @@ -84,8 +84,8 @@ Display information on a quota **Options**:: - --deleted Search for quota in list of ones already marked as deleted - --help Show this message and exit. + --deleted Search for quota in list of ones already marked as deleted + -h, --help Show this message and exit. ``undelete_quota`` command @@ -105,7 +105,7 @@ Unelete a quota **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``update_quota`` command @@ -140,5 +140,5 @@ Update an existing quota passing this parameter is equivalent to passing ``no``. --in_users TEXT A list of user IDs or user emails. --in_groups TEXT A list of group IDs or names. - --help Show this message and exit. + -h, --help Show this message and exit. diff --git a/docs/commands/roles.rst b/docs/commands/roles.rst index d20b365..cbc107f 100644 --- a/docs/commands/roles.rst +++ b/docs/commands/roles.rst @@ -18,7 +18,7 @@ Displays a collection (list) of roles. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``show_role`` command @@ -38,5 +38,5 @@ Display information on a single role **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. diff --git a/docs/commands/tool_data.rst b/docs/commands/tool_data.rst index 9422b1d..0238b22 100644 --- a/docs/commands/tool_data.rst +++ b/docs/commands/tool_data.rst @@ -18,7 +18,7 @@ Delete an item from a data table. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``get_data_tables`` command @@ -38,7 +38,7 @@ Get the list of all data tables. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``reload_data_table`` command @@ -58,7 +58,7 @@ Reload a data table. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``show_data_table`` command @@ -78,5 +78,5 @@ Get details of a given data table. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. diff --git a/docs/commands/tools.rst b/docs/commands/tools.rst index 822c5a5..910c6c8 100644 --- a/docs/commands/tools.rst +++ b/docs/commands/tools.rst @@ -18,7 +18,7 @@ Get a list of available tool elements in Galaxy's configured toolbox. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``get_tools`` command @@ -42,7 +42,7 @@ Get all tools or filter the specific one(s) via the provided ``name`` or ``tool_ --name TEXT name of the requested tool(s) --trackster if True, only tools that are compatible with Trackster are returned - --help Show this message and exit. + -h, --help Show this message and exit. ``install_dependencies`` command @@ -62,7 +62,7 @@ Install dependencies for a given tool via a resolver. This works only for Conda **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``paste_content`` command @@ -82,7 +82,7 @@ Upload a string to a new dataset in the history specified by ``history_id``. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``put_url`` command @@ -102,7 +102,7 @@ Upload a string to a new dataset in the history specified by ``history_id``. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``run_tool`` command @@ -122,7 +122,7 @@ Runs tool specified by ``tool_id`` in history indicated by ``history_id`` with i **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``show_tool`` command @@ -144,7 +144,7 @@ Get details of a given tool. --io_details if True, get also input and output details --link_details if True, get also link details - --help Show this message and exit. + -h, --help Show this message and exit. ``upload_file`` command @@ -172,7 +172,7 @@ Upload the file specified by ``path`` to the history specified by ``history_id`` --to_posix_lines if True, convert universal line endings to POSIX line endings. Default is True. Set to False if you upload a gzip, bz2 or zip archive containing a binary file - --help Show this message and exit. + -h, --help Show this message and exit. ``upload_from_ftp`` command @@ -192,5 +192,5 @@ Upload the file specified by ``path`` from the user's FTP directory to the histo **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. diff --git a/docs/commands/toolshed.rst b/docs/commands/toolshed.rst index 9f84f0d..69badd4 100644 --- a/docs/commands/toolshed.rst +++ b/docs/commands/toolshed.rst @@ -18,7 +18,7 @@ Get the list of all installed Tool Shed repositories on this Galaxy instance. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``install_repository_revision`` command @@ -61,7 +61,7 @@ Install a specified repository revision from a specified Tool Shed into this Gal The name of a Galaxy tool panel section that should be created and the repository installed into. - --help Show this message and exit. + -h, --help Show this message and exit. ``show_repository`` command @@ -81,5 +81,5 @@ Get details of a given Tool Shed repository as it is installed on this Galaxy in **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. diff --git a/docs/commands/users.rst b/docs/commands/users.rst index e69e96c..59417e3 100644 --- a/docs/commands/users.rst +++ b/docs/commands/users.rst @@ -18,7 +18,7 @@ Create a new Galaxy local user. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``create_remote_user`` command @@ -38,7 +38,7 @@ Create a new Galaxy remote user. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``create_user`` command @@ -73,7 +73,7 @@ Create a new API key for a given user. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``delete_user`` command @@ -93,8 +93,8 @@ Delete a user. **Options**:: - --purge if ``True``, also purge (permanently delete) the history - --help Show this message and exit. + --purge if ``True``, also purge (permanently delete) the history + -h, --help Show this message and exit. ``get_current_user`` command @@ -114,7 +114,7 @@ Display information about the user associated with this Galaxy connection. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``get_users`` command @@ -135,7 +135,7 @@ Get a list of all registered users. If ``deleted`` is set to ``True``, get a lis --deleted TEXT - --help Show this message and exit. + -h, --help Show this message and exit. ``show_user`` command @@ -155,6 +155,6 @@ Display information about a user. **Options**:: - --deleted whether to return results for a deleted user - --help Show this message and exit. + --deleted whether to return results for a deleted user + -h, --help Show this message and exit. diff --git a/docs/commands/visual.rst b/docs/commands/visual.rst index a31b861..a131c23 100644 --- a/docs/commands/visual.rst +++ b/docs/commands/visual.rst @@ -18,7 +18,7 @@ Get the list of all visualizations. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``show_visualization`` command @@ -38,5 +38,5 @@ Get details of a given visualization. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. diff --git a/docs/commands/workflows.rst b/docs/commands/workflows.rst index af7794e..46ede32 100644 --- a/docs/commands/workflows.rst +++ b/docs/commands/workflows.rst @@ -18,7 +18,7 @@ Cancel the scheduling of a workflow. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``delete_workflow`` command @@ -38,7 +38,7 @@ Delete a workflow identified by `workflow_id`. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``export_workflow_dict`` command @@ -58,7 +58,7 @@ Exports a workflow. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``export_workflow_json`` command @@ -78,7 +78,7 @@ Deprecated method. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``export_workflow_to_local_path`` command @@ -103,7 +103,7 @@ Exports a workflow in JSON format to a given local path. Workflow-%s.ga, where %s is the workflow name. If use_default_name is False, file_local_path is assumed to contain the full file path including filename. - --help Show this message and exit. + -h, --help Show this message and exit. ``get_invocations`` command @@ -123,7 +123,7 @@ Get a list containing all the workflow invocations corresponding to the specifie **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``get_workflow_inputs`` command @@ -143,7 +143,7 @@ Get a list of workflow input IDs that match the given label. If no input matches **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``get_workflows`` command @@ -168,7 +168,7 @@ Get all workflows or filter the specific one(s) via the provided ``name`` or ``w ``workflow_id``). If multiple names match the given name, all the workflows matching the argument will be returned. --published if ``True``, return also published workflows - --help Show this message and exit. + -h, --help Show this message and exit. ``import_shared_workflow`` command @@ -188,7 +188,7 @@ Imports a new workflow from the shared published workflows. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``import_workflow_dict`` command @@ -208,7 +208,7 @@ Imports a new workflow given a dictionary representing a previously exported wor **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``import_workflow_from_local_path`` command @@ -228,7 +228,7 @@ Imports a new workflow given the path to a file containing a previously exported **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``import_workflow_json`` command @@ -248,7 +248,7 @@ Deprecated method. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``invoke_workflow`` command @@ -299,7 +299,7 @@ Invoke the workflow identified by ``workflow_id``. This will cause a workflow to changed over time or for workflows built outside of Galaxy with only a subset of inputs defined. - --help Show this message and exit. + -h, --help Show this message and exit. ``run_invocation_step_action`` command @@ -319,7 +319,7 @@ nature of this action and what is expected will vary based on the the type of wo **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``run_workflow`` command @@ -363,7 +363,7 @@ Run the workflow identified by ``workflow_id``. This method is deprecated, pleas outputs will be visible in the given history. --replacement_params TEXT pattern-based replacements for post-job actions (see below) - --help Show this message and exit. + -h, --help Show this message and exit. ``show_invocation`` command @@ -383,7 +383,7 @@ Get a workflow invocation object representing the scheduling of a workflow. This **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``show_invocation_step`` command @@ -403,7 +403,7 @@ See the details of a particular workflow invocation step. **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. ``show_workflow`` command @@ -423,5 +423,5 @@ Display information needed to run a workflow **Options**:: - --help Show this message and exit. + -h, --help Show this message and exit. diff --git a/parsec/cli.py b/parsec/cli.py index 3861a1b..b5946ca 100644 --- a/parsec/cli.py +++ b/parsec/cli.py @@ -9,7 +9,7 @@ from .galaxy import get_galaxy_instance, get_toolshed_instance from parsec import __version__ # noqa, ditto -CONTEXT_SETTINGS = dict(auto_envvar_prefix='PARSEC') +CONTEXT_SETTINGS = dict(auto_envvar_prefix='PARSEC', help_option_names=['-h', '--help']) class Context(object): diff --git a/scripts/commands_to_rst.py b/scripts/commands_to_rst.py index 9382b05..756d5d0 100644 --- a/scripts/commands_to_rst.py +++ b/scripts/commands_to_rst.py @@ -70,6 +70,7 @@ def clean_rst_line(line): new_lines = [] help_lines = False option_lines = False + output_lines = False for line in lines: if line.startswith("Usage: "): @@ -77,11 +78,19 @@ def clean_rst_line(line): new_lines.append("\n**Help**\n") new_lines.append(clean_rst) help_lines = True + option_lines = False + output_lines = False elif line.startswith("Options:"): help_lines = False - new_lines.append("**Options**::\n\n") option_lines = True - elif option_lines: + output_lines = False + new_lines.append("**Options**::\n\n") + elif line.strip().startswith("Output:"): + help_lines = False + option_lines = False + output_lines = True + new_lines.append("**Output**::\n\n") + elif option_lines or output_lines: new_lines.append(" %s" % line) text = COMMAND_TEMPLATE.safe_substitute( command=command, From a5c30b9781a0e717a7e7b4ffbba5779489b1f4ca Mon Sep 17 00:00:00 2001 From: E Rasche Date: Thu, 25 May 2017 18:02:09 +0000 Subject: [PATCH 59/80] nicer docs --- scripts/commands_to_rst.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/commands_to_rst.py b/scripts/commands_to_rst.py index 756d5d0..8260f63 100644 --- a/scripts/commands_to_rst.py +++ b/scripts/commands_to_rst.py @@ -20,7 +20,7 @@ ${module_underline} This section is auto-generated from the help text for the parsec command -``${command}``. +``${command} ${subcommand}``. ${command_help} ''') From 15eb99ad873e16c8fafe6a18499460d210d80a42 Mon Sep 17 00:00:00 2001 From: E Rasche Date: Thu, 25 May 2017 18:06:22 +0000 Subject: [PATCH 60/80] Now use defaults --- docs/commands/config.rst | 7 +- docs/commands/datasets.rst | 10 +-- docs/commands/datatypes.rst | 10 +-- docs/commands/folders.rst | 22 +---- docs/commands/forms.rst | 13 +-- docs/commands/ftpfiles.rst | 7 +- docs/commands/genomes.rst | 13 +-- docs/commands/groups.rst | 34 +------- docs/commands/histories.rst | 80 ++----------------- docs/commands/jobs.rst | 16 +--- docs/commands/libraries.rst | 55 +------------ docs/commands/quotas.rst | 22 +---- docs/commands/roles.rst | 10 +-- docs/commands/tool_data.rst | 16 +--- docs/commands/tools.rst | 31 +------ docs/commands/toolshed.rst | 24 +++--- docs/commands/users.rst | 28 +------ docs/commands/visual.rst | 10 +-- docs/commands/workflows.rst | 78 ++++-------------- parsec/commands/datasets/download_dataset.py | 2 + parsec/commands/datasets/show_dataset.py | 3 +- parsec/commands/genomes/install_genome.py | 3 +- parsec/commands/histories/delete_dataset.py | 9 +-- parsec/commands/histories/download_dataset.py | 5 +- parsec/commands/histories/download_history.py | 1 + parsec/commands/histories/export_history.py | 1 + parsec/commands/histories/update_history.py | 25 ++---- .../libraries/upload_file_contents.py | 4 +- .../libraries/upload_file_from_local_path.py | 4 +- .../libraries/upload_file_from_server.py | 4 +- .../libraries/upload_file_from_url.py | 4 +- .../upload_from_galaxy_filesystem.py | 4 +- .../toolshed/install_repository_revision.py | 4 +- .../workflows/export_workflow_json.py | 4 +- .../export_workflow_to_local_path.py | 3 +- .../workflows/import_workflow_json.py | 4 +- parsec/commands/workflows/invoke_workflow.py | 3 +- parsec/commands/workflows/run_workflow.py | 8 +- scripts/autobuilder.py | 19 +++-- scripts/commands_to_rst.py | 29 +++++-- 40 files changed, 176 insertions(+), 453 deletions(-) diff --git a/docs/commands/config.rst b/docs/commands/config.rst index c4cb2d2..8ff833f 100644 --- a/docs/commands/config.rst +++ b/docs/commands/config.rst @@ -1,12 +1,13 @@ config ====== +This section is auto-generated from the help text for the arrow command +``config``. + + ``get_config`` command ---------------------- -This section is auto-generated from the help text for the parsec command -``config``. - **Usage**:: parsec config get_config [OPTIONS] diff --git a/docs/commands/datasets.rst b/docs/commands/datasets.rst index 71b01e8..4db159e 100644 --- a/docs/commands/datasets.rst +++ b/docs/commands/datasets.rst @@ -1,12 +1,13 @@ datasets ======== +This section is auto-generated from the help text for the arrow command +``datasets``. + + ``download_dataset`` command ---------------------------- -This section is auto-generated from the help text for the parsec command -``datasets``. - **Usage**:: parsec datasets download_dataset [OPTIONS] DATASET_ID @@ -42,9 +43,6 @@ Download a dataset to file or in memory. ``show_dataset`` command ------------------------ -This section is auto-generated from the help text for the parsec command -``datasets``. - **Usage**:: parsec datasets show_dataset [OPTIONS] DATASET_ID diff --git a/docs/commands/datatypes.rst b/docs/commands/datatypes.rst index ca5a844..d65c3ee 100644 --- a/docs/commands/datatypes.rst +++ b/docs/commands/datatypes.rst @@ -1,12 +1,13 @@ datatypes ========= +This section is auto-generated from the help text for the arrow command +``datatypes``. + + ``get_datatypes`` command ------------------------- -This section is auto-generated from the help text for the parsec command -``datatypes``. - **Usage**:: parsec datatypes get_datatypes [OPTIONS] @@ -26,9 +27,6 @@ Get the list of all installed datatypes. ``get_sniffers`` command ------------------------ -This section is auto-generated from the help text for the parsec command -``datatypes``. - **Usage**:: parsec datatypes get_sniffers [OPTIONS] diff --git a/docs/commands/folders.rst b/docs/commands/folders.rst index c026e07..4c5e222 100644 --- a/docs/commands/folders.rst +++ b/docs/commands/folders.rst @@ -1,12 +1,13 @@ folders ======= +This section is auto-generated from the help text for the arrow command +``folders``. + + ``create_folder`` command ------------------------- -This section is auto-generated from the help text for the parsec command -``folders``. - **Usage**:: parsec folders create_folder [OPTIONS] PARENT_FOLDER_ID NAME @@ -25,9 +26,6 @@ Create a folder. ``delete_folder`` command ------------------------- -This section is auto-generated from the help text for the parsec command -``folders``. - **Usage**:: parsec folders delete_folder [OPTIONS] FOLDER_ID @@ -47,9 +45,6 @@ Marks the folder with the given ``id`` as `deleted` (or removes the `deleted` ma ``get_permissions`` command --------------------------- -This section is auto-generated from the help text for the parsec command -``folders``. - **Usage**:: parsec folders get_permissions [OPTIONS] FOLDER_ID SCOPE @@ -67,9 +62,6 @@ Get the permissions of a folder. ``set_permissions`` command --------------------------- -This section is auto-generated from the help text for the parsec command -``folders``. - **Usage**:: parsec folders set_permissions [OPTIONS] FOLDER_ID @@ -91,9 +83,6 @@ Set the permissions of a folder. ``show_folder`` command ----------------------- -This section is auto-generated from the help text for the parsec command -``folders``. - **Usage**:: parsec folders show_folder [OPTIONS] FOLDER_ID @@ -111,9 +100,6 @@ Display information about a folder. ``update_folder`` command ------------------------- -This section is auto-generated from the help text for the parsec command -``folders``. - **Usage**:: parsec folders update_folder [OPTIONS] FOLDER_ID NAME diff --git a/docs/commands/forms.rst b/docs/commands/forms.rst index 8b0a16e..b577fe7 100644 --- a/docs/commands/forms.rst +++ b/docs/commands/forms.rst @@ -1,12 +1,13 @@ forms ===== +This section is auto-generated from the help text for the arrow command +``forms``. + + ``create_form`` command ----------------------- -This section is auto-generated from the help text for the parsec command -``forms``. - **Usage**:: parsec forms create_form [OPTIONS] FORM_XML_TEXT @@ -24,9 +25,6 @@ Create a new form. ``get_forms`` command --------------------- -This section is auto-generated from the help text for the parsec command -``forms``. - **Usage**:: parsec forms get_forms [OPTIONS] @@ -44,9 +42,6 @@ Get the list of all forms. ``show_form`` command --------------------- -This section is auto-generated from the help text for the parsec command -``forms``. - **Usage**:: parsec forms show_form [OPTIONS] FORM_ID diff --git a/docs/commands/ftpfiles.rst b/docs/commands/ftpfiles.rst index 7061975..05c3611 100644 --- a/docs/commands/ftpfiles.rst +++ b/docs/commands/ftpfiles.rst @@ -1,12 +1,13 @@ ftpfiles ======== +This section is auto-generated from the help text for the arrow command +``ftpfiles``. + + ``get_ftp_files`` command ------------------------- -This section is auto-generated from the help text for the parsec command -``ftpfiles``. - **Usage**:: parsec ftpfiles get_ftp_files [OPTIONS] diff --git a/docs/commands/genomes.rst b/docs/commands/genomes.rst index f8125e6..75254ee 100644 --- a/docs/commands/genomes.rst +++ b/docs/commands/genomes.rst @@ -1,12 +1,13 @@ genomes ======= +This section is auto-generated from the help text for the arrow command +``genomes``. + + ``get_genomes`` command ----------------------- -This section is auto-generated from the help text for the parsec command -``genomes``. - **Usage**:: parsec genomes get_genomes [OPTIONS] @@ -24,9 +25,6 @@ Returns a list of installed genomes ``install_genome`` command -------------------------- -This section is auto-generated from the help text for the parsec command -``genomes``. - **Usage**:: parsec genomes install_genome [OPTIONS] @@ -58,9 +56,6 @@ Download and/or index a genome. ``show_genome`` command ----------------------- -This section is auto-generated from the help text for the parsec command -``genomes``. - **Usage**:: parsec genomes show_genome [OPTIONS] ID diff --git a/docs/commands/groups.rst b/docs/commands/groups.rst index 4c832e3..f84247e 100644 --- a/docs/commands/groups.rst +++ b/docs/commands/groups.rst @@ -1,12 +1,13 @@ groups ====== +This section is auto-generated from the help text for the arrow command +``groups``. + + ``add_group_role`` command -------------------------- -This section is auto-generated from the help text for the parsec command -``groups``. - **Usage**:: parsec groups add_group_role [OPTIONS] GROUP_ID ROLE_ID @@ -24,9 +25,6 @@ Add a role to the given group. ``add_group_user`` command -------------------------- -This section is auto-generated from the help text for the parsec command -``groups``. - **Usage**:: parsec groups add_group_user [OPTIONS] GROUP_ID USER_ID @@ -44,9 +42,6 @@ Add a user to the given group. ``create_group`` command ------------------------ -This section is auto-generated from the help text for the parsec command -``groups``. - **Usage**:: parsec groups create_group [OPTIONS] GROUP_NAME @@ -66,9 +61,6 @@ Create a new group. ``delete_group_role`` command ----------------------------- -This section is auto-generated from the help text for the parsec command -``groups``. - **Usage**:: parsec groups delete_group_role [OPTIONS] GROUP_ID ROLE_ID @@ -86,9 +78,6 @@ Remove a role from the given group. ``delete_group_user`` command ----------------------------- -This section is auto-generated from the help text for the parsec command -``groups``. - **Usage**:: parsec groups delete_group_user [OPTIONS] GROUP_ID USER_ID @@ -106,9 +95,6 @@ Remove a user from the given group. ``get_group_roles`` command --------------------------- -This section is auto-generated from the help text for the parsec command -``groups``. - **Usage**:: parsec groups get_group_roles [OPTIONS] GROUP_ID @@ -126,9 +112,6 @@ Get the list of roles associated to the given group. ``get_group_users`` command --------------------------- -This section is auto-generated from the help text for the parsec command -``groups``. - **Usage**:: parsec groups get_group_users [OPTIONS] GROUP_ID @@ -146,9 +129,6 @@ Get the list of users associated to the given group. ``get_groups`` command ---------------------- -This section is auto-generated from the help text for the parsec command -``groups``. - **Usage**:: parsec groups get_groups [OPTIONS] @@ -166,9 +146,6 @@ Get all (not deleted) groups. ``show_group`` command ---------------------- -This section is auto-generated from the help text for the parsec command -``groups``. - **Usage**:: parsec groups show_group [OPTIONS] GROUP_ID @@ -186,9 +163,6 @@ Get details of a given group. ``update_group`` command ------------------------ -This section is auto-generated from the help text for the parsec command -``groups``. - **Usage**:: parsec groups update_group [OPTIONS] GROUP_ID diff --git a/docs/commands/histories.rst b/docs/commands/histories.rst index 32d90bc..c65b631 100644 --- a/docs/commands/histories.rst +++ b/docs/commands/histories.rst @@ -1,12 +1,13 @@ histories ========= +This section is auto-generated from the help text for the arrow command +``histories``. + + ``create_dataset_collection`` command ------------------------------------- -This section is auto-generated from the help text for the parsec command -``histories``. - **Usage**:: parsec histories create_dataset_collection [OPTIONS] HISTORY_ID @@ -24,9 +25,6 @@ Create a new dataset collection ``create_history`` command -------------------------- -This section is auto-generated from the help text for the parsec command -``histories``. - **Usage**:: parsec histories create_history [OPTIONS] @@ -45,9 +43,6 @@ Create a new history, optionally setting the ``name``. ``create_history_tag`` command ------------------------------ -This section is auto-generated from the help text for the parsec command -``histories``. - **Usage**:: parsec histories create_history_tag [OPTIONS] HISTORY_ID TAG @@ -65,9 +60,6 @@ Create history tag ``delete_dataset`` command -------------------------- -This section is auto-generated from the help text for the parsec command -``histories``. - **Usage**:: parsec histories delete_dataset [OPTIONS] HISTORY_ID DATASET_ID @@ -79,16 +71,12 @@ Mark corresponding dataset as deleted. **Options**:: - --purge if ``True``, also purge (permanently delete) the dataset -h, --help Show this message and exit. ``delete_dataset_collection`` command ------------------------------------- -This section is auto-generated from the help text for the parsec command -``histories``. - **Usage**:: parsec histories delete_dataset_collection [OPTIONS] HISTORY_ID @@ -106,9 +94,6 @@ Mark corresponding dataset collection as deleted. ``delete_history`` command -------------------------- -This section is auto-generated from the help text for the parsec command -``histories``. - **Usage**:: parsec histories delete_history [OPTIONS] HISTORY_ID @@ -127,16 +112,13 @@ Delete a history. ``download_dataset`` command ---------------------------- -This section is auto-generated from the help text for the parsec command -``histories``. - **Usage**:: parsec histories download_dataset [OPTIONS] HISTORY_ID DATASET_ID **Help** -Deprecated method, use :meth:`~bioblend.galaxy.datasets.DatasetClient.download_dataset` instead. +Deprecated method, use ``bioblend.galaxy.dataset.DatasetClient.download_dataset()`` instead. **Options**:: @@ -148,9 +130,6 @@ Deprecated method, use :meth:`~bioblend.galaxy.datasets.DatasetClient.download_d ``download_history`` command ---------------------------- -This section is auto-generated from the help text for the parsec command -``histories``. - **Usage**:: parsec histories download_history [OPTIONS] HISTORY_ID JEHA_ID OUTF @@ -169,9 +148,6 @@ Download a history export archive. Use :meth:`export_history` to create an expo ``export_history`` command -------------------------- -This section is auto-generated from the help text for the parsec command -``histories``. - **Usage**:: parsec histories export_history [OPTIONS] HISTORY_ID @@ -194,9 +170,6 @@ Start a job to create an export archive for the given history. ``get_current_history`` command ------------------------------- -This section is auto-generated from the help text for the parsec command -``histories``. - **Usage**:: parsec histories get_current_history [OPTIONS] @@ -214,9 +187,6 @@ Deprecated method. ``get_histories`` command ------------------------- -This section is auto-generated from the help text for the parsec command -``histories``. - **Usage**:: parsec histories get_histories [OPTIONS] @@ -237,9 +207,6 @@ Get all histories or filter the specific one(s) via the provided ``name`` or ``h ``get_most_recently_used_history`` command ------------------------------------------ -This section is auto-generated from the help text for the parsec command -``histories``. - **Usage**:: parsec histories get_most_recently_used_history [OPTIONS] @@ -257,9 +224,6 @@ Returns the current user's most recently used history (not deleted). ``get_status`` command ---------------------- -This section is auto-generated from the help text for the parsec command -``histories``. - **Usage**:: parsec histories get_status [OPTIONS] HISTORY_ID @@ -277,9 +241,6 @@ Returns the state of this history ``show_dataset`` command ------------------------ -This section is auto-generated from the help text for the parsec command -``histories``. - **Usage**:: parsec histories show_dataset [OPTIONS] HISTORY_ID DATASET_ID @@ -297,9 +258,6 @@ Get details about a given history dataset. ``show_dataset_collection`` command ----------------------------------- -This section is auto-generated from the help text for the parsec command -``histories``. - **Usage**:: parsec histories show_dataset_collection [OPTIONS] HISTORY_ID @@ -317,9 +275,6 @@ Get details about a given history dataset collection. ``show_dataset_provenance`` command ----------------------------------- -This section is auto-generated from the help text for the parsec command -``histories``. - **Usage**:: parsec histories show_dataset_provenance [OPTIONS] HISTORY_ID DATASET_ID @@ -339,9 +294,6 @@ Get details related to how dataset was created (``id``, ``job_id``, ``tool_id``, ``show_history`` command ------------------------ -This section is auto-generated from the help text for the parsec command -``histories``. - **Usage**:: parsec histories show_history [OPTIONS] HISTORY_ID @@ -368,9 +320,6 @@ Get details of a given history. By default, just get the history meta informatio ``show_matching_datasets`` command ---------------------------------- -This section is auto-generated from the help text for the parsec command -``histories``. - **Usage**:: parsec histories show_matching_datasets [OPTIONS] HISTORY_ID @@ -392,9 +341,6 @@ Get dataset details for matching datasets within a history. ``undelete_history`` command ---------------------------- -This section is auto-generated from the help text for the parsec command -``histories``. - **Usage**:: parsec histories undelete_history [OPTIONS] HISTORY_ID @@ -412,9 +358,6 @@ Undelete a history ``update_dataset`` command -------------------------- -This section is auto-generated from the help text for the parsec command -``histories``. - **Usage**:: parsec histories update_dataset [OPTIONS] HISTORY_ID DATASET_ID @@ -437,9 +380,6 @@ Update history dataset metadata. Some of the attributes that can be modified are ``update_dataset_collection`` command ------------------------------------- -This section is auto-generated from the help text for the parsec command -``histories``. - **Usage**:: parsec histories update_dataset_collection [OPTIONS] HISTORY_ID @@ -460,9 +400,6 @@ Update history dataset collection metadata. Some of the attributes that can be m ``update_history`` command -------------------------- -This section is auto-generated from the help text for the parsec command -``histories``. - **Usage**:: parsec histories update_history [OPTIONS] HISTORY_ID @@ -474,13 +411,11 @@ Update history metadata information. Some of the attributes that can be modified **Options**:: + --name TEXT Replace history name with the given string --annotation TEXT Replace history annotation with given string --deleted Mark or unmark history as deleted --importable Mark or unmark history as importable - --name TEXT Replace history name with the given string --published Mark or unmark history as published - --purged If True, mark history as purged (permanently deleted). - Ignored on Galaxy release_15.01 and earlier --tags TEXT Replace history tags with the given list -h, --help Show this message and exit. @@ -488,9 +423,6 @@ Update history metadata information. Some of the attributes that can be modified ``upload_dataset_from_library`` command --------------------------------------- -This section is auto-generated from the help text for the parsec command -``histories``. - **Usage**:: parsec histories upload_dataset_from_library [OPTIONS] HISTORY_ID diff --git a/docs/commands/jobs.rst b/docs/commands/jobs.rst index 3b04bb5..6a78165 100644 --- a/docs/commands/jobs.rst +++ b/docs/commands/jobs.rst @@ -1,12 +1,13 @@ jobs ==== +This section is auto-generated from the help text for the arrow command +``jobs``. + + ``get_jobs`` command -------------------- -This section is auto-generated from the help text for the parsec command -``jobs``. - **Usage**:: parsec jobs get_jobs [OPTIONS] @@ -24,9 +25,6 @@ Get the list of jobs of the current user. ``get_state`` command --------------------- -This section is auto-generated from the help text for the parsec command -``jobs``. - **Usage**:: parsec jobs get_state [OPTIONS] JOB_ID @@ -44,9 +42,6 @@ Display the current state for a given job of the current user. ``search_jobs`` command ----------------------- -This section is auto-generated from the help text for the parsec command -``jobs``. - **Usage**:: parsec jobs search_jobs [OPTIONS] JOB_INFO @@ -64,9 +59,6 @@ Return jobs for the current user based payload content. ``show_job`` command -------------------- -This section is auto-generated from the help text for the parsec command -``jobs``. - **Usage**:: parsec jobs show_job [OPTIONS] JOB_ID diff --git a/docs/commands/libraries.rst b/docs/commands/libraries.rst index 2babd2a..55393dc 100644 --- a/docs/commands/libraries.rst +++ b/docs/commands/libraries.rst @@ -1,12 +1,13 @@ libraries ========= +This section is auto-generated from the help text for the arrow command +``libraries``. + + ``copy_from_dataset`` command ----------------------------- -This section is auto-generated from the help text for the parsec command -``libraries``. - **Usage**:: parsec libraries copy_from_dataset [OPTIONS] LIBRARY_ID DATASET_ID @@ -27,9 +28,6 @@ Copy a Galaxy dataset into a library. ``create_folder`` command ------------------------- -This section is auto-generated from the help text for the parsec command -``libraries``. - **Usage**:: parsec libraries create_folder [OPTIONS] LIBRARY_ID FOLDER_NAME @@ -50,9 +48,6 @@ Create a folder in a library. ``create_library`` command -------------------------- -This section is auto-generated from the help text for the parsec command -``libraries``. - **Usage**:: parsec libraries create_library [OPTIONS] NAME @@ -72,9 +67,6 @@ Create a data library with the properties defined in the arguments. ``delete_library`` command -------------------------- -This section is auto-generated from the help text for the parsec command -``libraries``. - **Usage**:: parsec libraries delete_library [OPTIONS] LIBRARY_ID @@ -92,9 +84,6 @@ Delete a data library. ``delete_library_dataset`` command ---------------------------------- -This section is auto-generated from the help text for the parsec command -``libraries``. - **Usage**:: parsec libraries delete_library_dataset [OPTIONS] LIBRARY_ID DATASET_ID @@ -113,9 +102,6 @@ Delete a library dataset in a data library. ``get_folders`` command ----------------------- -This section is auto-generated from the help text for the parsec command -``libraries``. - **Usage**:: parsec libraries get_folders [OPTIONS] LIBRARY_ID @@ -137,9 +123,6 @@ Get all the folders or filter specific one(s) via the provided ``name`` or ``fol ``get_libraries`` command ------------------------- -This section is auto-generated from the help text for the parsec command -``libraries``. - **Usage**:: parsec libraries get_libraries [OPTIONS] @@ -161,9 +144,6 @@ Get all the libraries or filter for specific one(s) via the provided name or ID. ``get_library_permissions`` command ----------------------------------- -This section is auto-generated from the help text for the parsec command -``libraries``. - **Usage**:: parsec libraries get_library_permissions [OPTIONS] LIBRARY_ID @@ -181,9 +161,6 @@ Get the permessions for a library. ``set_library_permissions`` command ----------------------------------- -This section is auto-generated from the help text for the parsec command -``libraries``. - **Usage**:: parsec libraries set_library_permissions [OPTIONS] LIBRARY_ID @@ -205,9 +182,6 @@ Set the permissions for a library. Note: it will override all security for this ``show_dataset`` command ------------------------ -This section is auto-generated from the help text for the parsec command -``libraries``. - **Usage**:: parsec libraries show_dataset [OPTIONS] LIBRARY_ID DATASET_ID @@ -225,9 +199,6 @@ Get details about a given library dataset. The required ``library_id`` can be ob ``show_folder`` command ----------------------- -This section is auto-generated from the help text for the parsec command -``libraries``. - **Usage**:: parsec libraries show_folder [OPTIONS] LIBRARY_ID FOLDER_ID @@ -245,9 +216,6 @@ Get details about a given folder. The required ``folder_id`` can be obtained fro ``show_library`` command ------------------------ -This section is auto-generated from the help text for the parsec command -``libraries``. - **Usage**:: parsec libraries show_library [OPTIONS] LIBRARY_ID @@ -267,9 +235,6 @@ Get information about a library. ``upload_file_contents`` command -------------------------------- -This section is auto-generated from the help text for the parsec command -``libraries``. - **Usage**:: parsec libraries upload_file_contents [OPTIONS] LIBRARY_ID PASTED_CONTENT @@ -291,9 +256,6 @@ Upload pasted_content to a data library as a new file. ``upload_file_from_local_path`` command --------------------------------------- -This section is auto-generated from the help text for the parsec command -``libraries``. - **Usage**:: parsec libraries upload_file_from_local_path [OPTIONS] LIBRARY_ID @@ -315,9 +277,6 @@ Read local file contents from file_local_path and upload data to a library. ``upload_file_from_server`` command ----------------------------------- -This section is auto-generated from the help text for the parsec command -``libraries``. - **Usage**:: parsec libraries upload_file_from_server [OPTIONS] LIBRARY_ID SERVER_DIR @@ -343,9 +302,6 @@ Upload all files in the specified subdirectory of the Galaxy library import dire ``upload_file_from_url`` command -------------------------------- -This section is auto-generated from the help text for the parsec command -``libraries``. - **Usage**:: parsec libraries upload_file_from_url [OPTIONS] LIBRARY_ID FILE_URL @@ -367,9 +323,6 @@ Upload a file to a library from a URL. ``upload_from_galaxy_filesystem`` command ----------------------------------------- -This section is auto-generated from the help text for the parsec command -``libraries``. - **Usage**:: parsec libraries upload_from_galaxy_filesystem [OPTIONS] LIBRARY_ID diff --git a/docs/commands/quotas.rst b/docs/commands/quotas.rst index 493ec51..a659c73 100644 --- a/docs/commands/quotas.rst +++ b/docs/commands/quotas.rst @@ -1,12 +1,13 @@ quotas ====== +This section is auto-generated from the help text for the arrow command +``quotas``. + + ``create_quota`` command ------------------------ -This section is auto-generated from the help text for the parsec command -``quotas``. - **Usage**:: parsec quotas create_quota [OPTIONS] NAME DESCRIPTION AMOUNT OPERATION @@ -29,9 +30,6 @@ Create a new quota ``delete_quota`` command ------------------------ -This section is auto-generated from the help text for the parsec command -``quotas``. - **Usage**:: parsec quotas delete_quota [OPTIONS] QUOTA_ID @@ -49,9 +47,6 @@ Delete a quota ``get_quotas`` command ---------------------- -This section is auto-generated from the help text for the parsec command -``quotas``. - **Usage**:: parsec quotas get_quotas [OPTIONS] @@ -70,9 +65,6 @@ Get a list of quotas ``show_quota`` command ---------------------- -This section is auto-generated from the help text for the parsec command -``quotas``. - **Usage**:: parsec quotas show_quota [OPTIONS] QUOTA_ID @@ -91,9 +83,6 @@ Display information on a quota ``undelete_quota`` command -------------------------- -This section is auto-generated from the help text for the parsec command -``quotas``. - **Usage**:: parsec quotas undelete_quota [OPTIONS] QUOTA_ID @@ -111,9 +100,6 @@ Unelete a quota ``update_quota`` command ------------------------ -This section is auto-generated from the help text for the parsec command -``quotas``. - **Usage**:: parsec quotas update_quota [OPTIONS] QUOTA_ID diff --git a/docs/commands/roles.rst b/docs/commands/roles.rst index cbc107f..259e9c6 100644 --- a/docs/commands/roles.rst +++ b/docs/commands/roles.rst @@ -1,12 +1,13 @@ roles ===== +This section is auto-generated from the help text for the arrow command +``roles``. + + ``get_roles`` command --------------------- -This section is auto-generated from the help text for the parsec command -``roles``. - **Usage**:: parsec roles get_roles [OPTIONS] @@ -24,9 +25,6 @@ Displays a collection (list) of roles. ``show_role`` command --------------------- -This section is auto-generated from the help text for the parsec command -``roles``. - **Usage**:: parsec roles show_role [OPTIONS] ROLE_ID diff --git a/docs/commands/tool_data.rst b/docs/commands/tool_data.rst index 0238b22..f2ade49 100644 --- a/docs/commands/tool_data.rst +++ b/docs/commands/tool_data.rst @@ -1,12 +1,13 @@ tool_data ========= +This section is auto-generated from the help text for the arrow command +``tool_data``. + + ``delete_data_table`` command ----------------------------- -This section is auto-generated from the help text for the parsec command -``tool_data``. - **Usage**:: parsec tool_data delete_data_table [OPTIONS] DATA_TABLE_ID VALUES @@ -24,9 +25,6 @@ Delete an item from a data table. ``get_data_tables`` command --------------------------- -This section is auto-generated from the help text for the parsec command -``tool_data``. - **Usage**:: parsec tool_data get_data_tables [OPTIONS] @@ -44,9 +42,6 @@ Get the list of all data tables. ``reload_data_table`` command ----------------------------- -This section is auto-generated from the help text for the parsec command -``tool_data``. - **Usage**:: parsec tool_data reload_data_table [OPTIONS] DATA_TABLE_ID @@ -64,9 +59,6 @@ Reload a data table. ``show_data_table`` command --------------------------- -This section is auto-generated from the help text for the parsec command -``tool_data``. - **Usage**:: parsec tool_data show_data_table [OPTIONS] DATA_TABLE_ID diff --git a/docs/commands/tools.rst b/docs/commands/tools.rst index 910c6c8..60f1e82 100644 --- a/docs/commands/tools.rst +++ b/docs/commands/tools.rst @@ -1,12 +1,13 @@ tools ===== +This section is auto-generated from the help text for the arrow command +``tools``. + + ``get_tool_panel`` command -------------------------- -This section is auto-generated from the help text for the parsec command -``tools``. - **Usage**:: parsec tools get_tool_panel [OPTIONS] @@ -24,9 +25,6 @@ Get a list of available tool elements in Galaxy's configured toolbox. ``get_tools`` command --------------------- -This section is auto-generated from the help text for the parsec command -``tools``. - **Usage**:: parsec tools get_tools [OPTIONS] @@ -48,9 +46,6 @@ Get all tools or filter the specific one(s) via the provided ``name`` or ``tool_ ``install_dependencies`` command -------------------------------- -This section is auto-generated from the help text for the parsec command -``tools``. - **Usage**:: parsec tools install_dependencies [OPTIONS] TOOL_ID @@ -68,9 +63,6 @@ Install dependencies for a given tool via a resolver. This works only for Conda ``paste_content`` command ------------------------- -This section is auto-generated from the help text for the parsec command -``tools``. - **Usage**:: parsec tools paste_content [OPTIONS] CONTENT HISTORY_ID @@ -88,9 +80,6 @@ Upload a string to a new dataset in the history specified by ``history_id``. ``put_url`` command ------------------- -This section is auto-generated from the help text for the parsec command -``tools``. - **Usage**:: parsec tools put_url [OPTIONS] CONTENT HISTORY_ID @@ -108,9 +97,6 @@ Upload a string to a new dataset in the history specified by ``history_id``. ``run_tool`` command -------------------- -This section is auto-generated from the help text for the parsec command -``tools``. - **Usage**:: parsec tools run_tool [OPTIONS] HISTORY_ID TOOL_ID TOOL_INPUTS @@ -128,9 +114,6 @@ Runs tool specified by ``tool_id`` in history indicated by ``history_id`` with i ``show_tool`` command --------------------- -This section is auto-generated from the help text for the parsec command -``tools``. - **Usage**:: parsec tools show_tool [OPTIONS] TOOL_ID @@ -150,9 +133,6 @@ Get details of a given tool. ``upload_file`` command ----------------------- -This section is auto-generated from the help text for the parsec command -``tools``. - **Usage**:: parsec tools upload_file [OPTIONS] PATH HISTORY_ID @@ -178,9 +158,6 @@ Upload the file specified by ``path`` to the history specified by ``history_id`` ``upload_from_ftp`` command --------------------------- -This section is auto-generated from the help text for the parsec command -``tools``. - **Usage**:: parsec tools upload_from_ftp [OPTIONS] PATH HISTORY_ID diff --git a/docs/commands/toolshed.rst b/docs/commands/toolshed.rst index 69badd4..998df6a 100644 --- a/docs/commands/toolshed.rst +++ b/docs/commands/toolshed.rst @@ -1,12 +1,13 @@ toolshed ======== +This section is auto-generated from the help text for the arrow command +``toolshed``. + + ``get_repositories`` command ---------------------------- -This section is auto-generated from the help text for the parsec command -``toolshed``. - **Usage**:: parsec toolshed get_repositories [OPTIONS] @@ -24,9 +25,6 @@ Get the list of all installed Tool Shed repositories on this Galaxy instance. ``install_repository_revision`` command --------------------------------------- -This section is auto-generated from the help text for the parsec command -``toolshed``. - **Usage**:: parsec toolshed install_repository_revision [OPTIONS] TOOL_SHED_URL NAME @@ -39,14 +37,13 @@ Install a specified repository revision from a specified Tool Shed into this Gal --install_tool_dependencies Whether or not to automatically handle tool - dependencies (see - https://galaxyproject.org/toolshed/tool- - dependency-recipes/ for more details) + dependencies (see http://wiki.galaxyproject.or + g/AToolOrASuitePerRepository for more details) --install_repository_dependencies Whether or not to automatically handle - repository dependencies (see - https://galaxyproject.org/toolshed/defining- - repository-dependencies/ for more details) + repository dependencies (see http://wiki.galax + yproject.org/DefiningRepositoryDependencies + for more details) --install_resolver_dependencies Whether or not to automatically install resolver dependencies (e.g. conda). This @@ -67,9 +64,6 @@ Install a specified repository revision from a specified Tool Shed into this Gal ``show_repository`` command --------------------------- -This section is auto-generated from the help text for the parsec command -``toolshed``. - **Usage**:: parsec toolshed show_repository [OPTIONS] TOOLSHED_ID diff --git a/docs/commands/users.rst b/docs/commands/users.rst index 59417e3..430de7b 100644 --- a/docs/commands/users.rst +++ b/docs/commands/users.rst @@ -1,12 +1,13 @@ users ===== +This section is auto-generated from the help text for the arrow command +``users``. + + ``create_local_user`` command ----------------------------- -This section is auto-generated from the help text for the parsec command -``users``. - **Usage**:: parsec users create_local_user [OPTIONS] USERNAME USER_EMAIL PASSWORD @@ -24,9 +25,6 @@ Create a new Galaxy local user. ``create_remote_user`` command ------------------------------ -This section is auto-generated from the help text for the parsec command -``users``. - **Usage**:: parsec users create_remote_user [OPTIONS] USER_EMAIL @@ -44,9 +42,6 @@ Create a new Galaxy remote user. ``create_user`` command ----------------------- -This section is auto-generated from the help text for the parsec command -``users``. - **Usage**:: parsec users [OPTIONS] COMMAND [ARGS]... @@ -59,9 +54,6 @@ Deprecated method. ``create_user_apikey`` command ------------------------------ -This section is auto-generated from the help text for the parsec command -``users``. - **Usage**:: parsec users create_user_apikey [OPTIONS] USER_ID @@ -79,9 +71,6 @@ Create a new API key for a given user. ``delete_user`` command ----------------------- -This section is auto-generated from the help text for the parsec command -``users``. - **Usage**:: parsec users delete_user [OPTIONS] USER_ID @@ -100,9 +89,6 @@ Delete a user. ``get_current_user`` command ---------------------------- -This section is auto-generated from the help text for the parsec command -``users``. - **Usage**:: parsec users get_current_user [OPTIONS] @@ -120,9 +106,6 @@ Display information about the user associated with this Galaxy connection. ``get_users`` command --------------------- -This section is auto-generated from the help text for the parsec command -``users``. - **Usage**:: parsec users get_users [OPTIONS] @@ -141,9 +124,6 @@ Get a list of all registered users. If ``deleted`` is set to ``True``, get a lis ``show_user`` command --------------------- -This section is auto-generated from the help text for the parsec command -``users``. - **Usage**:: parsec users show_user [OPTIONS] USER_ID diff --git a/docs/commands/visual.rst b/docs/commands/visual.rst index a131c23..6265d2e 100644 --- a/docs/commands/visual.rst +++ b/docs/commands/visual.rst @@ -1,12 +1,13 @@ visual ====== +This section is auto-generated from the help text for the arrow command +``visual``. + + ``get_visualizations`` command ------------------------------ -This section is auto-generated from the help text for the parsec command -``visual``. - **Usage**:: parsec visual get_visualizations [OPTIONS] @@ -24,9 +25,6 @@ Get the list of all visualizations. ``show_visualization`` command ------------------------------ -This section is auto-generated from the help text for the parsec command -``visual``. - **Usage**:: parsec visual show_visualization [OPTIONS] VISUAL_ID diff --git a/docs/commands/workflows.rst b/docs/commands/workflows.rst index 46ede32..ec25c03 100644 --- a/docs/commands/workflows.rst +++ b/docs/commands/workflows.rst @@ -1,12 +1,13 @@ workflows ========= +This section is auto-generated from the help text for the arrow command +``workflows``. + + ``cancel_invocation`` command ----------------------------- -This section is auto-generated from the help text for the parsec command -``workflows``. - **Usage**:: parsec workflows cancel_invocation [OPTIONS] WORKFLOW_ID INVOCATION_ID @@ -24,9 +25,6 @@ Cancel the scheduling of a workflow. ``delete_workflow`` command --------------------------- -This section is auto-generated from the help text for the parsec command -``workflows``. - **Usage**:: parsec workflows delete_workflow [OPTIONS] WORKFLOW_ID @@ -44,9 +42,6 @@ Delete a workflow identified by `workflow_id`. ``export_workflow_dict`` command -------------------------------- -This section is auto-generated from the help text for the parsec command -``workflows``. - **Usage**:: parsec workflows export_workflow_dict [OPTIONS] WORKFLOW_ID @@ -64,16 +59,13 @@ Exports a workflow. ``export_workflow_json`` command -------------------------------- -This section is auto-generated from the help text for the parsec command -``workflows``. - **Usage**:: parsec workflows export_workflow_json [OPTIONS] WORKFLOW_ID **Help** -Deprecated method. +Exports a workflow **Options**:: @@ -84,16 +76,13 @@ Deprecated method. ``export_workflow_to_local_path`` command ----------------------------------------- -This section is auto-generated from the help text for the parsec command -``workflows``. - **Usage**:: parsec workflows export_workflow_to_local_path [OPTIONS] WORKFLOW_ID **Help** -Exports a workflow in JSON format to a given local path. +Exports a workflow in json format to a given local path. **Options**:: @@ -109,9 +98,6 @@ Exports a workflow in JSON format to a given local path. ``get_invocations`` command --------------------------- -This section is auto-generated from the help text for the parsec command -``workflows``. - **Usage**:: parsec workflows get_invocations [OPTIONS] WORKFLOW_ID @@ -129,9 +115,6 @@ Get a list containing all the workflow invocations corresponding to the specifie ``get_workflow_inputs`` command ------------------------------- -This section is auto-generated from the help text for the parsec command -``workflows``. - **Usage**:: parsec workflows get_workflow_inputs [OPTIONS] WORKFLOW_ID LABEL @@ -149,9 +132,6 @@ Get a list of workflow input IDs that match the given label. If no input matches ``get_workflows`` command ------------------------- -This section is auto-generated from the help text for the parsec command -``workflows``. - **Usage**:: parsec workflows get_workflows [OPTIONS] @@ -174,9 +154,6 @@ Get all workflows or filter the specific one(s) via the provided ``name`` or ``w ``import_shared_workflow`` command ---------------------------------- -This section is auto-generated from the help text for the parsec command -``workflows``. - **Usage**:: parsec workflows import_shared_workflow [OPTIONS] WORKFLOW_ID @@ -194,9 +171,6 @@ Imports a new workflow from the shared published workflows. ``import_workflow_dict`` command -------------------------------- -This section is auto-generated from the help text for the parsec command -``workflows``. - **Usage**:: parsec workflows import_workflow_dict [OPTIONS] WORKFLOW_DICT @@ -214,9 +188,6 @@ Imports a new workflow given a dictionary representing a previously exported wor ``import_workflow_from_local_path`` command ------------------------------------------- -This section is auto-generated from the help text for the parsec command -``workflows``. - **Usage**:: parsec workflows import_workflow_from_local_path [OPTIONS] @@ -234,16 +205,13 @@ Imports a new workflow given the path to a file containing a previously exported ``import_workflow_json`` command -------------------------------- -This section is auto-generated from the help text for the parsec command -``workflows``. - **Usage**:: parsec workflows import_workflow_json [OPTIONS] WORKFLOW_JSON **Help** -Deprecated method. +Imports a new workflow given a json representation of a previously exported workflow. **Options**:: @@ -254,9 +222,6 @@ Deprecated method. ``invoke_workflow`` command --------------------------- -This section is auto-generated from the help text for the parsec command -``workflows``. - **Usage**:: parsec workflows invoke_workflow [OPTIONS] WORKFLOW_ID @@ -275,8 +240,10 @@ Invoke the workflow identified by ``workflow_id``. This will cause a workflow to HistoryDatasetAssociation (``hda``), or HistoryDatasetCollectionAssociation (``hdca``). - --params TEXT A mapping of non-datasets tool parameters (see - below) + --params TEXT A mapping of tool parameters that are non- + datasets parameters. The map must be in the + following format: ``{'blastn': {'param': + 'evalue', 'value': '1e-06'}}`` --history_id TEXT The encoded history ID where to store the workflow output. Alternatively, ``history_name`` may be specified to create a @@ -305,9 +272,6 @@ Invoke the workflow identified by ``workflow_id``. This will cause a workflow to ``run_invocation_step_action`` command -------------------------------------- -This section is auto-generated from the help text for the parsec command -``workflows``. - **Usage**:: parsec workflows run_invocation_step_action [OPTIONS] WORKFLOW_ID @@ -325,16 +289,13 @@ nature of this action and what is expected will vary based on the the type of wo ``run_workflow`` command ------------------------ -This section is auto-generated from the help text for the parsec command -``workflows``. - **Usage**:: parsec workflows run_workflow [OPTIONS] WORKFLOW_ID **Help** -Run the workflow identified by ``workflow_id``. This method is deprecated, please use :meth:`invoke_workflow` instead. +Run the workflow identified by ``workflow_id``. This method is deprecated please use ``invoke_workflow`` instead. **Options**:: @@ -348,8 +309,10 @@ Run the workflow identified by ``workflow_id``. This method is deprecated, pleas , 'src': '[ldda, ld, hda]'}}`` (e.g. ``{'23': {'id': '29beef4fadeed09f', 'src': 'ld'}}``) - --params TEXT A mapping of non-datasets tool parameters (see - below) + --params TEXT A mapping of tool parameters that are non-datasets + parameters. The map must be in the following + format: ``{'blastn': {'param': 'evalue', 'value': + '1e-06'}}`` --history_id TEXT The encoded history ID where to store the workflow output. Alternatively, ``history_name`` may be specified to create a new history. @@ -369,9 +332,6 @@ Run the workflow identified by ``workflow_id``. This method is deprecated, pleas ``show_invocation`` command --------------------------- -This section is auto-generated from the help text for the parsec command -``workflows``. - **Usage**:: parsec workflows show_invocation [OPTIONS] WORKFLOW_ID INVOCATION_ID @@ -389,9 +349,6 @@ Get a workflow invocation object representing the scheduling of a workflow. This ``show_invocation_step`` command -------------------------------- -This section is auto-generated from the help text for the parsec command -``workflows``. - **Usage**:: parsec workflows show_invocation_step [OPTIONS] WORKFLOW_ID INVOCATION_ID @@ -409,9 +366,6 @@ See the details of a particular workflow invocation step. ``show_workflow`` command ------------------------- -This section is auto-generated from the help text for the parsec command -``workflows``. - **Usage**:: parsec workflows show_workflow [OPTIONS] WORKFLOW_ID diff --git a/parsec/commands/datasets/download_dataset.py b/parsec/commands/datasets/download_dataset.py index 89fdfdf..6b752f6 100644 --- a/parsec/commands/datasets/download_dataset.py +++ b/parsec/commands/datasets/download_dataset.py @@ -13,6 +13,7 @@ @click.option( "--use_default_filename", help="If this argument is True, the exported file will be saved as file_path/%s, where %s is the dataset name. If this argument is False, file_path is assumed to contain the full file path including the filename.", + default="True", is_flag=True ) @click.option( @@ -23,6 +24,7 @@ @click.option( "--maxwait", help="Time (in seconds) to wait for dataset to complete. If the dataset state is not complete within this time, a DatasetTimeoutException will be thrown.", + default="12000", type=float ) diff --git a/parsec/commands/datasets/show_dataset.py b/parsec/commands/datasets/show_dataset.py index 52e7a55..67e2078 100644 --- a/parsec/commands/datasets/show_dataset.py +++ b/parsec/commands/datasets/show_dataset.py @@ -13,13 +13,14 @@ @click.option( "--hda_ldda", help="Whether to show a history dataset ('hda' - the default) or library dataset ('ldda').", + default="hda", type=str ) @pass_context @bioblend_exception @dict_output -def cli(ctx, dataset_id, deleted=False, hda_ldda=""): +def cli(ctx, dataset_id, deleted=False, hda_ldda="hda"): """Get details about a given dataset. This can be a history or a library dataset. """ return ctx.gi.datasets.show_dataset(dataset_id, deleted=deleted, hda_ldda=hda_ldda) diff --git a/parsec/commands/genomes/install_genome.py b/parsec/commands/genomes/install_genome.py index 5ccd667..0556c66 100644 --- a/parsec/commands/genomes/install_genome.py +++ b/parsec/commands/genomes/install_genome.py @@ -7,6 +7,7 @@ @click.option( "--func", help="Allowed values: 'download', Download and index; 'index', Index only", + default="download", type=str ) @click.option( @@ -44,7 +45,7 @@ @pass_context @bioblend_exception @dict_output -def cli(ctx, func="", source="", dbkey="", ncbi_name="", ensembl_dbkey="", url_dbkey="", indexers=""): +def cli(ctx, func="download", source="", dbkey="", ncbi_name="", ensembl_dbkey="", url_dbkey="", indexers=""): """Download and/or index a genome. """ return ctx.gi.genomes.install_genome(func=func, source=source, dbkey=dbkey, ncbi_name=ncbi_name, ensembl_dbkey=ensembl_dbkey, url_dbkey=url_dbkey, indexers=indexers) diff --git a/parsec/commands/histories/delete_dataset.py b/parsec/commands/histories/delete_dataset.py index 61e1bcc..40c8c49 100644 --- a/parsec/commands/histories/delete_dataset.py +++ b/parsec/commands/histories/delete_dataset.py @@ -6,16 +6,11 @@ @click.argument("history_id", type=str) @click.argument("dataset_id", type=str) -@click.option( - "--purge", - help="if ``True``, also purge (permanently delete) the dataset", - is_flag=True -) @pass_context @bioblend_exception @dict_output -def cli(ctx, history_id, dataset_id, purge=False): +def cli(ctx, history_id, dataset_id): """Mark corresponding dataset as deleted. """ - return ctx.gi.histories.delete_dataset(history_id, dataset_id, purge=purge) + return ctx.gi.histories.delete_dataset(history_id, dataset_id) diff --git a/parsec/commands/histories/download_dataset.py b/parsec/commands/histories/download_dataset.py index dea7943..6bc0c7f 100644 --- a/parsec/commands/histories/download_dataset.py +++ b/parsec/commands/histories/download_dataset.py @@ -9,13 +9,14 @@ @click.option( "--use_default_filename", - help="" + help="", + default="True" ) @pass_context @bioblend_exception @dict_output def cli(ctx, history_id, dataset_id, file_path, use_default_filename=True): - """Deprecated method, use :meth:`~bioblend.galaxy.datasets.DatasetClient.download_dataset` instead. + """Deprecated method, use ``bioblend.galaxy.dataset.DatasetClient.download_dataset()`` instead. """ return ctx.gi.histories.download_dataset(history_id, dataset_id, file_path, use_default_filename=use_default_filename) diff --git a/parsec/commands/histories/download_history.py b/parsec/commands/histories/download_history.py index 3b0c53a..be09215 100644 --- a/parsec/commands/histories/download_history.py +++ b/parsec/commands/histories/download_history.py @@ -10,6 +10,7 @@ @click.option( "--chunk_size", help="how many bytes at a time should be read into memory", + default="4096", type=int ) diff --git a/parsec/commands/histories/export_history.py b/parsec/commands/histories/export_history.py index 9f15de5..563abda 100644 --- a/parsec/commands/histories/export_history.py +++ b/parsec/commands/histories/export_history.py @@ -8,6 +8,7 @@ @click.option( "--gzip", help="create .tar.gz archive if ``True``, else .tar", + default="True", is_flag=True ) @click.option( diff --git a/parsec/commands/histories/update_history.py b/parsec/commands/histories/update_history.py index e435655..c5c77f6 100644 --- a/parsec/commands/histories/update_history.py +++ b/parsec/commands/histories/update_history.py @@ -5,6 +5,11 @@ @click.command('update_history') @click.argument("history_id", type=str) +@click.option( + "--name", + help="Replace history name with the given string", + type=str +) @click.option( "--annotation", help="Replace history annotation with given string", @@ -20,21 +25,11 @@ help="Mark or unmark history as importable", is_flag=True ) -@click.option( - "--name", - help="Replace history name with the given string", - type=str -) @click.option( "--published", help="Mark or unmark history as published", is_flag=True ) -@click.option( - "--purged", - help="If True, mark history as purged (permanently deleted). Ignored on Galaxy release_15.01 and earlier", - is_flag=True -) @click.option( "--tags", help="Replace history tags with the given list", @@ -45,21 +40,15 @@ @pass_context @bioblend_exception @dict_output -def cli(ctx, history_id, annotation=None, deleted=None, importable=None, name=None, published=None, purged=None, tags=None): +def cli(ctx, history_id, name="", annotation="", deleted=None, importable=None, published=None, tags=None): """Update history metadata information. Some of the attributes that can be modified are documented below. """ kwargs = {} - if annotation and len(annotation) > 0: - kwargs['annotation'] = annotation if deleted is not None: kwargs['deleted'] = deleted if importable is not None: kwargs['importable'] = importable - if name and len(name) > 0: - kwargs['name'] = name if published is not None: kwargs['published'] = published - if purged is not None: - kwargs['purged'] = purged - return ctx.gi.histories.update_history(history_id, tags=tags, **kwargs) + return ctx.gi.histories.update_history(history_id, name=name, annotation=annotation, tags=tags, **kwargs) diff --git a/parsec/commands/libraries/upload_file_contents.py b/parsec/commands/libraries/upload_file_contents.py index 415e8b3..49b9ec5 100644 --- a/parsec/commands/libraries/upload_file_contents.py +++ b/parsec/commands/libraries/upload_file_contents.py @@ -14,18 +14,20 @@ @click.option( "--file_type", help="Galaxy file format name", + default="auto", type=str ) @click.option( "--dbkey", help="Dbkey", + default="?", type=str ) @pass_context @bioblend_exception @dict_output -def cli(ctx, library_id, pasted_content, folder_id="", file_type="", dbkey=""): +def cli(ctx, library_id, pasted_content, folder_id="", file_type="auto", dbkey="?"): """Upload pasted_content to a data library as a new file. """ return ctx.gi.libraries.upload_file_contents(library_id, pasted_content, folder_id=folder_id, file_type=file_type, dbkey=dbkey) diff --git a/parsec/commands/libraries/upload_file_from_local_path.py b/parsec/commands/libraries/upload_file_from_local_path.py index d5d4281..bed740f 100644 --- a/parsec/commands/libraries/upload_file_from_local_path.py +++ b/parsec/commands/libraries/upload_file_from_local_path.py @@ -14,18 +14,20 @@ @click.option( "--file_type", help="Galaxy file format name", + default="auto", type=str ) @click.option( "--dbkey", help="Dbkey", + default="?", type=str ) @pass_context @bioblend_exception @dict_output -def cli(ctx, library_id, file_local_path, folder_id="", file_type="", dbkey=""): +def cli(ctx, library_id, file_local_path, folder_id="", file_type="auto", dbkey="?"): """Read local file contents from file_local_path and upload data to a library. """ return ctx.gi.libraries.upload_file_from_local_path(library_id, file_local_path, folder_id=folder_id, file_type=file_type, dbkey=dbkey) diff --git a/parsec/commands/libraries/upload_file_from_server.py b/parsec/commands/libraries/upload_file_from_server.py index 8feefa0..899ba65 100644 --- a/parsec/commands/libraries/upload_file_from_server.py +++ b/parsec/commands/libraries/upload_file_from_server.py @@ -14,11 +14,13 @@ @click.option( "--file_type", help="Galaxy file format name", + default="auto", type=str ) @click.option( "--dbkey", help="Dbkey", + default="?", type=str ) @click.option( @@ -35,7 +37,7 @@ @pass_context @bioblend_exception @dict_output -def cli(ctx, library_id, server_dir, folder_id="", file_type="", dbkey="", link_data_only="", roles=""): +def cli(ctx, library_id, server_dir, folder_id="", file_type="auto", dbkey="?", link_data_only="", roles=""): """Upload all files in the specified subdirectory of the Galaxy library import directory to a library. """ return ctx.gi.libraries.upload_file_from_server(library_id, server_dir, folder_id=folder_id, file_type=file_type, dbkey=dbkey, link_data_only=link_data_only, roles=roles) diff --git a/parsec/commands/libraries/upload_file_from_url.py b/parsec/commands/libraries/upload_file_from_url.py index f637a85..61cd7fd 100644 --- a/parsec/commands/libraries/upload_file_from_url.py +++ b/parsec/commands/libraries/upload_file_from_url.py @@ -14,18 +14,20 @@ @click.option( "--file_type", help="Galaxy file format name", + default="auto", type=str ) @click.option( "--dbkey", help="Dbkey", + default="?", type=str ) @pass_context @bioblend_exception @dict_output -def cli(ctx, library_id, file_url, folder_id="", file_type="", dbkey=""): +def cli(ctx, library_id, file_url, folder_id="", file_type="auto", dbkey="?"): """Upload a file to a library from a URL. """ return ctx.gi.libraries.upload_file_from_url(library_id, file_url, folder_id=folder_id, file_type=file_type, dbkey=dbkey) diff --git a/parsec/commands/libraries/upload_from_galaxy_filesystem.py b/parsec/commands/libraries/upload_from_galaxy_filesystem.py index fb8bb3c..2d084bc 100644 --- a/parsec/commands/libraries/upload_from_galaxy_filesystem.py +++ b/parsec/commands/libraries/upload_from_galaxy_filesystem.py @@ -14,11 +14,13 @@ @click.option( "--file_type", help="Galaxy file format name", + default="auto", type=str ) @click.option( "--dbkey", help="Dbkey", + default="?", type=str ) @click.option( @@ -35,7 +37,7 @@ @pass_context @bioblend_exception @dict_output -def cli(ctx, library_id, filesystem_paths, folder_id="", file_type="", dbkey="", link_data_only="", roles=""): +def cli(ctx, library_id, filesystem_paths, folder_id="", file_type="auto", dbkey="?", link_data_only="", roles=""): """Upload a set of files already present on the filesystem of the Galaxy server to a library. """ return ctx.gi.libraries.upload_from_galaxy_filesystem(library_id, filesystem_paths, folder_id=folder_id, file_type=file_type, dbkey=dbkey, link_data_only=link_data_only, roles=roles) diff --git a/parsec/commands/toolshed/install_repository_revision.py b/parsec/commands/toolshed/install_repository_revision.py index 46a8f89..694f14c 100644 --- a/parsec/commands/toolshed/install_repository_revision.py +++ b/parsec/commands/toolshed/install_repository_revision.py @@ -10,12 +10,12 @@ @click.option( "--install_tool_dependencies", - help="Whether or not to automatically handle tool dependencies (see https://galaxyproject.org/toolshed/tool-dependency-recipes/ for more details)", + help="Whether or not to automatically handle tool dependencies (see http://wiki.galaxyproject.org/AToolOrASuitePerRepository for more details)", is_flag=True ) @click.option( "--install_repository_dependencies", - help="Whether or not to automatically handle repository dependencies (see https://galaxyproject.org/toolshed/defining-repository-dependencies/ for more details)", + help="Whether or not to automatically handle repository dependencies (see http://wiki.galaxyproject.org/DefiningRepositoryDependencies for more details)", is_flag=True ) @click.option( diff --git a/parsec/commands/workflows/export_workflow_json.py b/parsec/commands/workflows/export_workflow_json.py index 6137bdf..f7c76d8 100644 --- a/parsec/commands/workflows/export_workflow_json.py +++ b/parsec/commands/workflows/export_workflow_json.py @@ -3,13 +3,13 @@ from parsec.decorators import bioblend_exception, dict_output @click.command('export_workflow_json') -@click.argument("workflow_id") +@click.argument("workflow_id", type=str) @pass_context @bioblend_exception @dict_output def cli(ctx, workflow_id): - """Deprecated method. + """Exports a workflow """ return ctx.gi.workflows.export_workflow_json(workflow_id) diff --git a/parsec/commands/workflows/export_workflow_to_local_path.py b/parsec/commands/workflows/export_workflow_to_local_path.py index e6ee73f..8a1c369 100644 --- a/parsec/commands/workflows/export_workflow_to_local_path.py +++ b/parsec/commands/workflows/export_workflow_to_local_path.py @@ -9,6 +9,7 @@ @click.option( "--use_default_filename", help="If the use_default_name parameter is True, the exported file will be saved as file_local_path/Galaxy-Workflow-%s.ga, where %s is the workflow name. If use_default_name is False, file_local_path is assumed to contain the full file path including filename.", + default="True", is_flag=True ) @@ -16,6 +17,6 @@ @bioblend_exception @dict_output def cli(ctx, workflow_id, file_local_path, use_default_filename=True): - """Exports a workflow in JSON format to a given local path. + """Exports a workflow in json format to a given local path. """ return ctx.gi.workflows.export_workflow_to_local_path(workflow_id, file_local_path, use_default_filename=use_default_filename) diff --git a/parsec/commands/workflows/import_workflow_json.py b/parsec/commands/workflows/import_workflow_json.py index 4e84d84..fb8595d 100644 --- a/parsec/commands/workflows/import_workflow_json.py +++ b/parsec/commands/workflows/import_workflow_json.py @@ -3,13 +3,13 @@ from parsec.decorators import bioblend_exception, dict_output @click.command('import_workflow_json') -@click.argument("workflow_json") +@click.argument("workflow_json", type=str) @pass_context @bioblend_exception @dict_output def cli(ctx, workflow_json): - """Deprecated method. + """Imports a new workflow given a json representation of a previously exported workflow. """ return ctx.gi.workflows.import_workflow_json(workflow_json) diff --git a/parsec/commands/workflows/invoke_workflow.py b/parsec/commands/workflows/invoke_workflow.py index 95e9628..09a8f3a 100644 --- a/parsec/commands/workflows/invoke_workflow.py +++ b/parsec/commands/workflows/invoke_workflow.py @@ -12,8 +12,7 @@ ) @click.option( "--params", - help="A mapping of non-datasets tool parameters (see below)", - type=str + help="A mapping of tool parameters that are non-datasets parameters. The map must be in the following format: ``{'blastn': {'param': 'evalue', 'value': '1e-06'}}``" ) @click.option( "--history_id", diff --git a/parsec/commands/workflows/run_workflow.py b/parsec/commands/workflows/run_workflow.py index e6e2874..3a7b73a 100644 --- a/parsec/commands/workflows/run_workflow.py +++ b/parsec/commands/workflows/run_workflow.py @@ -7,13 +7,11 @@ @click.option( "--dataset_map", - help="A mapping of workflow inputs to datasets. The datasets source can be a LibraryDatasetDatasetAssociation (``ldda``), LibraryDataset (``ld``), or HistoryDatasetAssociation (``hda``). The map must be in the following format: ``{'': {'id': , 'src': '[ldda, ld, hda]'}}`` (e.g. ``{'23': {'id': '29beef4fadeed09f', 'src': 'ld'}}``)", - type=str + help="A mapping of workflow inputs to datasets. The datasets source can be a LibraryDatasetDatasetAssociation (``ldda``), LibraryDataset (``ld``), or HistoryDatasetAssociation (``hda``). The map must be in the following format: ``{'': {'id': , 'src': '[ldda, ld, hda]'}}`` (e.g. ``{'23': {'id': '29beef4fadeed09f', 'src': 'ld'}}``)" ) @click.option( "--params", - help="A mapping of non-datasets tool parameters (see below)", - type=str + help="A mapping of tool parameters that are non-datasets parameters. The map must be in the following format: ``{'blastn': {'param': 'evalue', 'value': '1e-06'}}``" ) @click.option( "--history_id", @@ -40,6 +38,6 @@ @bioblend_exception @dict_output def cli(ctx, workflow_id, dataset_map="", params="", history_id="", history_name="", import_inputs_to_history=False, replacement_params=""): - """Run the workflow identified by ``workflow_id``. This method is deprecated, please use :meth:`invoke_workflow` instead. + """Run the workflow identified by ``workflow_id``. This method is deprecated please use ``invoke_workflow`` instead. """ return ctx.gi.workflows.run_workflow(workflow_id, dataset_map=dataset_map, params=params, history_id=history_id, history_name=history_name, import_inputs_to_history=import_inputs_to_history, replacement_params=replacement_params) diff --git a/scripts/autobuilder.py b/scripts/autobuilder.py index b86c365..9c1024d 100644 --- a/scripts/autobuilder.py +++ b/scripts/autobuilder.py @@ -4,6 +4,7 @@ import inspect import os import re +import copy import glob import argparse import logging @@ -197,10 +198,10 @@ def process(self): sm = getattr(bg, module) print(module, sm) - # submodules = dir(sm) - # # Find the "...Client" - # wanted = [x for x in submodules if 'Client' in x and x != 'Client'][0] - # self.process_client(module, sm, wanted) + submodules = dir(sm) + # Find the "...Client" + wanted = [x for x in submodules if 'Client' in x and x != 'Client'][0] + self.process_client(module, sm, wanted) def process_client(self, module, sm, ssm_name): log.info("Processing bioblend.%s.%s", module, ssm_name) @@ -262,7 +263,7 @@ def orig(self, module_name, submodule, subsubmodule, function_name): if m: param_docs['__return__'] = { 'type': m.group('param_type'), - 'desc': m.group('desc'), + 'desc': argdoc[argdoc.index(':return:') + len(':return:'):], } argspec = list(self.pair_arguments(func)) @@ -367,11 +368,17 @@ def process_arg(k, v, param_type, real_type): # TODO: rtype -> dict_output / list_output / text_output # __return__ must be in param_docs or it's a documentation BUG. if '__return__' not in param_docs: - raise Exception("%s is not documented with a return type" % candidate) + param_docs['__return__'] = { + 'type': 'dict', + 'desc': '', + } + print("WARNING: %s is not documented with a return type" % candidate) + data['output_format'] = param_docs['__return__']['type'] # We allow "list of dicts" and other such silliness. if ' ' in data['output_format']: data['output_format'] = data['output_format'][0:data['output_format'].index(' ')] + data['output_documentation'] = param_docs['__return__']['desc'] # My function is more effective until can figure out docstring data['short_docstring'] = self.important_doc(argdoc) diff --git a/scripts/commands_to_rst.py b/scripts/commands_to_rst.py index 8260f63..b424afa 100644 --- a/scripts/commands_to_rst.py +++ b/scripts/commands_to_rst.py @@ -19,9 +19,6 @@ ``${subcommand}`` command ${module_underline} -This section is auto-generated from the help text for the parsec command -``${command} ${subcommand}``. - ${command_help} ''') @@ -50,6 +47,13 @@ parent_doc_handle = open(os.path.join(command_doc_dir, command + ".rst"), "w") parent_doc_handle.write('%s\n' % command) parent_doc_handle.write('%s\n' % ('=' * len(command))) + parent_doc_handle.write(Template(""" +This section is auto-generated from the help text for the arrow command +``${command}``. + +""").safe_substitute(command=command)) + + for subcommand in list_subcmds(command): command_obj = cli.name_to_command(command, subcommand) @@ -57,12 +61,18 @@ function = command_obj.callback raw_rst = function.__doc__ - def clean_rst_line(line): - if line.startswith(" "): - return line[4:] + def clean_rst_line(line, remove=4): + if line.startswith(" " * remove): + return line[remove:] else: return line clean_rst = "\n".join(map(clean_rst_line, raw_rst.split("\n"))) + if 'Output:' in clean_rst: + output_rst = clean_rst[clean_rst.index('Output:') + len('Output:'):].lstrip('\n') + clean_rst = clean_rst[0:clean_rst.index('Output:')] + output_rst = "\n".join([clean_rst_line(x, remove=5) for x in raw_rst.split("\n")]) + else: + output_rst = "" result = runner.invoke(parsec_cli, [command, subcommand, "--help"]) output = result.output @@ -89,9 +99,12 @@ def clean_rst_line(line): help_lines = False option_lines = False output_lines = True - new_lines.append("**Output**::\n\n") - elif option_lines or output_lines: + new_lines.append("**Output**\n\n") + new_lines.append(output_rst[output_rst.index('Output:') + len('Output:'):].lstrip('\n')) + elif option_lines: new_lines.append(" %s" % line) + elif output_lines: + pass text = COMMAND_TEMPLATE.safe_substitute( command=command, subcommand=subcommand, From 2da97f414138ed5eae3670fbe3853fd88c7699df Mon Sep 17 00:00:00 2001 From: E Rasche Date: Thu, 25 May 2017 18:08:38 +0000 Subject: [PATCH 61/80] Bump requirements --- README.rst | 3 --- requirements.txt | 2 +- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/README.rst b/README.rst index 9e5b3b0..afd3898 100644 --- a/README.rst +++ b/README.rst @@ -5,9 +5,6 @@ Parsec: Galaxy at the Speed of Light .. image:: https://readthedocs.org/projects/pip/badge/?version=latest :target: https://parsec.readthedocs.org. -.. image:: https://landscape.io/github/galaxy-iuc/parsec/master/landscape.svg?stytle=flat - :target: https://landscape.io/github/galaxy-iuc/parsec/master - .. image:: https://requires.io/github/galaxy-iuc/parsec/requirements.svg?branch=master :target: https://requires.io/github/galaxy-iuc/parsec/requirements/?branch=master :alt: Requirements Status diff --git a/requirements.txt b/requirements.txt index 2b18b01..a188434 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,6 +1,6 @@ Click pyyaml # pre-release version -git+https://github.com/erasche/bioblend.git@2e92cbcc22d2e1d9dec6554f3ad21b12112925d5 +bioblend>=0.9.0 docutils wrapt From 42fc990b50ed4a8699216c69dfe13899cffcfb66 Mon Sep 17 00:00:00 2001 From: E Rasche Date: Thu, 25 May 2017 18:10:35 +0000 Subject: [PATCH 62/80] unused --- docs/readme.rst | 8 -------- 1 file changed, 8 deletions(-) diff --git a/docs/readme.rst b/docs/readme.rst index f094bc9..72a3355 100644 --- a/docs/readme.rst +++ b/docs/readme.rst @@ -1,9 +1 @@ .. include:: ../README.rst - - -Get histories matching a phrase -------------------------------- - -parsec histories_get_histories | \ - jq '.[] | select(.name | contains("2017.04.27")) | .id' -r | \ - xargs parsec histories_update_history --importable true From a01501346f687e7546e073a4cf99eb408f327342 Mon Sep 17 00:00:00 2001 From: E Rasche Date: Thu, 25 May 2017 18:46:30 +0000 Subject: [PATCH 63/80] Nicer ascii art --- parsec/commands/cmd_init.py | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/parsec/commands/cmd_init.py b/parsec/commands/cmd_init.py index d771bdf..d50a59d 100644 --- a/parsec/commands/cmd_init.py +++ b/parsec/commands/cmd_init.py @@ -33,12 +33,11 @@ def cli(ctx, url=None, api_key=None, admin=False, **kwds): # TODO: prompt for values someday. click.echo(""" Welcome to - == == ==== _____ _____ ____ ______ ___ - = = ==== | \ /\ | | | | / - === ==== |----/ / \ |----/ \____ |_____ | - = = === | /----\ | \ \ | | - == == ==== | / \| \ _____/ |_____ \___/ - Access Galaxy at the Speed of Light + ____ ____ _ _____ _____ ___ _____ + / __ \ / __ `/ / ___/ / ___/ / _ \ / ___/ + / /_/ // /_/ / / / (__ ) / __// /__ + / .___/ \__,_/ /_/ /____/ \___/ \___/ + /_/ Galaxy at the Speed of Light """) if os.path.exists(config.global_config_path()): info("Your parsec configuration already exists. Please edit it instead: %s" % config.global_config_path()) From 2875ccce6c1a184ed544350a319c425dec244275 Mon Sep 17 00:00:00 2001 From: E Rasche Date: Thu, 25 May 2017 19:26:23 +0000 Subject: [PATCH 64/80] Updates from latest version of bioblend --- docs/commands/config.rst | 17 ++++++++++ docs/commands/histories.rst | 9 +++-- docs/commands/quotas.rst | 9 ++--- docs/commands/toolshed.rst | 13 ++++---- docs/commands/users.rst | 33 +++++++++++++++++++ docs/commands/workflows.rst | 22 +++++-------- parsec/commands/cmd_config.py | 4 ++- parsec/commands/cmd_users.py | 16 +++++---- parsec/commands/config/get_version.py | 14 ++++++++ parsec/commands/folders/set_permissions.py | 3 +- parsec/commands/histories/delete_dataset.py | 9 +++-- parsec/commands/histories/download_dataset.py | 2 +- .../commands/histories/get_current_history.py | 2 +- parsec/commands/histories/update_history.py | 25 ++++++++++---- parsec/commands/quotas/create_quota.py | 3 +- parsec/commands/quotas/undelete_quota.py | 2 +- parsec/commands/quotas/update_quota.py | 5 +-- .../toolshed/install_repository_revision.py | 6 ++-- parsec/commands/users/get_user_apikey.py | 15 +++++++++ parsec/commands/users/get_users.py | 19 +++++++++-- .../workflows/export_workflow_json.py | 4 +-- .../export_workflow_to_local_path.py | 2 +- .../workflows/import_workflow_json.py | 4 +-- parsec/commands/workflows/invoke_workflow.py | 3 +- parsec/commands/workflows/run_workflow.py | 8 +++-- parsec/commands/workflows/show_workflow.py | 2 +- 26 files changed, 186 insertions(+), 65 deletions(-) create mode 100644 parsec/commands/config/get_version.py create mode 100644 parsec/commands/users/get_user_apikey.py diff --git a/docs/commands/config.rst b/docs/commands/config.rst index 8ff833f..57041b6 100644 --- a/docs/commands/config.rst +++ b/docs/commands/config.rst @@ -21,3 +21,20 @@ Get a list of attributes about the Galaxy instance. More attributes will be pres -h, --help Show this message and exit. + +``get_version`` command +----------------------- + +**Usage**:: + + parsec config get_version [OPTIONS] + +**Help** + +Get the current version of the Galaxy instance. This functionality is available since Galaxy ``release_15.03``. + +**Options**:: + + + -h, --help Show this message and exit. + diff --git a/docs/commands/histories.rst b/docs/commands/histories.rst index c65b631..f7b3067 100644 --- a/docs/commands/histories.rst +++ b/docs/commands/histories.rst @@ -71,6 +71,7 @@ Mark corresponding dataset as deleted. **Options**:: + --purge if ``True``, also purge (permanently delete) the dataset -h, --help Show this message and exit. @@ -118,7 +119,7 @@ Delete a history. **Help** -Deprecated method, use ``bioblend.galaxy.dataset.DatasetClient.download_dataset()`` instead. +.. deprecated:: 0.8.0 Use :meth:`~bioblend.galaxy.datasets.DatasetClient.download_dataset` instead. **Options**:: @@ -176,7 +177,7 @@ Start a job to create an export archive for the given history. **Help** -Deprecated method. +.. deprecated:: 0.5.2 Use :meth:`get_most_recently_used_history` instead. **Options**:: @@ -411,11 +412,13 @@ Update history metadata information. Some of the attributes that can be modified **Options**:: - --name TEXT Replace history name with the given string --annotation TEXT Replace history annotation with given string --deleted Mark or unmark history as deleted --importable Mark or unmark history as importable + --name TEXT Replace history name with the given string --published Mark or unmark history as published + --purged If True, mark history as purged (permanently deleted). + Ignored on Galaxy release_15.01 and earlier --tags TEXT Replace history tags with the given list -h, --help Show this message and exit. diff --git a/docs/commands/quotas.rst b/docs/commands/quotas.rst index a659c73..d405fc5 100644 --- a/docs/commands/quotas.rst +++ b/docs/commands/quotas.rst @@ -89,7 +89,7 @@ Display information on a quota **Help** -Unelete a quota +Undelete a quota **Options**:: @@ -121,9 +121,10 @@ Update an existing quota value, you must also provide the ``amount``, otherwise it will not take effect. --default TEXT Whether or not this is a default quota. Valid values are - ``no``, ``unregistered``, ``registered``. Calling update - twice with a default of ``no`` will throw an error. Not - passing this parameter is equivalent to passing ``no``. + ``no``, ``unregistered``, ``registered``. Calling this + method with ``default="no"`` on a non-default quota will + throw an error. Not passing this parameter is equivalent + to passing ``no``. --in_users TEXT A list of user IDs or user emails. --in_groups TEXT A list of group IDs or names. -h, --help Show this message and exit. diff --git a/docs/commands/toolshed.rst b/docs/commands/toolshed.rst index 998df6a..56d8d8e 100644 --- a/docs/commands/toolshed.rst +++ b/docs/commands/toolshed.rst @@ -37,18 +37,19 @@ Install a specified repository revision from a specified Tool Shed into this Gal --install_tool_dependencies Whether or not to automatically handle tool - dependencies (see http://wiki.galaxyproject.or - g/AToolOrASuitePerRepository for more details) + dependencies (see + https://galaxyproject.org/toolshed/tool- + dependency-recipes/ for more details) --install_repository_dependencies Whether or not to automatically handle - repository dependencies (see http://wiki.galax - yproject.org/DefiningRepositoryDependencies - for more details) + repository dependencies (see + https://galaxyproject.org/toolshed/defining- + repository-dependencies/ for more details) --install_resolver_dependencies Whether or not to automatically install resolver dependencies (e.g. conda). This parameter is silently ignored in Galaxy - ``release_2016.04`` and earlier. + ``release_16.04`` and earlier. --tool_panel_section_id TEXT The ID of the Galaxy tool panel section where the tool should be insterted under. Note that you should specify either this parameter or diff --git a/docs/commands/users.rst b/docs/commands/users.rst index 430de7b..077c497 100644 --- a/docs/commands/users.rst +++ b/docs/commands/users.rst @@ -103,6 +103,23 @@ Display information about the user associated with this Galaxy connection. -h, --help Show this message and exit. +``get_user_apikey`` command +--------------------------- + +**Usage**:: + + parsec users get_user_apikey [OPTIONS] USER_ID + +**Help** + +Get the current API key for a given user. This functionality is available since Galaxy ``release_17.01``. + +**Options**:: + + + -h, --help Show this message and exit. + + ``get_users`` command --------------------- @@ -118,6 +135,22 @@ Get a list of all registered users. If ``deleted`` is set to ``True``, get a lis --deleted TEXT + --f_email TEXT filter for user emails. The filter will be active for non- + admin users only if the Galaxy instance has the + ``expose_user_email`` option set to ``True`` in the + ``config/galaxy.ini`` configuration file. This parameter is + silently ignored for non-admin users in Galaxy + ``release_15.01`` and earlier. + --f_name TEXT filter for user names. The filter will be active for non-admin + users only if the Galaxy instance has the ``expose_user_name`` + option set to ``True`` in the ``config/galaxy.ini`` + configuration file. This parameter is silently ignored in + Galaxy ``release_15.10`` and earlier. + --f_any TEXT filter for user email or name. Each filter will be active for + non-admin users only if the Galaxy instance has the + corresponding ``expose_user_*`` option set to ``True`` in the + ``config/galaxy.ini`` configuration file. This parameter is + silently ignored in Galaxy ``release_15.10`` and earlier. -h, --help Show this message and exit. diff --git a/docs/commands/workflows.rst b/docs/commands/workflows.rst index ec25c03..8187ec2 100644 --- a/docs/commands/workflows.rst +++ b/docs/commands/workflows.rst @@ -65,7 +65,7 @@ Exports a workflow. **Help** -Exports a workflow +.. deprecated:: 0.9.0 Use :meth:`export_workflow_dict` instead. **Options**:: @@ -82,7 +82,7 @@ Exports a workflow **Help** -Exports a workflow in json format to a given local path. +Exports a workflow in JSON format to a given local path. **Options**:: @@ -211,7 +211,7 @@ Imports a new workflow given the path to a file containing a previously exported **Help** -Imports a new workflow given a json representation of a previously exported workflow. +.. deprecated:: 0.9.0 Use :meth:`import_workflow_dict` instead. **Options**:: @@ -240,10 +240,8 @@ Invoke the workflow identified by ``workflow_id``. This will cause a workflow to HistoryDatasetAssociation (``hda``), or HistoryDatasetCollectionAssociation (``hdca``). - --params TEXT A mapping of tool parameters that are non- - datasets parameters. The map must be in the - following format: ``{'blastn': {'param': - 'evalue', 'value': '1e-06'}}`` + --params TEXT A mapping of non-datasets tool parameters (see + below) --history_id TEXT The encoded history ID where to store the workflow output. Alternatively, ``history_name`` may be specified to create a @@ -295,7 +293,7 @@ nature of this action and what is expected will vary based on the the type of wo **Help** -Run the workflow identified by ``workflow_id``. This method is deprecated please use ``invoke_workflow`` instead. +Run the workflow identified by ``workflow_id``. **Options**:: @@ -309,10 +307,8 @@ Run the workflow identified by ``workflow_id``. This method is deprecated please , 'src': '[ldda, ld, hda]'}}`` (e.g. ``{'23': {'id': '29beef4fadeed09f', 'src': 'ld'}}``) - --params TEXT A mapping of tool parameters that are non-datasets - parameters. The map must be in the following - format: ``{'blastn': {'param': 'evalue', 'value': - '1e-06'}}`` + --params TEXT A mapping of non-datasets tool parameters (see + below) --history_id TEXT The encoded history ID where to store the workflow output. Alternatively, ``history_name`` may be specified to create a new history. @@ -372,7 +368,7 @@ See the details of a particular workflow invocation step. **Help** -Display information needed to run a workflow +Display information needed to run a workflow. **Options**:: diff --git a/parsec/commands/cmd_config.py b/parsec/commands/cmd_config.py index 46dca4c..6664d47 100644 --- a/parsec/commands/cmd_config.py +++ b/parsec/commands/cmd_config.py @@ -1,8 +1,10 @@ import click -from parsec.commands.config.get_config import cli as func0 +from parsec.commands.config.get_version import cli as func0 +from parsec.commands.config.get_config import cli as func1 @click.group() def cli(): pass cli.add_command(func0) +cli.add_command(func1) diff --git a/parsec/commands/cmd_users.py b/parsec/commands/cmd_users.py index dab3d74..bdd27e1 100644 --- a/parsec/commands/cmd_users.py +++ b/parsec/commands/cmd_users.py @@ -1,12 +1,13 @@ import click from parsec.commands.users.get_users import cli as func0 -from parsec.commands.users.delete_user import cli as func1 -from parsec.commands.users.get_current_user import cli as func2 -from parsec.commands.users.show_user import cli as func3 -from parsec.commands.users.create_user_apikey import cli as func4 -from parsec.commands.users.create_local_user import cli as func5 -from parsec.commands.users.create_remote_user import cli as func6 -from parsec.commands.users.create_user import cli as func7 +from parsec.commands.users.get_user_apikey import cli as func1 +from parsec.commands.users.delete_user import cli as func2 +from parsec.commands.users.get_current_user import cli as func3 +from parsec.commands.users.show_user import cli as func4 +from parsec.commands.users.create_user_apikey import cli as func5 +from parsec.commands.users.create_local_user import cli as func6 +from parsec.commands.users.create_remote_user import cli as func7 +from parsec.commands.users.create_user import cli as func8 @click.group() def cli(): @@ -20,3 +21,4 @@ def cli(): cli.add_command(func5) cli.add_command(func6) cli.add_command(func7) +cli.add_command(func8) diff --git a/parsec/commands/config/get_version.py b/parsec/commands/config/get_version.py new file mode 100644 index 0000000..22203fe --- /dev/null +++ b/parsec/commands/config/get_version.py @@ -0,0 +1,14 @@ +import click +from parsec.cli import pass_context, json_loads +from parsec.decorators import bioblend_exception, dict_output + +@click.command('get_version') + + +@pass_context +@bioblend_exception +@dict_output +def cli(ctx): + """Get the current version of the Galaxy instance. This functionality is available since Galaxy ``release_15.03``. + """ + return ctx.gi.config.get_version() diff --git a/parsec/commands/folders/set_permissions.py b/parsec/commands/folders/set_permissions.py index b39eeed..077b6f5 100644 --- a/parsec/commands/folders/set_permissions.py +++ b/parsec/commands/folders/set_permissions.py @@ -8,6 +8,7 @@ @click.option( "--action", help="action to execute, only \"set_permissions\" is supported.", + default="set_permissions", type=str ) @click.option( @@ -32,7 +33,7 @@ @pass_context @bioblend_exception @dict_output -def cli(ctx, folder_id, action="", add_ids="", manage_ids="", modify_ids=""): +def cli(ctx, folder_id, action="set_permissions", add_ids="", manage_ids="", modify_ids=""): """Set the permissions of a folder. """ return ctx.gi.folders.set_permissions(folder_id, action=action, add_ids=add_ids, manage_ids=manage_ids, modify_ids=modify_ids) diff --git a/parsec/commands/histories/delete_dataset.py b/parsec/commands/histories/delete_dataset.py index 40c8c49..61e1bcc 100644 --- a/parsec/commands/histories/delete_dataset.py +++ b/parsec/commands/histories/delete_dataset.py @@ -6,11 +6,16 @@ @click.argument("history_id", type=str) @click.argument("dataset_id", type=str) +@click.option( + "--purge", + help="if ``True``, also purge (permanently delete) the dataset", + is_flag=True +) @pass_context @bioblend_exception @dict_output -def cli(ctx, history_id, dataset_id): +def cli(ctx, history_id, dataset_id, purge=False): """Mark corresponding dataset as deleted. """ - return ctx.gi.histories.delete_dataset(history_id, dataset_id) + return ctx.gi.histories.delete_dataset(history_id, dataset_id, purge=purge) diff --git a/parsec/commands/histories/download_dataset.py b/parsec/commands/histories/download_dataset.py index 6bc0c7f..4643da7 100644 --- a/parsec/commands/histories/download_dataset.py +++ b/parsec/commands/histories/download_dataset.py @@ -17,6 +17,6 @@ @bioblend_exception @dict_output def cli(ctx, history_id, dataset_id, file_path, use_default_filename=True): - """Deprecated method, use ``bioblend.galaxy.dataset.DatasetClient.download_dataset()`` instead. + """.. deprecated:: 0.8.0 Use :meth:`~bioblend.galaxy.datasets.DatasetClient.download_dataset` instead. """ return ctx.gi.histories.download_dataset(history_id, dataset_id, file_path, use_default_filename=use_default_filename) diff --git a/parsec/commands/histories/get_current_history.py b/parsec/commands/histories/get_current_history.py index 84d9e58..1363d8c 100644 --- a/parsec/commands/histories/get_current_history.py +++ b/parsec/commands/histories/get_current_history.py @@ -9,6 +9,6 @@ @bioblend_exception @dict_output def cli(ctx): - """Deprecated method. + """.. deprecated:: 0.5.2 Use :meth:`get_most_recently_used_history` instead. """ return ctx.gi.histories.get_current_history() diff --git a/parsec/commands/histories/update_history.py b/parsec/commands/histories/update_history.py index c5c77f6..e435655 100644 --- a/parsec/commands/histories/update_history.py +++ b/parsec/commands/histories/update_history.py @@ -5,11 +5,6 @@ @click.command('update_history') @click.argument("history_id", type=str) -@click.option( - "--name", - help="Replace history name with the given string", - type=str -) @click.option( "--annotation", help="Replace history annotation with given string", @@ -25,11 +20,21 @@ help="Mark or unmark history as importable", is_flag=True ) +@click.option( + "--name", + help="Replace history name with the given string", + type=str +) @click.option( "--published", help="Mark or unmark history as published", is_flag=True ) +@click.option( + "--purged", + help="If True, mark history as purged (permanently deleted). Ignored on Galaxy release_15.01 and earlier", + is_flag=True +) @click.option( "--tags", help="Replace history tags with the given list", @@ -40,15 +45,21 @@ @pass_context @bioblend_exception @dict_output -def cli(ctx, history_id, name="", annotation="", deleted=None, importable=None, published=None, tags=None): +def cli(ctx, history_id, annotation=None, deleted=None, importable=None, name=None, published=None, purged=None, tags=None): """Update history metadata information. Some of the attributes that can be modified are documented below. """ kwargs = {} + if annotation and len(annotation) > 0: + kwargs['annotation'] = annotation if deleted is not None: kwargs['deleted'] = deleted if importable is not None: kwargs['importable'] = importable + if name and len(name) > 0: + kwargs['name'] = name if published is not None: kwargs['published'] = published + if purged is not None: + kwargs['purged'] = purged - return ctx.gi.histories.update_history(history_id, name=name, annotation=annotation, tags=tags, **kwargs) + return ctx.gi.histories.update_history(history_id, tags=tags, **kwargs) diff --git a/parsec/commands/quotas/create_quota.py b/parsec/commands/quotas/create_quota.py index cd9ab88..c45a039 100644 --- a/parsec/commands/quotas/create_quota.py +++ b/parsec/commands/quotas/create_quota.py @@ -11,6 +11,7 @@ @click.option( "--default", help="Whether or not this is a default quota. Valid values are ``no``, ``unregistered``, ``registered``. None is equivalent to ``no``.", + default="no", type=str ) @click.option( @@ -29,7 +30,7 @@ @pass_context @bioblend_exception @dict_output -def cli(ctx, name, description, amount, operation, default="", in_users=None, in_groups=None): +def cli(ctx, name, description, amount, operation, default="no", in_users=None, in_groups=None): """Create a new quota """ return ctx.gi.quotas.create_quota(name, description, amount, operation, default=default, in_users=in_users, in_groups=in_groups) diff --git a/parsec/commands/quotas/undelete_quota.py b/parsec/commands/quotas/undelete_quota.py index 4a8c876..73d500a 100644 --- a/parsec/commands/quotas/undelete_quota.py +++ b/parsec/commands/quotas/undelete_quota.py @@ -10,6 +10,6 @@ @bioblend_exception @dict_output def cli(ctx, quota_id): - """Unelete a quota + """Undelete a quota """ return ctx.gi.quotas.undelete_quota(quota_id) diff --git a/parsec/commands/quotas/update_quota.py b/parsec/commands/quotas/update_quota.py index e8e3b16..c0d9e7c 100644 --- a/parsec/commands/quotas/update_quota.py +++ b/parsec/commands/quotas/update_quota.py @@ -27,7 +27,8 @@ ) @click.option( "--default", - help="Whether or not this is a default quota. Valid values are ``no``, ``unregistered``, ``registered``. Calling update twice with a default of ``no`` will throw an error. Not passing this parameter is equivalent to passing ``no``.", + help="Whether or not this is a default quota. Valid values are ``no``, ``unregistered``, ``registered``. Calling this method with ``default=\"no\"`` on a non-default quota will throw an error. Not passing this parameter is equivalent to passing ``no``.", + default="no", type=str ) @click.option( @@ -46,7 +47,7 @@ @pass_context @bioblend_exception @dict_output -def cli(ctx, quota_id, name="", description="", amount="", operation="", default="", in_users=None, in_groups=None): +def cli(ctx, quota_id, name="", description="", amount="", operation="", default="no", in_users=None, in_groups=None): """Update an existing quota """ return ctx.gi.quotas.update_quota(quota_id, name=name, description=description, amount=amount, operation=operation, default=default, in_users=in_users, in_groups=in_groups) diff --git a/parsec/commands/toolshed/install_repository_revision.py b/parsec/commands/toolshed/install_repository_revision.py index 694f14c..e3a8dc9 100644 --- a/parsec/commands/toolshed/install_repository_revision.py +++ b/parsec/commands/toolshed/install_repository_revision.py @@ -10,17 +10,17 @@ @click.option( "--install_tool_dependencies", - help="Whether or not to automatically handle tool dependencies (see http://wiki.galaxyproject.org/AToolOrASuitePerRepository for more details)", + help="Whether or not to automatically handle tool dependencies (see https://galaxyproject.org/toolshed/tool-dependency-recipes/ for more details)", is_flag=True ) @click.option( "--install_repository_dependencies", - help="Whether or not to automatically handle repository dependencies (see http://wiki.galaxyproject.org/DefiningRepositoryDependencies for more details)", + help="Whether or not to automatically handle repository dependencies (see https://galaxyproject.org/toolshed/defining-repository-dependencies/ for more details)", is_flag=True ) @click.option( "--install_resolver_dependencies", - help="Whether or not to automatically install resolver dependencies (e.g. conda). This parameter is silently ignored in Galaxy ``release_2016.04`` and earlier.", + help="Whether or not to automatically install resolver dependencies (e.g. conda). This parameter is silently ignored in Galaxy ``release_16.04`` and earlier.", is_flag=True ) @click.option( diff --git a/parsec/commands/users/get_user_apikey.py b/parsec/commands/users/get_user_apikey.py new file mode 100644 index 0000000..a38b20d --- /dev/null +++ b/parsec/commands/users/get_user_apikey.py @@ -0,0 +1,15 @@ +import click +from parsec.cli import pass_context, json_loads +from parsec.decorators import bioblend_exception, dict_output + +@click.command('get_user_apikey') +@click.argument("user_id", type=str) + + +@pass_context +@bioblend_exception +@dict_output +def cli(ctx, user_id): + """Get the current API key for a given user. This functionality is available since Galaxy ``release_17.01``. + """ + return ctx.gi.users.get_user_apikey(user_id) diff --git a/parsec/commands/users/get_users.py b/parsec/commands/users/get_users.py index c3172fc..f8771b7 100644 --- a/parsec/commands/users/get_users.py +++ b/parsec/commands/users/get_users.py @@ -8,11 +8,26 @@ "--deleted", help="" ) +@click.option( + "--f_email", + help="filter for user emails. The filter will be active for non-admin users only if the Galaxy instance has the ``expose_user_email`` option set to ``True`` in the ``config/galaxy.ini`` configuration file. This parameter is silently ignored for non-admin users in Galaxy ``release_15.01`` and earlier.", + type=str +) +@click.option( + "--f_name", + help="filter for user names. The filter will be active for non-admin users only if the Galaxy instance has the ``expose_user_name`` option set to ``True`` in the ``config/galaxy.ini`` configuration file. This parameter is silently ignored in Galaxy ``release_15.10`` and earlier.", + type=str +) +@click.option( + "--f_any", + help="filter for user email or name. Each filter will be active for non-admin users only if the Galaxy instance has the corresponding ``expose_user_*`` option set to ``True`` in the ``config/galaxy.ini`` configuration file. This parameter is silently ignored in Galaxy ``release_15.10`` and earlier.", + type=str +) @pass_context @bioblend_exception @dict_output -def cli(ctx, deleted=False): +def cli(ctx, deleted=False, f_email="", f_name="", f_any=""): """Get a list of all registered users. If ``deleted`` is set to ``True``, get a list of deleted users. """ - return ctx.gi.users.get_users(deleted=deleted) + return ctx.gi.users.get_users(deleted=deleted, f_email=f_email, f_name=f_name, f_any=f_any) diff --git a/parsec/commands/workflows/export_workflow_json.py b/parsec/commands/workflows/export_workflow_json.py index f7c76d8..13617ae 100644 --- a/parsec/commands/workflows/export_workflow_json.py +++ b/parsec/commands/workflows/export_workflow_json.py @@ -3,13 +3,13 @@ from parsec.decorators import bioblend_exception, dict_output @click.command('export_workflow_json') -@click.argument("workflow_id", type=str) +@click.argument("workflow_id") @pass_context @bioblend_exception @dict_output def cli(ctx, workflow_id): - """Exports a workflow + """.. deprecated:: 0.9.0 Use :meth:`export_workflow_dict` instead. """ return ctx.gi.workflows.export_workflow_json(workflow_id) diff --git a/parsec/commands/workflows/export_workflow_to_local_path.py b/parsec/commands/workflows/export_workflow_to_local_path.py index 8a1c369..490d350 100644 --- a/parsec/commands/workflows/export_workflow_to_local_path.py +++ b/parsec/commands/workflows/export_workflow_to_local_path.py @@ -17,6 +17,6 @@ @bioblend_exception @dict_output def cli(ctx, workflow_id, file_local_path, use_default_filename=True): - """Exports a workflow in json format to a given local path. + """Exports a workflow in JSON format to a given local path. """ return ctx.gi.workflows.export_workflow_to_local_path(workflow_id, file_local_path, use_default_filename=use_default_filename) diff --git a/parsec/commands/workflows/import_workflow_json.py b/parsec/commands/workflows/import_workflow_json.py index fb8595d..66b10d7 100644 --- a/parsec/commands/workflows/import_workflow_json.py +++ b/parsec/commands/workflows/import_workflow_json.py @@ -3,13 +3,13 @@ from parsec.decorators import bioblend_exception, dict_output @click.command('import_workflow_json') -@click.argument("workflow_json", type=str) +@click.argument("workflow_json") @pass_context @bioblend_exception @dict_output def cli(ctx, workflow_json): - """Imports a new workflow given a json representation of a previously exported workflow. + """.. deprecated:: 0.9.0 Use :meth:`import_workflow_dict` instead. """ return ctx.gi.workflows.import_workflow_json(workflow_json) diff --git a/parsec/commands/workflows/invoke_workflow.py b/parsec/commands/workflows/invoke_workflow.py index 09a8f3a..95e9628 100644 --- a/parsec/commands/workflows/invoke_workflow.py +++ b/parsec/commands/workflows/invoke_workflow.py @@ -12,7 +12,8 @@ ) @click.option( "--params", - help="A mapping of tool parameters that are non-datasets parameters. The map must be in the following format: ``{'blastn': {'param': 'evalue', 'value': '1e-06'}}``" + help="A mapping of non-datasets tool parameters (see below)", + type=str ) @click.option( "--history_id", diff --git a/parsec/commands/workflows/run_workflow.py b/parsec/commands/workflows/run_workflow.py index 3a7b73a..57c6a6c 100644 --- a/parsec/commands/workflows/run_workflow.py +++ b/parsec/commands/workflows/run_workflow.py @@ -7,11 +7,13 @@ @click.option( "--dataset_map", - help="A mapping of workflow inputs to datasets. The datasets source can be a LibraryDatasetDatasetAssociation (``ldda``), LibraryDataset (``ld``), or HistoryDatasetAssociation (``hda``). The map must be in the following format: ``{'': {'id': , 'src': '[ldda, ld, hda]'}}`` (e.g. ``{'23': {'id': '29beef4fadeed09f', 'src': 'ld'}}``)" + help="A mapping of workflow inputs to datasets. The datasets source can be a LibraryDatasetDatasetAssociation (``ldda``), LibraryDataset (``ld``), or HistoryDatasetAssociation (``hda``). The map must be in the following format: ``{'': {'id': , 'src': '[ldda, ld, hda]'}}`` (e.g. ``{'23': {'id': '29beef4fadeed09f', 'src': 'ld'}}``)", + type=str ) @click.option( "--params", - help="A mapping of tool parameters that are non-datasets parameters. The map must be in the following format: ``{'blastn': {'param': 'evalue', 'value': '1e-06'}}``" + help="A mapping of non-datasets tool parameters (see below)", + type=str ) @click.option( "--history_id", @@ -38,6 +40,6 @@ @bioblend_exception @dict_output def cli(ctx, workflow_id, dataset_map="", params="", history_id="", history_name="", import_inputs_to_history=False, replacement_params=""): - """Run the workflow identified by ``workflow_id``. This method is deprecated please use ``invoke_workflow`` instead. + """Run the workflow identified by ``workflow_id``. """ return ctx.gi.workflows.run_workflow(workflow_id, dataset_map=dataset_map, params=params, history_id=history_id, history_name=history_name, import_inputs_to_history=import_inputs_to_history, replacement_params=replacement_params) diff --git a/parsec/commands/workflows/show_workflow.py b/parsec/commands/workflows/show_workflow.py index 1b9bc94..90a9ee8 100644 --- a/parsec/commands/workflows/show_workflow.py +++ b/parsec/commands/workflows/show_workflow.py @@ -10,6 +10,6 @@ @bioblend_exception @dict_output def cli(ctx, workflow_id): - """Display information needed to run a workflow + """Display information needed to run a workflow. """ return ctx.gi.workflows.show_workflow(workflow_id) From 1df362237b98eb73dd61b09e7663edb9f4eb48e2 Mon Sep 17 00:00:00 2001 From: E Rasche Date: Thu, 25 May 2017 19:32:27 +0000 Subject: [PATCH 65/80] add short flag for galaxy instance --- parsec/cli.py | 1 + 1 file changed, 1 insertion(+) diff --git a/parsec/cli.py b/parsec/cli.py index b5946ca..5093ccf 100644 --- a/parsec/cli.py +++ b/parsec/cli.py @@ -101,6 +101,7 @@ def get_command(self, ctx, name): @click.option('-v', '--verbose', is_flag=True, help='Enables verbose mode.') @click.option( + "-g", "--galaxy_instance", help='name of galaxy instance from ~/.planemo.yml', default='__default', From 120a362cb69a90a7c47485e933e74ec0c625d468 Mon Sep 17 00:00:00 2001 From: E Rasche Date: Thu, 25 May 2017 19:39:28 +0000 Subject: [PATCH 66/80] Document env in script --- parsec/cli.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/parsec/cli.py b/parsec/cli.py index 5093ccf..f048430 100644 --- a/parsec/cli.py +++ b/parsec/cli.py @@ -103,8 +103,9 @@ def get_command(self, ctx, name): @click.option( "-g", "--galaxy_instance", - help='name of galaxy instance from ~/.planemo.yml', + help='Name of galaxy instance in ~/.planemo.yml. This parameter can also be set via the environment variable PARSEC_GALAXY_INSTANCE', default='__default', + show_default=True, required=True ) @pass_context From 056e3b52d3188e4b6ed93ef0f2c9a3f314041c92 Mon Sep 17 00:00:00 2001 From: E Rasche Date: Thu, 25 May 2017 19:48:31 +0000 Subject: [PATCH 67/80] Document env vars --- docs/cookbook.rst | 24 ++++++++++++++++++++++++ docs/index.rst | 1 + 2 files changed, 25 insertions(+) create mode 100644 docs/cookbook.rst diff --git a/docs/cookbook.rst b/docs/cookbook.rst new file mode 100644 index 0000000..602966f --- /dev/null +++ b/docs/cookbook.rst @@ -0,0 +1,24 @@ +======== +Cookbook +======== + +This page will contain more easy "recipes" for using parsec as time goes +on. Short tips and tricks that can help you use it more effectively, or +short recipes that can document how to do more complex tasks. + +Talking to multiple Galaxies +---------------------------- + +If you are regularly switching between multiple Galaxy instances, you'll +probably want to take advantage of the environment variable for +specifying a Galaxy instance. E.g.: + +.. code-block:: shell + + $ PARSEC_GALAXY_INSTANCE=uni-admin parsec config get_config | jq .brand + "Internal" + $ PARSEC_GALAXY_INSTANCE=uni-public parsec config get_config | jq .brand + "Public" + +You could easily set these at the top of a parsec script you've built +and all commands from there on would talk to the same Galaxy instance. diff --git a/docs/index.rst b/docs/index.rst index 514ee22..4d819e0 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -12,6 +12,7 @@ Contents: :maxdepth: 2 readme + cookbook commands From 87c883dd7f2221f72fb39e842b2c34392972404b Mon Sep 17 00:00:00 2001 From: E Rasche Date: Thu, 25 May 2017 20:48:46 +0000 Subject: [PATCH 68/80] New "extenral" script to wait on workflow invocation completion --- Makefile | 1 + docs/commands/workflows.rst | 23 ++++++ external/workflows/wait_on_invocation.py | 80 +++++++++++++++++++ parsec/commands/cmd_config.py | 4 +- parsec/commands/cmd_folders.py | 8 +- parsec/commands/cmd_forms.py | 4 +- parsec/commands/cmd_genomes.py | 4 +- parsec/commands/cmd_groups.py | 20 ++--- parsec/commands/cmd_histories.py | 44 +++++----- parsec/commands/cmd_jobs.py | 6 +- parsec/commands/cmd_libraries.py | 32 ++++---- parsec/commands/cmd_quotas.py | 12 +-- parsec/commands/cmd_tool_data.py | 8 +- parsec/commands/cmd_tools.py | 16 ++-- parsec/commands/cmd_toolshed.py | 4 +- parsec/commands/cmd_users.py | 18 ++--- parsec/commands/cmd_visual.py | 4 +- parsec/commands/cmd_workflows.py | 36 +++++---- .../commands/workflows/wait_on_invocation.py | 80 +++++++++++++++++++ requirements.txt | 1 + scripts/autobuilder.py | 2 +- setup.py | 1 + 22 files changed, 298 insertions(+), 110 deletions(-) create mode 100644 external/workflows/wait_on_invocation.py create mode 100644 parsec/commands/workflows/wait_on_invocation.py diff --git a/Makefile b/Makefile index 78f8978..261dca6 100644 --- a/Makefile +++ b/Makefile @@ -1,3 +1,4 @@ rebuild: + rsync -ar external/ parsec/commands/ python scripts/autobuilder.py python scripts/commands_to_rst.py diff --git a/docs/commands/workflows.rst b/docs/commands/workflows.rst index 8187ec2..7665fca 100644 --- a/docs/commands/workflows.rst +++ b/docs/commands/workflows.rst @@ -375,3 +375,26 @@ Display information needed to run a workflow. -h, --help Show this message and exit. + +``wait_on_invocation`` command +------------------------------ + +**Usage**:: + + parsec workflows wait_on_invocation [OPTIONS] WORKFLOW_ID INVOCATION_ID + +**Help** + +Given a workflow and invocation id, wait until that invocation is +complete (or one or more steps have errored) + +**Options**:: + + + --exit_early Exit immediately after checking status rather than + sleeping indefinitely + --backoff_min FLOAT Minimum time to sleep between checks, in seconds. + --backoff_max FLOAT Maximum time to sleep between checks, in seconds + -v, --verbose + -h, --help Show this message and exit. + diff --git a/external/workflows/wait_on_invocation.py b/external/workflows/wait_on_invocation.py new file mode 100644 index 0000000..e9d8312 --- /dev/null +++ b/external/workflows/wait_on_invocation.py @@ -0,0 +1,80 @@ +import time +import click +from parsec.cli import pass_context +from parsec.decorators import bioblend_exception, dict_output +from justbackoff import Backoff + + +@click.command('wait_on_invocation') +@click.argument("workflow_id", type=str, required=True) +@click.argument("invocation_id", type=str, required=True) +@click.option( + "--exit_early", + help="Exit immediately after checking status rather than sleeping indefinitely", + is_flag=True +) +@click.option( + "--backoff_min", + help="Minimum time to sleep between checks, in seconds.", + default=1, + type=float, +) +@click.option( + "--backoff_max", + help="Maximum time to sleep between checks, in seconds", + default=60, + type=float, +) +@click.option('-v', '--verbose', count=True) + +@pass_context +@bioblend_exception +@dict_output +def cli(ctx, workflow_id, invocation_id, verbose, exit_early=False, backoff_min=1, backoff_max=60): + """Given a workflow and invocation id, wait until that invocation is + complete (or one or more steps have errored) + """ + backoff = Backoff(min_ms=backoff_min * 1000, max_ms=backoff_max * 1000, factor=2, jitter=True) + + prev_state = None + while True: + # Fetch the current state + latest_state = ctx.gi.workflows.show_invocation(workflow_id, invocation_id) + # Get step states + states = [step['state'] for step in latest_state['steps'] if step['state'] is not None and step['state'] != 'deleted'] + # Get a str based state representation + state_rep = '|'.join(map(str, states)) + + if state_rep != prev_state: + backoff.reset() + prev_state = state_rep + + # If it's scheduled, then let's look at steps. Otherwise steps probably don't exist yet. + if latest_state['state'] == 'scheduled': + if verbose > 1: + click.echo("Checking workflow %s states: %s" % (workflow_id, state_rep)) + elif verbose > 0: + click.echo('.', nl=False) + + if exit_early: + if verbose > 0: + return {'state': 'running', 'job_states': states} + + # Conditions which must be true for all jobs before we can be done + if all([state == 'ok' for state in states]): + return {'state': 'done', 'job_states': states} + + # Conditions on which to exit immediately (i.e. due to a failure) + if any([state in ('error', 'paused') for state in states]): + return {'state': 'failure', 'job_states': states} + else: + if verbose > 1: + click.echo("Waiting for invocation to be scheduled") + elif verbose > 0: + click.echo("+", nl=False) + + if exit_early: + if verbose > 0: + return {'state': 'unscheduled'} + + time.sleep(backoff.duration()) diff --git a/parsec/commands/cmd_config.py b/parsec/commands/cmd_config.py index 6664d47..fb430cc 100644 --- a/parsec/commands/cmd_config.py +++ b/parsec/commands/cmd_config.py @@ -1,6 +1,6 @@ import click -from parsec.commands.config.get_version import cli as func0 -from parsec.commands.config.get_config import cli as func1 +from parsec.commands.config.get_config import cli as func0 +from parsec.commands.config.get_version import cli as func1 @click.group() def cli(): diff --git a/parsec/commands/cmd_folders.py b/parsec/commands/cmd_folders.py index 3a23aa1..0c29eed 100644 --- a/parsec/commands/cmd_folders.py +++ b/parsec/commands/cmd_folders.py @@ -1,10 +1,10 @@ import click from parsec.commands.folders.create_folder import cli as func0 -from parsec.commands.folders.show_folder import cli as func1 -from parsec.commands.folders.update_folder import cli as func2 +from parsec.commands.folders.delete_folder import cli as func1 +from parsec.commands.folders.get_permissions import cli as func2 from parsec.commands.folders.set_permissions import cli as func3 -from parsec.commands.folders.get_permissions import cli as func4 -from parsec.commands.folders.delete_folder import cli as func5 +from parsec.commands.folders.show_folder import cli as func4 +from parsec.commands.folders.update_folder import cli as func5 @click.group() def cli(): diff --git a/parsec/commands/cmd_forms.py b/parsec/commands/cmd_forms.py index 7cf8d41..4d628eb 100644 --- a/parsec/commands/cmd_forms.py +++ b/parsec/commands/cmd_forms.py @@ -1,7 +1,7 @@ import click -from parsec.commands.forms.show_form import cli as func0 +from parsec.commands.forms.create_form import cli as func0 from parsec.commands.forms.get_forms import cli as func1 -from parsec.commands.forms.create_form import cli as func2 +from parsec.commands.forms.show_form import cli as func2 @click.group() def cli(): diff --git a/parsec/commands/cmd_genomes.py b/parsec/commands/cmd_genomes.py index d9bdbe1..cc4e7d0 100644 --- a/parsec/commands/cmd_genomes.py +++ b/parsec/commands/cmd_genomes.py @@ -1,6 +1,6 @@ import click -from parsec.commands.genomes.install_genome import cli as func0 -from parsec.commands.genomes.get_genomes import cli as func1 +from parsec.commands.genomes.get_genomes import cli as func0 +from parsec.commands.genomes.install_genome import cli as func1 from parsec.commands.genomes.show_genome import cli as func2 @click.group() diff --git a/parsec/commands/cmd_groups.py b/parsec/commands/cmd_groups.py index 692f00b..e0c6a89 100644 --- a/parsec/commands/cmd_groups.py +++ b/parsec/commands/cmd_groups.py @@ -1,14 +1,14 @@ import click -from parsec.commands.groups.get_groups import cli as func0 -from parsec.commands.groups.show_group import cli as func1 -from parsec.commands.groups.add_group_role import cli as func2 -from parsec.commands.groups.update_group import cli as func3 -from parsec.commands.groups.delete_group_role import cli as func4 -from parsec.commands.groups.create_group import cli as func5 -from parsec.commands.groups.delete_group_user import cli as func6 -from parsec.commands.groups.get_group_roles import cli as func7 -from parsec.commands.groups.get_group_users import cli as func8 -from parsec.commands.groups.add_group_user import cli as func9 +from parsec.commands.groups.add_group_role import cli as func0 +from parsec.commands.groups.add_group_user import cli as func1 +from parsec.commands.groups.create_group import cli as func2 +from parsec.commands.groups.delete_group_role import cli as func3 +from parsec.commands.groups.delete_group_user import cli as func4 +from parsec.commands.groups.get_group_roles import cli as func5 +from parsec.commands.groups.get_group_users import cli as func6 +from parsec.commands.groups.get_groups import cli as func7 +from parsec.commands.groups.show_group import cli as func8 +from parsec.commands.groups.update_group import cli as func9 @click.group() def cli(): diff --git a/parsec/commands/cmd_histories.py b/parsec/commands/cmd_histories.py index 614ddb1..a74bf4e 100644 --- a/parsec/commands/cmd_histories.py +++ b/parsec/commands/cmd_histories.py @@ -1,27 +1,27 @@ import click -from parsec.commands.histories.delete_dataset import cli as func0 -from parsec.commands.histories.download_dataset import cli as func1 -from parsec.commands.histories.update_dataset_collection import cli as func2 -from parsec.commands.histories.update_history import cli as func3 +from parsec.commands.histories.create_dataset_collection import cli as func0 +from parsec.commands.histories.create_history import cli as func1 +from parsec.commands.histories.create_history_tag import cli as func2 +from parsec.commands.histories.delete_dataset import cli as func3 from parsec.commands.histories.delete_dataset_collection import cli as func4 -from parsec.commands.histories.get_histories import cli as func5 -from parsec.commands.histories.get_most_recently_used_history import cli as func6 -from parsec.commands.histories.create_history import cli as func7 -from parsec.commands.histories.upload_dataset_from_library import cli as func8 -from parsec.commands.histories.show_dataset_collection import cli as func9 -from parsec.commands.histories.get_status import cli as func10 -from parsec.commands.histories.create_dataset_collection import cli as func11 -from parsec.commands.histories.get_current_history import cli as func12 -from parsec.commands.histories.create_history_tag import cli as func13 -from parsec.commands.histories.undelete_history import cli as func14 -from parsec.commands.histories.show_history import cli as func15 -from parsec.commands.histories.show_dataset_provenance import cli as func16 -from parsec.commands.histories.download_history import cli as func17 -from parsec.commands.histories.export_history import cli as func18 -from parsec.commands.histories.show_dataset import cli as func19 -from parsec.commands.histories.show_matching_datasets import cli as func20 -from parsec.commands.histories.delete_history import cli as func21 -from parsec.commands.histories.update_dataset import cli as func22 +from parsec.commands.histories.delete_history import cli as func5 +from parsec.commands.histories.download_dataset import cli as func6 +from parsec.commands.histories.download_history import cli as func7 +from parsec.commands.histories.export_history import cli as func8 +from parsec.commands.histories.get_current_history import cli as func9 +from parsec.commands.histories.get_histories import cli as func10 +from parsec.commands.histories.get_most_recently_used_history import cli as func11 +from parsec.commands.histories.get_status import cli as func12 +from parsec.commands.histories.show_dataset import cli as func13 +from parsec.commands.histories.show_dataset_collection import cli as func14 +from parsec.commands.histories.show_dataset_provenance import cli as func15 +from parsec.commands.histories.show_history import cli as func16 +from parsec.commands.histories.show_matching_datasets import cli as func17 +from parsec.commands.histories.undelete_history import cli as func18 +from parsec.commands.histories.update_dataset import cli as func19 +from parsec.commands.histories.update_dataset_collection import cli as func20 +from parsec.commands.histories.update_history import cli as func21 +from parsec.commands.histories.upload_dataset_from_library import cli as func22 @click.group() def cli(): diff --git a/parsec/commands/cmd_jobs.py b/parsec/commands/cmd_jobs.py index a3b551e..c7eb8e4 100644 --- a/parsec/commands/cmd_jobs.py +++ b/parsec/commands/cmd_jobs.py @@ -1,8 +1,8 @@ import click from parsec.commands.jobs.get_jobs import cli as func0 -from parsec.commands.jobs.show_job import cli as func1 -from parsec.commands.jobs.get_state import cli as func2 -from parsec.commands.jobs.search_jobs import cli as func3 +from parsec.commands.jobs.get_state import cli as func1 +from parsec.commands.jobs.search_jobs import cli as func2 +from parsec.commands.jobs.show_job import cli as func3 @click.group() def cli(): diff --git a/parsec/commands/cmd_libraries.py b/parsec/commands/cmd_libraries.py index d170c18..57d55e5 100644 --- a/parsec/commands/cmd_libraries.py +++ b/parsec/commands/cmd_libraries.py @@ -1,21 +1,21 @@ import click -from parsec.commands.libraries.upload_file_from_local_path import cli as func0 -from parsec.commands.libraries.get_folders import cli as func1 -from parsec.commands.libraries.create_folder import cli as func2 -from parsec.commands.libraries.show_folder import cli as func3 -from parsec.commands.libraries.upload_from_galaxy_filesystem import cli as func4 -from parsec.commands.libraries.show_library import cli as func5 -from parsec.commands.libraries.delete_library_dataset import cli as func6 -from parsec.commands.libraries.get_libraries import cli as func7 +from parsec.commands.libraries.copy_from_dataset import cli as func0 +from parsec.commands.libraries.create_folder import cli as func1 +from parsec.commands.libraries.create_library import cli as func2 +from parsec.commands.libraries.delete_library import cli as func3 +from parsec.commands.libraries.delete_library_dataset import cli as func4 +from parsec.commands.libraries.get_folders import cli as func5 +from parsec.commands.libraries.get_libraries import cli as func6 +from parsec.commands.libraries.get_library_permissions import cli as func7 from parsec.commands.libraries.set_library_permissions import cli as func8 -from parsec.commands.libraries.get_library_permissions import cli as func9 -from parsec.commands.libraries.upload_file_from_server import cli as func10 -from parsec.commands.libraries.delete_library import cli as func11 -from parsec.commands.libraries.upload_file_from_url import cli as func12 -from parsec.commands.libraries.show_dataset import cli as func13 -from parsec.commands.libraries.upload_file_contents import cli as func14 -from parsec.commands.libraries.create_library import cli as func15 -from parsec.commands.libraries.copy_from_dataset import cli as func16 +from parsec.commands.libraries.show_dataset import cli as func9 +from parsec.commands.libraries.show_folder import cli as func10 +from parsec.commands.libraries.show_library import cli as func11 +from parsec.commands.libraries.upload_file_contents import cli as func12 +from parsec.commands.libraries.upload_file_from_local_path import cli as func13 +from parsec.commands.libraries.upload_file_from_server import cli as func14 +from parsec.commands.libraries.upload_file_from_url import cli as func15 +from parsec.commands.libraries.upload_from_galaxy_filesystem import cli as func16 @click.group() def cli(): diff --git a/parsec/commands/cmd_quotas.py b/parsec/commands/cmd_quotas.py index b99bf5f..2977a85 100644 --- a/parsec/commands/cmd_quotas.py +++ b/parsec/commands/cmd_quotas.py @@ -1,10 +1,10 @@ import click -from parsec.commands.quotas.get_quotas import cli as func0 -from parsec.commands.quotas.show_quota import cli as func1 -from parsec.commands.quotas.delete_quota import cli as func2 -from parsec.commands.quotas.update_quota import cli as func3 -from parsec.commands.quotas.create_quota import cli as func4 -from parsec.commands.quotas.undelete_quota import cli as func5 +from parsec.commands.quotas.create_quota import cli as func0 +from parsec.commands.quotas.delete_quota import cli as func1 +from parsec.commands.quotas.get_quotas import cli as func2 +from parsec.commands.quotas.show_quota import cli as func3 +from parsec.commands.quotas.undelete_quota import cli as func4 +from parsec.commands.quotas.update_quota import cli as func5 @click.group() def cli(): diff --git a/parsec/commands/cmd_tool_data.py b/parsec/commands/cmd_tool_data.py index 8bb5963..771e808 100644 --- a/parsec/commands/cmd_tool_data.py +++ b/parsec/commands/cmd_tool_data.py @@ -1,8 +1,8 @@ import click -from parsec.commands.tool_data.get_data_tables import cli as func0 -from parsec.commands.tool_data.show_data_table import cli as func1 -from parsec.commands.tool_data.delete_data_table import cli as func2 -from parsec.commands.tool_data.reload_data_table import cli as func3 +from parsec.commands.tool_data.delete_data_table import cli as func0 +from parsec.commands.tool_data.get_data_tables import cli as func1 +from parsec.commands.tool_data.reload_data_table import cli as func2 +from parsec.commands.tool_data.show_data_table import cli as func3 @click.group() def cli(): diff --git a/parsec/commands/cmd_tools.py b/parsec/commands/cmd_tools.py index a55a311..7ffab31 100644 --- a/parsec/commands/cmd_tools.py +++ b/parsec/commands/cmd_tools.py @@ -1,13 +1,13 @@ import click -from parsec.commands.tools.upload_from_ftp import cli as func0 -from parsec.commands.tools.get_tool_panel import cli as func1 -from parsec.commands.tools.paste_content import cli as func2 -from parsec.commands.tools.show_tool import cli as func3 -from parsec.commands.tools.install_dependencies import cli as func4 +from parsec.commands.tools.get_tool_panel import cli as func0 +from parsec.commands.tools.get_tools import cli as func1 +from parsec.commands.tools.install_dependencies import cli as func2 +from parsec.commands.tools.paste_content import cli as func3 +from parsec.commands.tools.put_url import cli as func4 from parsec.commands.tools.run_tool import cli as func5 -from parsec.commands.tools.upload_file import cli as func6 -from parsec.commands.tools.get_tools import cli as func7 -from parsec.commands.tools.put_url import cli as func8 +from parsec.commands.tools.show_tool import cli as func6 +from parsec.commands.tools.upload_file import cli as func7 +from parsec.commands.tools.upload_from_ftp import cli as func8 @click.group() def cli(): diff --git a/parsec/commands/cmd_toolshed.py b/parsec/commands/cmd_toolshed.py index 4c2d86e..7af369c 100644 --- a/parsec/commands/cmd_toolshed.py +++ b/parsec/commands/cmd_toolshed.py @@ -1,6 +1,6 @@ import click -from parsec.commands.toolshed.install_repository_revision import cli as func0 -from parsec.commands.toolshed.get_repositories import cli as func1 +from parsec.commands.toolshed.get_repositories import cli as func0 +from parsec.commands.toolshed.install_repository_revision import cli as func1 from parsec.commands.toolshed.show_repository import cli as func2 @click.group() diff --git a/parsec/commands/cmd_users.py b/parsec/commands/cmd_users.py index bdd27e1..e91534e 100644 --- a/parsec/commands/cmd_users.py +++ b/parsec/commands/cmd_users.py @@ -1,13 +1,13 @@ import click -from parsec.commands.users.get_users import cli as func0 -from parsec.commands.users.get_user_apikey import cli as func1 -from parsec.commands.users.delete_user import cli as func2 -from parsec.commands.users.get_current_user import cli as func3 -from parsec.commands.users.show_user import cli as func4 -from parsec.commands.users.create_user_apikey import cli as func5 -from parsec.commands.users.create_local_user import cli as func6 -from parsec.commands.users.create_remote_user import cli as func7 -from parsec.commands.users.create_user import cli as func8 +from parsec.commands.users.create_local_user import cli as func0 +from parsec.commands.users.create_remote_user import cli as func1 +from parsec.commands.users.create_user import cli as func2 +from parsec.commands.users.create_user_apikey import cli as func3 +from parsec.commands.users.delete_user import cli as func4 +from parsec.commands.users.get_current_user import cli as func5 +from parsec.commands.users.get_user_apikey import cli as func6 +from parsec.commands.users.get_users import cli as func7 +from parsec.commands.users.show_user import cli as func8 @click.group() def cli(): diff --git a/parsec/commands/cmd_visual.py b/parsec/commands/cmd_visual.py index 15dd6a6..1a20520 100644 --- a/parsec/commands/cmd_visual.py +++ b/parsec/commands/cmd_visual.py @@ -1,6 +1,6 @@ import click -from parsec.commands.visual.show_visualization import cli as func0 -from parsec.commands.visual.get_visualizations import cli as func1 +from parsec.commands.visual.get_visualizations import cli as func0 +from parsec.commands.visual.show_visualization import cli as func1 @click.group() def cli(): diff --git a/parsec/commands/cmd_workflows.py b/parsec/commands/cmd_workflows.py index fe702e7..de2f34a 100644 --- a/parsec/commands/cmd_workflows.py +++ b/parsec/commands/cmd_workflows.py @@ -1,22 +1,23 @@ import click -from parsec.commands.workflows.get_invocations import cli as func0 -from parsec.commands.workflows.import_workflow_dict import cli as func1 -from parsec.commands.workflows.get_workflow_inputs import cli as func2 -from parsec.commands.workflows.import_workflow_from_local_path import cli as func3 -from parsec.commands.workflows.delete_workflow import cli as func4 -from parsec.commands.workflows.export_workflow_to_local_path import cli as func5 -from parsec.commands.workflows.run_invocation_step_action import cli as func6 -from parsec.commands.workflows.invoke_workflow import cli as func7 -from parsec.commands.workflows.import_workflow_json import cli as func8 -from parsec.commands.workflows.run_workflow import cli as func9 -from parsec.commands.workflows.get_workflows import cli as func10 -from parsec.commands.workflows.export_workflow_json import cli as func11 -from parsec.commands.workflows.export_workflow_dict import cli as func12 -from parsec.commands.workflows.show_workflow import cli as func13 -from parsec.commands.workflows.show_invocation import cli as func14 -from parsec.commands.workflows.import_shared_workflow import cli as func15 +from parsec.commands.workflows.cancel_invocation import cli as func0 +from parsec.commands.workflows.delete_workflow import cli as func1 +from parsec.commands.workflows.export_workflow_dict import cli as func2 +from parsec.commands.workflows.export_workflow_json import cli as func3 +from parsec.commands.workflows.export_workflow_to_local_path import cli as func4 +from parsec.commands.workflows.get_invocations import cli as func5 +from parsec.commands.workflows.get_workflow_inputs import cli as func6 +from parsec.commands.workflows.get_workflows import cli as func7 +from parsec.commands.workflows.import_shared_workflow import cli as func8 +from parsec.commands.workflows.import_workflow_dict import cli as func9 +from parsec.commands.workflows.import_workflow_from_local_path import cli as func10 +from parsec.commands.workflows.import_workflow_json import cli as func11 +from parsec.commands.workflows.invoke_workflow import cli as func12 +from parsec.commands.workflows.run_invocation_step_action import cli as func13 +from parsec.commands.workflows.run_workflow import cli as func14 +from parsec.commands.workflows.show_invocation import cli as func15 from parsec.commands.workflows.show_invocation_step import cli as func16 -from parsec.commands.workflows.cancel_invocation import cli as func17 +from parsec.commands.workflows.show_workflow import cli as func17 +from parsec.commands.workflows.wait_on_invocation import cli as func18 @click.group() def cli(): @@ -40,3 +41,4 @@ def cli(): cli.add_command(func15) cli.add_command(func16) cli.add_command(func17) +cli.add_command(func18) diff --git a/parsec/commands/workflows/wait_on_invocation.py b/parsec/commands/workflows/wait_on_invocation.py new file mode 100644 index 0000000..e9d8312 --- /dev/null +++ b/parsec/commands/workflows/wait_on_invocation.py @@ -0,0 +1,80 @@ +import time +import click +from parsec.cli import pass_context +from parsec.decorators import bioblend_exception, dict_output +from justbackoff import Backoff + + +@click.command('wait_on_invocation') +@click.argument("workflow_id", type=str, required=True) +@click.argument("invocation_id", type=str, required=True) +@click.option( + "--exit_early", + help="Exit immediately after checking status rather than sleeping indefinitely", + is_flag=True +) +@click.option( + "--backoff_min", + help="Minimum time to sleep between checks, in seconds.", + default=1, + type=float, +) +@click.option( + "--backoff_max", + help="Maximum time to sleep between checks, in seconds", + default=60, + type=float, +) +@click.option('-v', '--verbose', count=True) + +@pass_context +@bioblend_exception +@dict_output +def cli(ctx, workflow_id, invocation_id, verbose, exit_early=False, backoff_min=1, backoff_max=60): + """Given a workflow and invocation id, wait until that invocation is + complete (or one or more steps have errored) + """ + backoff = Backoff(min_ms=backoff_min * 1000, max_ms=backoff_max * 1000, factor=2, jitter=True) + + prev_state = None + while True: + # Fetch the current state + latest_state = ctx.gi.workflows.show_invocation(workflow_id, invocation_id) + # Get step states + states = [step['state'] for step in latest_state['steps'] if step['state'] is not None and step['state'] != 'deleted'] + # Get a str based state representation + state_rep = '|'.join(map(str, states)) + + if state_rep != prev_state: + backoff.reset() + prev_state = state_rep + + # If it's scheduled, then let's look at steps. Otherwise steps probably don't exist yet. + if latest_state['state'] == 'scheduled': + if verbose > 1: + click.echo("Checking workflow %s states: %s" % (workflow_id, state_rep)) + elif verbose > 0: + click.echo('.', nl=False) + + if exit_early: + if verbose > 0: + return {'state': 'running', 'job_states': states} + + # Conditions which must be true for all jobs before we can be done + if all([state == 'ok' for state in states]): + return {'state': 'done', 'job_states': states} + + # Conditions on which to exit immediately (i.e. due to a failure) + if any([state in ('error', 'paused') for state in states]): + return {'state': 'failure', 'job_states': states} + else: + if verbose > 1: + click.echo("Waiting for invocation to be scheduled") + elif verbose > 0: + click.echo("+", nl=False) + + if exit_early: + if verbose > 0: + return {'state': 'unscheduled'} + + time.sleep(backoff.duration()) diff --git a/requirements.txt b/requirements.txt index a188434..8acff8f 100644 --- a/requirements.txt +++ b/requirements.txt @@ -4,3 +4,4 @@ pyyaml bioblend>=0.9.0 docutils wrapt +justbackoff diff --git a/scripts/autobuilder.py b/scripts/autobuilder.py index 9c1024d..bcca998 100644 --- a/scripts/autobuilder.py +++ b/scripts/autobuilder.py @@ -220,7 +220,7 @@ def process_client(self, module, sm, ssm_name): handle.write('import click\n') # for function: files = list(glob.glob("parsec/commands/%s/*.py" % module)) - files = [f for f in files if "__init__.py" not in f] + files = sorted([f for f in files if "__init__.py" not in f]) for idx, path in enumerate(files): fn = path.replace('/', '.')[0:-3] handle.write('from %s import cli as func%s\n' % (fn, idx)) diff --git a/setup.py b/setup.py index 00fdb03..88bc853 100644 --- a/setup.py +++ b/setup.py @@ -15,6 +15,7 @@ 'bioblend', 'wrapt', 'pyyaml', + 'justbackoff', ] test_requirements = [ From fe8c47e92fad7fd8d9ea97b3834b2b3dbed6ea26 Mon Sep 17 00:00:00 2001 From: E Rasche Date: Thu, 25 May 2017 20:54:41 +0000 Subject: [PATCH 69/80] Move to utils --- docs/commands.rst | 1 + docs/commands/utils.rst | 19 +++++++++++++++ docs/commands/workflows.rst | 23 ------------------- .../wait_on_invocation.py | 0 parsec/cli.py | 5 ++-- parsec/commands/cmd_utils.py | 8 +++++++ parsec/commands/cmd_workflows.py | 2 -- parsec/commands/utils/__init__.py | 0 .../wait_on_invocation.py | 0 9 files changed, 31 insertions(+), 27 deletions(-) create mode 100644 docs/commands/utils.rst rename external/{workflows => utils}/wait_on_invocation.py (100%) create mode 100644 parsec/commands/cmd_utils.py create mode 100644 parsec/commands/utils/__init__.py rename parsec/commands/{workflows => utils}/wait_on_invocation.py (100%) diff --git a/docs/commands.rst b/docs/commands.rst index f922a88..269478f 100644 --- a/docs/commands.rst +++ b/docs/commands.rst @@ -27,5 +27,6 @@ describes these commands. commands/tools.rst commands/toolshed.rst commands/users.rst + commands/utils.rst commands/visual.rst commands/workflows.rst \ No newline at end of file diff --git a/docs/commands/utils.rst b/docs/commands/utils.rst new file mode 100644 index 0000000..1c9e4dd --- /dev/null +++ b/docs/commands/utils.rst @@ -0,0 +1,19 @@ +utils +===== + +This section is auto-generated from the help text for the arrow command +``utils``. + + +``wait_on_invocation`` command +------------------------------ + +**Usage**:: + + parsec [OPTIONS] COMMAND [ARGS]... + +**Help** + +Given a workflow and invocation id, wait until that invocation is +complete (or one or more steps have errored) + diff --git a/docs/commands/workflows.rst b/docs/commands/workflows.rst index 7665fca..8187ec2 100644 --- a/docs/commands/workflows.rst +++ b/docs/commands/workflows.rst @@ -375,26 +375,3 @@ Display information needed to run a workflow. -h, --help Show this message and exit. - -``wait_on_invocation`` command ------------------------------- - -**Usage**:: - - parsec workflows wait_on_invocation [OPTIONS] WORKFLOW_ID INVOCATION_ID - -**Help** - -Given a workflow and invocation id, wait until that invocation is -complete (or one or more steps have errored) - -**Options**:: - - - --exit_early Exit immediately after checking status rather than - sleeping indefinitely - --backoff_min FLOAT Minimum time to sleep between checks, in seconds. - --backoff_max FLOAT Maximum time to sleep between checks, in seconds - -v, --verbose - -h, --help Show this message and exit. - diff --git a/external/workflows/wait_on_invocation.py b/external/utils/wait_on_invocation.py similarity index 100% rename from external/workflows/wait_on_invocation.py rename to external/utils/wait_on_invocation.py diff --git a/parsec/cli.py b/parsec/cli.py index f048430..9a65f0c 100644 --- a/parsec/cli.py +++ b/parsec/cli.py @@ -89,7 +89,8 @@ def list_commands(self, ctx): commands = ['config', 'datasets', 'datatypes', 'folders', 'forms', 'ftpfiles', 'genomes', 'groups', 'histories', 'jobs', 'libraries', 'quotas', 'roles', 'tool', 'tool_data', - 'tools', 'toolshed', 'users', 'visual', 'workflows'] + 'tools', 'toolshed', 'users', 'utils', 'visual', + 'workflows'] return commands def get_command(self, ctx, name): @@ -103,7 +104,7 @@ def get_command(self, ctx, name): @click.option( "-g", "--galaxy_instance", - help='Name of galaxy instance in ~/.planemo.yml. This parameter can also be set via the environment variable PARSEC_GALAXY_INSTANCE', + help='Name of galaxy instance in ~/.parsec.yml. This parameter can also be set via the environment variable PARSEC_GALAXY_INSTANCE', default='__default', show_default=True, required=True diff --git a/parsec/commands/cmd_utils.py b/parsec/commands/cmd_utils.py new file mode 100644 index 0000000..62cb61f --- /dev/null +++ b/parsec/commands/cmd_utils.py @@ -0,0 +1,8 @@ +import click +from parsec.commands.util.wait_on_invocation import cli as func0 + +@click.group() +def cli(): + pass + +cli.add_command(func0) diff --git a/parsec/commands/cmd_workflows.py b/parsec/commands/cmd_workflows.py index de2f34a..f746a83 100644 --- a/parsec/commands/cmd_workflows.py +++ b/parsec/commands/cmd_workflows.py @@ -17,7 +17,6 @@ from parsec.commands.workflows.show_invocation import cli as func15 from parsec.commands.workflows.show_invocation_step import cli as func16 from parsec.commands.workflows.show_workflow import cli as func17 -from parsec.commands.workflows.wait_on_invocation import cli as func18 @click.group() def cli(): @@ -41,4 +40,3 @@ def cli(): cli.add_command(func15) cli.add_command(func16) cli.add_command(func17) -cli.add_command(func18) diff --git a/parsec/commands/utils/__init__.py b/parsec/commands/utils/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/parsec/commands/workflows/wait_on_invocation.py b/parsec/commands/utils/wait_on_invocation.py similarity index 100% rename from parsec/commands/workflows/wait_on_invocation.py rename to parsec/commands/utils/wait_on_invocation.py From bcd26eab229ea383e5a6d722760d445043030fec Mon Sep 17 00:00:00 2001 From: E Rasche Date: Thu, 25 May 2017 20:56:38 +0000 Subject: [PATCH 70/80] cleanups on the utils --- docs/commands/utils.rst | 12 +++++++++++- parsec/cli.py | 5 ++--- parsec/commands/cmd_utils.py | 2 +- 3 files changed, 14 insertions(+), 5 deletions(-) diff --git a/docs/commands/utils.rst b/docs/commands/utils.rst index 1c9e4dd..bd0dc5b 100644 --- a/docs/commands/utils.rst +++ b/docs/commands/utils.rst @@ -10,10 +10,20 @@ This section is auto-generated from the help text for the arrow command **Usage**:: - parsec [OPTIONS] COMMAND [ARGS]... + parsec utils wait_on_invocation [OPTIONS] WORKFLOW_ID INVOCATION_ID **Help** Given a workflow and invocation id, wait until that invocation is complete (or one or more steps have errored) +**Options**:: + + + --exit_early Exit immediately after checking status rather than + sleeping indefinitely + --backoff_min FLOAT Minimum time to sleep between checks, in seconds. + --backoff_max FLOAT Maximum time to sleep between checks, in seconds + -v, --verbose + -h, --help Show this message and exit. + diff --git a/parsec/cli.py b/parsec/cli.py index 9a65f0c..df5bb87 100644 --- a/parsec/cli.py +++ b/parsec/cli.py @@ -88,9 +88,8 @@ def list_commands(self, ctx): commands = ['config', 'datasets', 'datatypes', 'folders', 'forms', 'ftpfiles', 'genomes', 'groups', 'histories', 'jobs', - 'libraries', 'quotas', 'roles', 'tool', 'tool_data', - 'tools', 'toolshed', 'users', 'utils', 'visual', - 'workflows'] + 'libraries', 'quotas', 'roles', 'tool_data', 'tools', + 'toolshed', 'users', 'utils', 'visual', 'workflows'] return commands def get_command(self, ctx, name): diff --git a/parsec/commands/cmd_utils.py b/parsec/commands/cmd_utils.py index 62cb61f..adc9212 100644 --- a/parsec/commands/cmd_utils.py +++ b/parsec/commands/cmd_utils.py @@ -1,5 +1,5 @@ import click -from parsec.commands.util.wait_on_invocation import cli as func0 +from parsec.commands.utils.wait_on_invocation import cli as func0 @click.group() def cli(): From 04145728295b56cef18139168b759bce8a135e16 Mon Sep 17 00:00:00 2001 From: E Rasche Date: Thu, 25 May 2017 20:59:13 +0000 Subject: [PATCH 71/80] some small imports from arrow --- parsec/cli.py | 4 ++-- parsec/decorators.py | 23 ++++++++++++++++++++++- 2 files changed, 24 insertions(+), 3 deletions(-) diff --git a/parsec/cli.py b/parsec/cli.py index df5bb87..f41eb89 100644 --- a/parsec/cli.py +++ b/parsec/cli.py @@ -5,7 +5,7 @@ import json from .io import error -from .config import read_global_config # noqa, ditto +from .config import read_global_config, global_config_path # noqa, ditto from .galaxy import get_galaxy_instance, get_toolshed_instance from parsec import __version__ # noqa, ditto @@ -103,7 +103,7 @@ def get_command(self, ctx, name): @click.option( "-g", "--galaxy_instance", - help='Name of galaxy instance in ~/.parsec.yml. This parameter can also be set via the environment variable PARSEC_GALAXY_INSTANCE', + help='Name of galaxy instance in %s. This parameter can also be set via the environment variable PARSEC_GALAXY_INSTANCE' % global_config_path(), default='__default', show_default=True, required=True diff --git a/parsec/decorators.py b/parsec/decorators.py index 819ee72..c11a106 100644 --- a/parsec/decorators.py +++ b/parsec/decorators.py @@ -19,8 +19,29 @@ def bioblend_exception(wrapped, instance, args, kwargs): error(str(e)) +@wrapt.decorator +def list_output(wrapped, instance, args, kwargs): + output = wrapped(*args, **kwargs) + print((json.dumps(output, indent=4))) + + @wrapt.decorator def dict_output(wrapped, instance, args, kwargs): - # TODO enhance output = wrapped(*args, **kwargs) print((json.dumps(output, indent=4))) + + +@wrapt.decorator +def str_output(wrapped, instance, args, kwargs): + print(wrapped(*args, **kwargs)) + + +@wrapt.decorator +def None_output(wrapped, instance, args, kwargs): + print(wrapped(*args, **kwargs)) + + +def _arg_split(ctx, param, value): + # split columns by ',' and remove whitespace + columns = [c.strip() for c in value.split(',')] + return columns From 13a0bb02989c131d74f18f0bf3821bb39ef87033 Mon Sep 17 00:00:00 2001 From: E Rasche Date: Thu, 25 May 2017 21:00:28 +0000 Subject: [PATCH 72/80] Add wait on invocatione example --- README.rst | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/README.rst b/README.rst index afd3898..e6b75a5 100644 --- a/README.rst +++ b/README.rst @@ -657,3 +657,10 @@ We can now use parsec to check on the status of all of the datasets: 72 "new" 3 null 1 "ok" + +Or we can use one of the utility scripts to wait on that workflow to finish before continuing on to some other task: + +.. code-block:: shell + + $ parsec utils wait_on_invocation 3daf5606d767a471 c7f60cfda02f0f46 && ... + From a87de3501ab29a11749a1e8080081c89971023d8 Mon Sep 17 00:00:00 2001 From: E Rasche Date: Thu, 25 May 2017 21:05:29 +0000 Subject: [PATCH 73/80] Add proper exit codes --- docs/commands/utils.rst | 7 +++++ external/utils/wait_on_invocation.py | 32 ++++++++++++++------- parsec/commands/utils/wait_on_invocation.py | 32 ++++++++++++++------- 3 files changed, 51 insertions(+), 20 deletions(-) diff --git a/docs/commands/utils.rst b/docs/commands/utils.rst index bd0dc5b..e852070 100644 --- a/docs/commands/utils.rst +++ b/docs/commands/utils.rst @@ -17,6 +17,13 @@ This section is auto-generated from the help text for the arrow command Given a workflow and invocation id, wait until that invocation is complete (or one or more steps have errored) +This will exit with the following error codes: + +- 0: done successfully +- 1: running (if --exit_early) +- 2: failure +- 3: unknown + **Options**:: diff --git a/external/utils/wait_on_invocation.py b/external/utils/wait_on_invocation.py index e9d8312..f940c08 100644 --- a/external/utils/wait_on_invocation.py +++ b/external/utils/wait_on_invocation.py @@ -1,7 +1,8 @@ import time import click +import json from parsec.cli import pass_context -from parsec.decorators import bioblend_exception, dict_output +from parsec.decorators import bioblend_exception from justbackoff import Backoff @@ -29,10 +30,16 @@ @pass_context @bioblend_exception -@dict_output def cli(ctx, workflow_id, invocation_id, verbose, exit_early=False, backoff_min=1, backoff_max=60): """Given a workflow and invocation id, wait until that invocation is complete (or one or more steps have errored) + + This will exit with the following error codes: + + - 0: done successfully + - 1: running (if --exit_early) + - 2: failure + - 3: unknown """ backoff = Backoff(min_ms=backoff_min * 1000, max_ms=backoff_max * 1000, factor=2, jitter=True) @@ -52,29 +59,34 @@ def cli(ctx, workflow_id, invocation_id, verbose, exit_early=False, backoff_min= # If it's scheduled, then let's look at steps. Otherwise steps probably don't exist yet. if latest_state['state'] == 'scheduled': if verbose > 1: - click.echo("Checking workflow %s states: %s" % (workflow_id, state_rep)) + click.echo("Checking workflow %s states: %s" % (workflow_id, state_rep), err=True) elif verbose > 0: - click.echo('.', nl=False) + click.echo('.', nl=False, err=True) if exit_early: if verbose > 0: - return {'state': 'running', 'job_states': states} + print(json.dumps({'state': 'running', 'job_states': states})) + ctx.exit(code=1) # Conditions which must be true for all jobs before we can be done if all([state == 'ok' for state in states]): - return {'state': 'done', 'job_states': states} + print(json.dumps({'state': 'done', 'job_states': states})) + ctx.exit(code=0) # Conditions on which to exit immediately (i.e. due to a failure) if any([state in ('error', 'paused') for state in states]): - return {'state': 'failure', 'job_states': states} + print(json.dumps({'state': 'failure', 'job_states': states})) + ctx.exit(code=2) else: if verbose > 1: - click.echo("Waiting for invocation to be scheduled") + click.echo("Waiting for invocation to be scheduled", err=True) elif verbose > 0: - click.echo("+", nl=False) + click.echo("+", nl=False, err=True) if exit_early: if verbose > 0: - return {'state': 'unscheduled'} + print(json.dumps({'state': 'unscheduled'})) + ctx.exit(code=exit_code) time.sleep(backoff.duration()) + ctx.exit(code=3) diff --git a/parsec/commands/utils/wait_on_invocation.py b/parsec/commands/utils/wait_on_invocation.py index e9d8312..f940c08 100644 --- a/parsec/commands/utils/wait_on_invocation.py +++ b/parsec/commands/utils/wait_on_invocation.py @@ -1,7 +1,8 @@ import time import click +import json from parsec.cli import pass_context -from parsec.decorators import bioblend_exception, dict_output +from parsec.decorators import bioblend_exception from justbackoff import Backoff @@ -29,10 +30,16 @@ @pass_context @bioblend_exception -@dict_output def cli(ctx, workflow_id, invocation_id, verbose, exit_early=False, backoff_min=1, backoff_max=60): """Given a workflow and invocation id, wait until that invocation is complete (or one or more steps have errored) + + This will exit with the following error codes: + + - 0: done successfully + - 1: running (if --exit_early) + - 2: failure + - 3: unknown """ backoff = Backoff(min_ms=backoff_min * 1000, max_ms=backoff_max * 1000, factor=2, jitter=True) @@ -52,29 +59,34 @@ def cli(ctx, workflow_id, invocation_id, verbose, exit_early=False, backoff_min= # If it's scheduled, then let's look at steps. Otherwise steps probably don't exist yet. if latest_state['state'] == 'scheduled': if verbose > 1: - click.echo("Checking workflow %s states: %s" % (workflow_id, state_rep)) + click.echo("Checking workflow %s states: %s" % (workflow_id, state_rep), err=True) elif verbose > 0: - click.echo('.', nl=False) + click.echo('.', nl=False, err=True) if exit_early: if verbose > 0: - return {'state': 'running', 'job_states': states} + print(json.dumps({'state': 'running', 'job_states': states})) + ctx.exit(code=1) # Conditions which must be true for all jobs before we can be done if all([state == 'ok' for state in states]): - return {'state': 'done', 'job_states': states} + print(json.dumps({'state': 'done', 'job_states': states})) + ctx.exit(code=0) # Conditions on which to exit immediately (i.e. due to a failure) if any([state in ('error', 'paused') for state in states]): - return {'state': 'failure', 'job_states': states} + print(json.dumps({'state': 'failure', 'job_states': states})) + ctx.exit(code=2) else: if verbose > 1: - click.echo("Waiting for invocation to be scheduled") + click.echo("Waiting for invocation to be scheduled", err=True) elif verbose > 0: - click.echo("+", nl=False) + click.echo("+", nl=False, err=True) if exit_early: if verbose > 0: - return {'state': 'unscheduled'} + print(json.dumps({'state': 'unscheduled'})) + ctx.exit(code=exit_code) time.sleep(backoff.duration()) + ctx.exit(code=3) From 0d501e36c9ed3d553cb73e39daaf0be88e7009fb Mon Sep 17 00:00:00 2001 From: E Rasche Date: Thu, 25 May 2017 21:15:53 +0000 Subject: [PATCH 74/80] Use vlog --- docs/commands/utils.rst | 1 - external/utils/wait_on_invocation.py | 29 +++++++-------------- parsec/cli.py | 3 +++ parsec/commands/utils/wait_on_invocation.py | 29 +++++++-------------- 4 files changed, 23 insertions(+), 39 deletions(-) diff --git a/docs/commands/utils.rst b/docs/commands/utils.rst index e852070..a480484 100644 --- a/docs/commands/utils.rst +++ b/docs/commands/utils.rst @@ -31,6 +31,5 @@ This will exit with the following error codes: sleeping indefinitely --backoff_min FLOAT Minimum time to sleep between checks, in seconds. --backoff_max FLOAT Maximum time to sleep between checks, in seconds - -v, --verbose -h, --help Show this message and exit. diff --git a/external/utils/wait_on_invocation.py b/external/utils/wait_on_invocation.py index f940c08..92922fd 100644 --- a/external/utils/wait_on_invocation.py +++ b/external/utils/wait_on_invocation.py @@ -26,11 +26,10 @@ default=60, type=float, ) -@click.option('-v', '--verbose', count=True) @pass_context @bioblend_exception -def cli(ctx, workflow_id, invocation_id, verbose, exit_early=False, backoff_min=1, backoff_max=60): +def cli(ctx, workflow_id, invocation_id, exit_early=False, backoff_min=1, backoff_max=60): """Given a workflow and invocation id, wait until that invocation is complete (or one or more steps have errored) @@ -58,35 +57,27 @@ def cli(ctx, workflow_id, invocation_id, verbose, exit_early=False, backoff_min= # If it's scheduled, then let's look at steps. Otherwise steps probably don't exist yet. if latest_state['state'] == 'scheduled': - if verbose > 1: - click.echo("Checking workflow %s states: %s" % (workflow_id, state_rep), err=True) - elif verbose > 0: - click.echo('.', nl=False, err=True) + ctx.vlog("Checking workflow %s states: %s", workflow_id, state_rep) if exit_early: - if verbose > 0: - print(json.dumps({'state': 'running', 'job_states': states})) - ctx.exit(code=1) + print(json.dumps({'state': 'running', 'job_states': states})) + ctx.exit(1) # Conditions which must be true for all jobs before we can be done if all([state == 'ok' for state in states]): print(json.dumps({'state': 'done', 'job_states': states})) - ctx.exit(code=0) + ctx.exit(0) # Conditions on which to exit immediately (i.e. due to a failure) if any([state in ('error', 'paused') for state in states]): print(json.dumps({'state': 'failure', 'job_states': states})) - ctx.exit(code=2) + ctx.exit(2) else: - if verbose > 1: - click.echo("Waiting for invocation to be scheduled", err=True) - elif verbose > 0: - click.echo("+", nl=False, err=True) + ctx.vlog("Waiting for invocation to be scheduled") if exit_early: - if verbose > 0: - print(json.dumps({'state': 'unscheduled'})) - ctx.exit(code=exit_code) + print(json.dumps({'state': 'unscheduled'})) + ctx.exit(0) time.sleep(backoff.duration()) - ctx.exit(code=3) + ctx.exit(3) diff --git a/parsec/cli.py b/parsec/cli.py index f41eb89..d18a260 100644 --- a/parsec/cli.py +++ b/parsec/cli.py @@ -36,6 +36,9 @@ def vlog(self, msg, *args): if self.verbose: self.log(msg, *args) + def exit(self, exit_code): + self.vlog("Exiting parsec with exit code [%d]" % exit_code) + sys.exit(exit_code) pass_context = click.make_pass_decorator(Context, ensure=True) cmd_folder = os.path.abspath(os.path.join(os.path.dirname(__file__), diff --git a/parsec/commands/utils/wait_on_invocation.py b/parsec/commands/utils/wait_on_invocation.py index f940c08..92922fd 100644 --- a/parsec/commands/utils/wait_on_invocation.py +++ b/parsec/commands/utils/wait_on_invocation.py @@ -26,11 +26,10 @@ default=60, type=float, ) -@click.option('-v', '--verbose', count=True) @pass_context @bioblend_exception -def cli(ctx, workflow_id, invocation_id, verbose, exit_early=False, backoff_min=1, backoff_max=60): +def cli(ctx, workflow_id, invocation_id, exit_early=False, backoff_min=1, backoff_max=60): """Given a workflow and invocation id, wait until that invocation is complete (or one or more steps have errored) @@ -58,35 +57,27 @@ def cli(ctx, workflow_id, invocation_id, verbose, exit_early=False, backoff_min= # If it's scheduled, then let's look at steps. Otherwise steps probably don't exist yet. if latest_state['state'] == 'scheduled': - if verbose > 1: - click.echo("Checking workflow %s states: %s" % (workflow_id, state_rep), err=True) - elif verbose > 0: - click.echo('.', nl=False, err=True) + ctx.vlog("Checking workflow %s states: %s", workflow_id, state_rep) if exit_early: - if verbose > 0: - print(json.dumps({'state': 'running', 'job_states': states})) - ctx.exit(code=1) + print(json.dumps({'state': 'running', 'job_states': states})) + ctx.exit(1) # Conditions which must be true for all jobs before we can be done if all([state == 'ok' for state in states]): print(json.dumps({'state': 'done', 'job_states': states})) - ctx.exit(code=0) + ctx.exit(0) # Conditions on which to exit immediately (i.e. due to a failure) if any([state in ('error', 'paused') for state in states]): print(json.dumps({'state': 'failure', 'job_states': states})) - ctx.exit(code=2) + ctx.exit(2) else: - if verbose > 1: - click.echo("Waiting for invocation to be scheduled", err=True) - elif verbose > 0: - click.echo("+", nl=False, err=True) + ctx.vlog("Waiting for invocation to be scheduled") if exit_early: - if verbose > 0: - print(json.dumps({'state': 'unscheduled'})) - ctx.exit(code=exit_code) + print(json.dumps({'state': 'unscheduled'})) + ctx.exit(0) time.sleep(backoff.duration()) - ctx.exit(code=3) + ctx.exit(3) From 011c598f30a5bac3ca8cc41f1c16e2ea8443c4fd Mon Sep 17 00:00:00 2001 From: E Rasche Date: Thu, 25 May 2017 21:17:10 +0000 Subject: [PATCH 75/80] dupes are not useful --- Makefile | 1 - external/utils/wait_on_invocation.py | 83 ---------------------------- 2 files changed, 84 deletions(-) delete mode 100644 external/utils/wait_on_invocation.py diff --git a/Makefile b/Makefile index 261dca6..78f8978 100644 --- a/Makefile +++ b/Makefile @@ -1,4 +1,3 @@ rebuild: - rsync -ar external/ parsec/commands/ python scripts/autobuilder.py python scripts/commands_to_rst.py diff --git a/external/utils/wait_on_invocation.py b/external/utils/wait_on_invocation.py deleted file mode 100644 index 92922fd..0000000 --- a/external/utils/wait_on_invocation.py +++ /dev/null @@ -1,83 +0,0 @@ -import time -import click -import json -from parsec.cli import pass_context -from parsec.decorators import bioblend_exception -from justbackoff import Backoff - - -@click.command('wait_on_invocation') -@click.argument("workflow_id", type=str, required=True) -@click.argument("invocation_id", type=str, required=True) -@click.option( - "--exit_early", - help="Exit immediately after checking status rather than sleeping indefinitely", - is_flag=True -) -@click.option( - "--backoff_min", - help="Minimum time to sleep between checks, in seconds.", - default=1, - type=float, -) -@click.option( - "--backoff_max", - help="Maximum time to sleep between checks, in seconds", - default=60, - type=float, -) - -@pass_context -@bioblend_exception -def cli(ctx, workflow_id, invocation_id, exit_early=False, backoff_min=1, backoff_max=60): - """Given a workflow and invocation id, wait until that invocation is - complete (or one or more steps have errored) - - This will exit with the following error codes: - - - 0: done successfully - - 1: running (if --exit_early) - - 2: failure - - 3: unknown - """ - backoff = Backoff(min_ms=backoff_min * 1000, max_ms=backoff_max * 1000, factor=2, jitter=True) - - prev_state = None - while True: - # Fetch the current state - latest_state = ctx.gi.workflows.show_invocation(workflow_id, invocation_id) - # Get step states - states = [step['state'] for step in latest_state['steps'] if step['state'] is not None and step['state'] != 'deleted'] - # Get a str based state representation - state_rep = '|'.join(map(str, states)) - - if state_rep != prev_state: - backoff.reset() - prev_state = state_rep - - # If it's scheduled, then let's look at steps. Otherwise steps probably don't exist yet. - if latest_state['state'] == 'scheduled': - ctx.vlog("Checking workflow %s states: %s", workflow_id, state_rep) - - if exit_early: - print(json.dumps({'state': 'running', 'job_states': states})) - ctx.exit(1) - - # Conditions which must be true for all jobs before we can be done - if all([state == 'ok' for state in states]): - print(json.dumps({'state': 'done', 'job_states': states})) - ctx.exit(0) - - # Conditions on which to exit immediately (i.e. due to a failure) - if any([state in ('error', 'paused') for state in states]): - print(json.dumps({'state': 'failure', 'job_states': states})) - ctx.exit(2) - else: - ctx.vlog("Waiting for invocation to be scheduled") - - if exit_early: - print(json.dumps({'state': 'unscheduled'})) - ctx.exit(0) - - time.sleep(backoff.duration()) - ctx.exit(3) From 2bd4cc87f194a3ffe8d839b49a3b68f9d0a00a83 Mon Sep 17 00:00:00 2001 From: E Rasche Date: Thu, 25 May 2017 22:12:23 +0000 Subject: [PATCH 76/80] New xunit_xargs script --- parsec/commands/cmd_utils.py | 2 + parsec/commands/utils/xunit_xargs.py | 96 ++++++++++++++++++++++++++++ requirements.txt | 2 + setup.py | 2 + 4 files changed, 102 insertions(+) create mode 100644 parsec/commands/utils/xunit_xargs.py diff --git a/parsec/commands/cmd_utils.py b/parsec/commands/cmd_utils.py index adc9212..7461473 100644 --- a/parsec/commands/cmd_utils.py +++ b/parsec/commands/cmd_utils.py @@ -1,8 +1,10 @@ import click from parsec.commands.utils.wait_on_invocation import cli as func0 +from parsec.commands.utils.xunit_xargs import cli as func1 @click.group() def cli(): pass cli.add_command(func0) +cli.add_command(func1) diff --git a/parsec/commands/utils/xunit_xargs.py b/parsec/commands/utils/xunit_xargs.py new file mode 100644 index 0000000..662a065 --- /dev/null +++ b/parsec/commands/utils/xunit_xargs.py @@ -0,0 +1,96 @@ +import sys +import time +import click +import json +from parsec.cli import pass_context +from parsec.decorators import bioblend_exception +from justbackoff import Backoff +from subprocess import CalledProcessError, check_output +from xunit_wrapper import xunit, xunit_suite, xunit_dump +from six import binary_type, string_types, text_type + + +def unicodify(value): + # From Galaxy + if value is None: + return None + try: + if not isinstance(value, string_types) and not isinstance(value, binary_type): + value = str(value) + if not isinstance(value, text_type): + value = text_type(value, 'utf-8', 'replace') + except Exception: + return "error converting to unicode" + return value + + +@click.command('xunit_xargs', context_settings=dict( + ignore_unknown_options=True, + allow_extra_args=True +)) +@click.argument("_") + +@pass_context +@bioblend_exception +def cli(ctx, _): + """xargs look-alike that wraps output calls as XUnit XML + + e.g.:: + + parsec histories get_histories | \ + jq '.[].id' -r | \ + head -n 3 | \ + parsec utils xunit_xargs parsec histories get_status \| jq .percent_complete + + will fetch the first three histories mentioned, and then pass them to xargs + to run ``parsec histories get_status [history_id] | jq .percent_complete``. This will + in turn produce XUnit XML that can be used in Jenkins or similar systems:: + + + + + + 100 + + + 100 + + + 97.82608695652173 + + + + """ + test_cases = [] + for line in sys.stdin: + # pretend to be xargs + + piped_commands = sys.argv[sys.argv.index('xunit_xargs') + 1:] + if '|' in piped_commands: + pipe_idx = piped_commands.index('|') + piped_commands[pipe_idx] = line.strip() + ' |' + built_command = piped_commands + else: + built_command = piped_commands + [line.strip()] + # TODO: detect spaces in args and warn that they should be quoted. + # If they provide multiple strings, then pipe them together + ctx.vlog('Executing: %s', built_command) + + xunit_identifier = '.'.join([x.strip().replace(' ', '_') for x in piped_commands]) + xunit_identifier.replace(' ', '_') + if '|' in xunit_identifier: + xunit_name = xunit_identifier[0:xunit_identifier.index('|')] + else: + xunit_name = xunit_identifier + + output = "" + with xunit(xunit_name, xunit_identifier) as test_case: + output = check_output(' '.join(built_command), shell=True) + + # Set stdout + test_case._tc.stdout = unicodify(output).strip() + # Append to list + test_cases.append(test_case) + + ts = xunit_suite('Parsec XX', test_cases) + print(xunit_dump([ts])) diff --git a/requirements.txt b/requirements.txt index 8acff8f..8326307 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,3 +5,5 @@ bioblend>=0.9.0 docutils wrapt justbackoff +xunit-wrapper +future diff --git a/setup.py b/setup.py index 88bc853..92c8eba 100644 --- a/setup.py +++ b/setup.py @@ -16,6 +16,8 @@ 'wrapt', 'pyyaml', 'justbackoff', + 'xunit-wrapper', + 'future', ] test_requirements = [ From 6bc2d30f4e2ee498bfb9a61d795d36efdfe2e96e Mon Sep 17 00:00:00 2001 From: E Rasche Date: Thu, 25 May 2017 22:31:27 +0000 Subject: [PATCH 77/80] Nearly there... --- docs/cookbook.rst | 39 +++++++++++++++++++ parsec/commands/cmd_utils.py | 2 + parsec/commands/utils/cmp.py | 56 ++++++++++++++++++++++++++++ parsec/commands/utils/xunit_xargs.py | 2 +- 4 files changed, 98 insertions(+), 1 deletion(-) create mode 100644 parsec/commands/utils/cmp.py diff --git a/docs/cookbook.rst b/docs/cookbook.rst index 602966f..be60ca8 100644 --- a/docs/cookbook.rst +++ b/docs/cookbook.rst @@ -22,3 +22,42 @@ specifying a Galaxy instance. E.g.: You could easily set these at the top of a parsec script you've built and all commands from there on would talk to the same Galaxy instance. + +Capturing execution state as XUnit Output +----------------------------------------- + +If you find yourself building a pipeline with ``parsec`` and ``jq``, you might find +yourself wanting to produce the output in a machine-legible format such as +XUnit. ``parsec`` now ships with a (very alpha) script to help with this. +``parsec utils xunit_xargs`` provides an ``xargs``-like experience, except it +produces XUnit formatted output. We'll run through a quick example of this: + +.. code-block:: shell + + parsec histories get_histories | \ + jq '.[].id' -r | \ + head -n 3 | \ + parsec utils xunit_xargs parsec histories get_status \| jq .percent_complete + +This command will fetch the first three histories, and then attempt to run +``parsec histories get_status | jq .percent_complete`` for each +history id passed in. + +.. code-block:: xml + + + + + + 100 + + + 100 + + + 97.82608695652173 + + + + +Here we can see the example output, every test case listed, stdout has been captured. diff --git a/parsec/commands/cmd_utils.py b/parsec/commands/cmd_utils.py index 7461473..1f1b2eb 100644 --- a/parsec/commands/cmd_utils.py +++ b/parsec/commands/cmd_utils.py @@ -1,6 +1,7 @@ import click from parsec.commands.utils.wait_on_invocation import cli as func0 from parsec.commands.utils.xunit_xargs import cli as func1 +from parsec.commands.utils.cmp import cli as func2 @click.group() def cli(): @@ -8,3 +9,4 @@ def cli(): cli.add_command(func0) cli.add_command(func1) +cli.add_command(func2) diff --git a/parsec/commands/utils/cmp.py b/parsec/commands/utils/cmp.py new file mode 100644 index 0000000..810eb24 --- /dev/null +++ b/parsec/commands/utils/cmp.py @@ -0,0 +1,56 @@ +import sys +import time +import click +import json +from parsec.cli import pass_context +from parsec.decorators import bioblend_exception +from justbackoff import Backoff +from subprocess import CalledProcessError, check_output +from xunit_wrapper import xunit, xunit_suite, xunit_dump +from six import binary_type, string_types, text_type + + +@click.command('cmp') +@click.argument("method", type=str, required=True) +@click.argument("cmp_with", type=str, required=True) + +@pass_context +@bioblend_exception +def cli(ctx, method, cmp_with): + """comparison tool. Exits if the value read from stdin does not pass the comparison test with the specified value. + + method is the comparison method. One of these (lt, gt, eq, ne) which will + trigger a numerical comparison (cast to floats), or one of teq, tneq which + will trigger a string comparison. + + cmp_with is the value to compare against. E.g. '100' or 'test' + + e.g.:: + + echo '5' | parsec utils cmp lt 10 # exit 0 + + echo '5' | parsec utils cmp lt 1 # exit 1 + + """ + data = sys.stdin.read() + # Print it back out for output's convenience + sys.stderr.write("Input Data: " + data) + if method in ('lt', 'gt', 'ne', 'eq'): + data = float(data) + cmp_with = float(cmp_with) + + if method == 'lt': + ctx.exit(0) if data < cmp_with else ctx.exit(1) + elif method == 'gt': + ctx.exit(0) if data > cmp_with else ctx.exit(1) + elif method == 'ne': + ctx.exit(0) if data != cmp_with else ctx.exit(1) + elif method == 'eq': + ctx.exit(0) if data == cmp_with else ctx.exit(1) + + elif method in ('teq', 'tneq'): + if method == 'tneq': + ctx.exit(0) if data != cmp_with else ctx.exit(1) + elif method == 'teq': + ctx.exit(0) if data == cmp_with else ctx.exit(1) + ctx.exit(2) diff --git a/parsec/commands/utils/xunit_xargs.py b/parsec/commands/utils/xunit_xargs.py index 662a065..989d7cf 100644 --- a/parsec/commands/utils/xunit_xargs.py +++ b/parsec/commands/utils/xunit_xargs.py @@ -74,7 +74,6 @@ def cli(ctx, _): built_command = piped_commands + [line.strip()] # TODO: detect spaces in args and warn that they should be quoted. # If they provide multiple strings, then pipe them together - ctx.vlog('Executing: %s', built_command) xunit_identifier = '.'.join([x.strip().replace(' ', '_') for x in piped_commands]) xunit_identifier.replace(' ', '_') @@ -85,6 +84,7 @@ def cli(ctx, _): output = "" with xunit(xunit_name, xunit_identifier) as test_case: + ctx.vlog('Executing: %s', ' '.join(built_command)) output = check_output(' '.join(built_command), shell=True) # Set stdout From bdb268a122132d9e5f883ef553bf42673f51383d Mon Sep 17 00:00:00 2001 From: E Rasche Date: Thu, 25 May 2017 22:44:47 +0000 Subject: [PATCH 78/80] Finish up xx/cmp support --- docs/cookbook.rst | 39 ++++++++++++++++++---------- parsec/commands/utils/cmp.py | 18 ++++++------- parsec/commands/utils/xunit_xargs.py | 11 +++++++- 3 files changed, 43 insertions(+), 25 deletions(-) diff --git a/docs/cookbook.rst b/docs/cookbook.rst index be60ca8..312ff67 100644 --- a/docs/cookbook.rst +++ b/docs/cookbook.rst @@ -37,7 +37,7 @@ produces XUnit formatted output. We'll run through a quick example of this: parsec histories get_histories | \ jq '.[].id' -r | \ head -n 3 | \ - parsec utils xunit_xargs parsec histories get_status \| jq .percent_complete + parsec utils xunit_xargs parsec histories get_status \| jq .percent_complete \| parsec utils cmp eq 100 This command will fetch the first three histories, and then attempt to run ``parsec histories get_status | jq .percent_complete`` for each @@ -46,18 +46,29 @@ history id passed in. .. code-block:: xml - - - - 100 - - - 100 - - - 97.82608695652173 - - + + + + + + Traceback (most recent call last): + + File "/home/hxr/work-freiburg/parsec/parsec/commands/utils/xunit_xargs.py", line 95, in cli + output = check_output(' '.join(built_command), shell=True, stderr=stderr) + + File "/usr/lib/python3.5/subprocess.py", line 626, in check_output + **kwargs).stdout + + File "/usr/lib/python3.5/subprocess.py", line 708, in run + output=stdout, stderr=stderr) + + subprocess.CalledProcessError: Command 'parsec histories get_status 90c9282cb8718062 | jq .percent_complete | parsec utils cmp eq 100' returned non-zero exit status 1 + + 97.82608695652173 != 100.0 + + -Here we can see the example output, every test case listed, stdout has been captured. +Here we can see the example output, every history ID that went in came out as a +test case. One of them didn't pass a test we cared about and was marked as a +failure. diff --git a/parsec/commands/utils/cmp.py b/parsec/commands/utils/cmp.py index 810eb24..4bcd25d 100644 --- a/parsec/commands/utils/cmp.py +++ b/parsec/commands/utils/cmp.py @@ -33,24 +33,22 @@ def cli(ctx, method, cmp_with): """ data = sys.stdin.read() - # Print it back out for output's convenience - sys.stderr.write("Input Data: " + data) if method in ('lt', 'gt', 'ne', 'eq'): - data = float(data) - cmp_with = float(cmp_with) + data = float(data.strip()) + cmp_with = float(cmp_with.strip()) if method == 'lt': - ctx.exit(0) if data < cmp_with else ctx.exit(1) + ctx.exit(0) if data < cmp_with else sys.stderr.write('%s >= %s' % (data, cmp_with)); ctx.exit(1) elif method == 'gt': - ctx.exit(0) if data > cmp_with else ctx.exit(1) + ctx.exit(0) if data > cmp_with else sys.stderr.write('%s <= %s' % (data, cmp_with)); ctx.exit(1) elif method == 'ne': - ctx.exit(0) if data != cmp_with else ctx.exit(1) + ctx.exit(0) if data != cmp_with else sys.stderr.write('%s == %s' % (data, cmp_with)); ctx.exit(1) elif method == 'eq': - ctx.exit(0) if data == cmp_with else ctx.exit(1) + ctx.exit(0) if data == cmp_with else sys.stderr.write('%s != %s' % (data, cmp_with)); ctx.exit(1) elif method in ('teq', 'tneq'): if method == 'tneq': - ctx.exit(0) if data != cmp_with else ctx.exit(1) + ctx.exit(0) if data != cmp_with else sys.stderr.write('%s == %s' % (data, cmp_with)); ctx.exit(1) elif method == 'teq': - ctx.exit(0) if data == cmp_with else ctx.exit(1) + ctx.exit(0) if data == cmp_with else sys.stderr.write('%s != %s' % (data, cmp_with)); ctx.exit(1) ctx.exit(2) diff --git a/parsec/commands/utils/xunit_xargs.py b/parsec/commands/utils/xunit_xargs.py index 989d7cf..4dda55f 100644 --- a/parsec/commands/utils/xunit_xargs.py +++ b/parsec/commands/utils/xunit_xargs.py @@ -1,7 +1,13 @@ import sys import time import click +import tempfile import json +try: + import StringIO as io +except: + import io + from parsec.cli import pass_context from parsec.decorators import bioblend_exception from justbackoff import Backoff @@ -82,13 +88,16 @@ def cli(ctx, _): else: xunit_name = xunit_identifier + stderr = tempfile.NamedTemporaryFile() output = "" with xunit(xunit_name, xunit_identifier) as test_case: ctx.vlog('Executing: %s', ' '.join(built_command)) - output = check_output(' '.join(built_command), shell=True) + output = check_output(' '.join(built_command), shell=True, stderr=stderr) # Set stdout + stderr.seek(0) test_case._tc.stdout = unicodify(output).strip() + test_case._tc.stderr = unicodify(stderr.read()).strip() # Append to list test_cases.append(test_case) From 14e7d4972b9413f0346ec43b1560bf6b2e6cae46 Mon Sep 17 00:00:00 2001 From: E Rasche Date: Thu, 25 May 2017 23:22:31 +0000 Subject: [PATCH 79/80] anon --- docs/cookbook.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/cookbook.rst b/docs/cookbook.rst index 312ff67..ed906f3 100644 --- a/docs/cookbook.rst +++ b/docs/cookbook.rst @@ -53,7 +53,7 @@ history id passed in. Traceback (most recent call last): - File "/home/hxr/work-freiburg/parsec/parsec/commands/utils/xunit_xargs.py", line 95, in cli + File "xunit_xargs.py", line 95, in cli output = check_output(' '.join(built_command), shell=True, stderr=stderr) File "/usr/lib/python3.5/subprocess.py", line 626, in check_output From 118875f5951d4c1a106607ebce91486eae0920cf Mon Sep 17 00:00:00 2001 From: E Rasche Date: Thu, 25 May 2017 23:23:26 +0000 Subject: [PATCH 80/80] flake8 --- parsec/cli.py | 1 + 1 file changed, 1 insertion(+) diff --git a/parsec/cli.py b/parsec/cli.py index d18a260..aa3e7ea 100644 --- a/parsec/cli.py +++ b/parsec/cli.py @@ -40,6 +40,7 @@ def exit(self, exit_code): self.vlog("Exiting parsec with exit code [%d]" % exit_code) sys.exit(exit_code) + pass_context = click.make_pass_decorator(Context, ensure=True) cmd_folder = os.path.abspath(os.path.join(os.path.dirname(__file__), 'commands'))