Mercurial > repos > geco-team > gmql_repository
diff gmql_rest_repository.xml @ 0:bb858d9ad271 draft default tip
planemo upload for repository https://github.com/lu-brn/gmql-galaxy commit 953ee36ceda5814dc9baa03427bc0eb4ee2e93bd-dirty
author | geco-team |
---|---|
date | Tue, 26 Jun 2018 09:02:27 -0400 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/gmql_rest_repository.xml Tue Jun 26 09:02:27 2018 -0400 @@ -0,0 +1,150 @@ +<tool id="gmql_repository" name="GMQL Repository Access" version="0.1.1"> + <description>View, browse, rename or delete datasets in the user's space on the GMQL system.</description> + <macros> + <import>gmql_rest_macros.xml</import> + </macros> + <command><![CDATA[ + python $__tool_directory__/gmql_rest_datasets.py + #set $cmd = $rep.operation + #if $cmd == 'list' : + $out_list + #elif $cmd == 'samples' : + $out_samples + -dataset=$rep.ds_name + #elif $cmd == 'delete' : + $updated_list + -dataset=$rep.dataset_del + #elif $cmd == 'rename' : + $updated_list + -dataset=$rep.dataset_ren + -new_name=$rep.new_name + #end if + -user=$authToken + -cmd=$cmd + ]]></command> + <code file="dynamic_utils.py"> + <hook validate_input="validate" /> + </code> + <inputs> + <param format="gmql_user" name="authToken" type="data" label="Select user" /> + <conditional name="rep"> + <param name="operation" type="select" display="radio" multiple="false" label="Select the desired action" > + <option value="list">View datasets</option> + <option value="samples">View a dataset's samples</option> + <option value="rename">Rename a dataset</option> + <option value="delete">Delete a dataset</option> + </param> + <when value="list"> + <!-- do nothing --> + </when> + <when value="samples"> + <param name="gmql_datasets" type="data" format="gmql_repository" label="Working Datasets"/> + <param name="ds_name" type="select" label="Select Dataset"> + <options from_dataset="gmql_datasets"> + <column name="value" index="0"/> + </options> + </param> + + </when> + <when value="rename"> + <param name="gmql_datasets" type="data" format="gmql_repository" label="Working Datasets" /> + <param name="dataset_ren" type="select" label="Select Dataset to rename"> + <options from_dataset="gmql_datasets"> + <column name="value" index="0" /> + <filter column="1" type="static_value" value="public" keep="false" /> + </options> + </param> + <param name="new_name" type="text" label="New Dataset Name" > + <validator type="regex" message="Only alphanumeric characters and underscore are allowed">[\w]+$</validator> + </param> + </when> + <when value="delete"> + <param name="gmql_datasets" type="data" format="gmql_repository" label="Working Datasets" /> + <param name="dataset_del" type="select" label="Select Dataset to delete"> + <options from_dataset="gmql_datasets"> + <column name="value" index="0" /> + <filter column="1" type="static_value" value="public" keep="false"/> + </options> + </param> + </when> + </conditional> + </inputs> + <outputs> + <data format="gmql_repository" name="out_list" label="${authToken.name.split()[0].rstrip('')} GMQL Datasets"> + <filter>rep['operation'] == 'list'</filter> + <actions> + <action name="column_names" type="metadata" default="dataset,owner" /> + </actions> + </data> + <data format="tabular" name="out_samples" label="${rep.ds_name} samples list from ${authToken.name.split()[0].rstrip('')} GMQL Datasets" > + <filter>rep['operation'] == 'samples'</filter> + <actions> + <action name="column_names" type="metadata" default="id,sample,ext" /> + </actions> + </data> + <data format="gmql_repository" name="updated_list" label="${authToken.name.split()[0].rstrip('')} GMQL Datasets"> + <filter>rep['operation'] == 'rename' or rep['operation'] == 'delete'</filter> + <actions> + <action name="column_names" type="metadata" default="dataset,owner" /> + </actions> + </data> + </outputs> + <tests> + <test> + <param name="authToken" value="guest.gmql_user" /> + <conditional name="rep"> + <param name="operation" value="list" /> + </conditional> + <output name="out_list" ftype="gmql_repository"> + <assert_contents> + <has_n_columns n="2" /> + <has_line_matching expression="Example_Dataset_1\tpublic" /> + <has_line_matching expression="Example_Dataset_2\tpublic" /> + </assert_contents> + </output> + </test> + <test> + <param name="authToken" value="guest.gmql_user" /> + <conditional name="rep"> + <param name="operation" value="samples" /> + <param name="gmql_datasets" value="rep.gmql_repository" /> + <param name="ds_name" value="Example_Dataset_1" /> + </conditional> + <output name="out_samples" ftype="tabular"> + <assert_contents> + <has_n_columns n="3" /> + <has_text text="S_00000" /> + <has_text text="S_00001" /> + <has_text text="S_00002" /> + <has_text text="S_00003" /> + <has_text text="S_00004" /> + <has_text text="S_00005" /> + <has_text text="S_00006" /> + </assert_contents> + </output> + </test> + </tests> + <help> +This tool serves to access the GMQL public repository, and the user’s private one. +In particular, within the public repository interesting datasets collected from established sources, +like ENCODE or UCSC, and small example datasets are hosted. + +---- + +**What it does** + +- **view datasets**: list all datasets, both private and public +- **view dataset's samples**: list samples of given dataset +- **rename dataset**: change name of dataset, return updated datasets list +- **delete dataset**: delete dataset, return updated dataset list + +.. class:: warningmark + +Public datasets can only be seen or browsed, but not renamed or deleted. + +.. class:: warningmark + +A gmql_user authentication token is required for every action. + </help> + <expand macro="citations" /> +</tool> \ No newline at end of file