changeset 1:2909e53fac5b draft

planemo upload for repository https://github.com/brsynth commit 6ae809b563b40bcdb6be2e74fe2a84ddad5484ae
author tduigou
date Mon, 02 Jun 2025 14:54:24 +0000
parents 95757ea6c333
children 33ebf3ea3eb6
files json_db_config_generating.xml output.html output.json
diffstat 3 files changed, 79 insertions(+), 77 deletions(-) [+]
line wrap: on
line diff
--- a/json_db_config_generating.xml	Mon Jun 02 13:39:41 2025 +0000
+++ b/json_db_config_generating.xml	Mon Jun 02 14:54:24 2025 +0000
@@ -12,15 +12,33 @@
         'JSON_fragment_column': '$fragment_column',
         'JSON_sequence_column': '$sequence_column',
         'JSON_annotation_column': '$annotation_column'
-        }; f = open('$output_json', 'w'); json.dump(params, f, indent=4); f.close()"
+        }; f = open('$output_json', 'w'); json.dump(params, f, indent=4); f.close()" && echo DEBG && cat '$output_json'
     ]]></command>
     <inputs>
-        <param name="execution" type="boolean" label="execution key" checked="False" help="If True the execution key in the json file will be true" optional="true" />
-        <param name="db_uri" type="text" label="DB Connection URI" optional="true" />
-        <param name="table_name" type="text" label="DB Table Name" optional="true" />
-        <param name="fragment_column" type="text" label="DB IDs Column Name" optional="true" />
-        <param name="sequence_column" type="text" label="DB Column Contains Sequence For ganbank File" optional="true" />
-        <param name="annotation_column" type="text" label="DB Column Contains Annotation For Ganbank File" optional="true" />
+        <conditional name="db_request">
+            <param name="execution" type="select" label="Save To DB ?" help="If True the execution key in the json file will be true" optional="false">
+                <option value="false" selected="True">NO</option>
+                <option value="true">YES</option>
+            </param>
+            <when value='true'>
+                <section name='db_config' title='DB config' expanded='true'>
+                    <param name="db_uri" type="text" label="DB Connection URI" optional="true" />
+                    <param name="table_name" type="text" label="DB Table Name" optional="true" />
+                    <param name="fragment_column" type="text" label="DB IDs Column Name" optional="true" />
+                    <param name="sequence_column" type="text" label="DB Column Contains Sequence For ganbank File" optional="true" />
+                    <param name="annotation_column" type="text" label="DB Column Contains Annotation For Ganbank File" optional="true" />
+                </section>
+            </when>
+            <when value='false'>
+                <section name='db_config' title='DB config' expanded='false'>
+                    <param name="db_uri" type="text" label="DB Connection URI" optional="true" />
+                    <param name="table_name" type="text" label="DB Table Name" optional="true" />
+                    <param name="fragment_column" type="text" label="DB IDs Column Name" optional="true" />
+                    <param name="sequence_column" type="text" label="DB Column Contains Sequence For ganbank File" optional="true" />
+                    <param name="annotation_column" type="text" label="DB Column Contains Annotation For Ganbank File" optional="true" />
+                </section>
+            </when>
+        </conditional>
     </inputs>   
     <outputs>
         <data name="output_json" format="json" label="JSON Conf" />
@@ -28,12 +46,14 @@
     <tests>
         <!--test execution is true -->
         <test> 
-            <param name="execution" value="True" />
-            <param name="db_uri" value="postgresql://postgres:RK17@localhost:5432/test_fragments_db" />
-            <param name="table_name" value="sample" />
-            <param name="fragment_column" value="fragment" />
-            <param name="sequence_column" value="sequence" />
-            <param name="annotation_column" value="annotation" />
+            <conditional name="db_request">
+                <param name="execution" value="true" />
+                <param name="db_config|db_uri" value="postgresql://postgres:RK17@localhost:5432/test_fragments_db" />
+                <param name="db_config|table_name" value="sample" />
+                <param name="db_config|fragment_column" value="fragment" />
+                <param name="db_config|sequence_column" value="sequence" />
+                <param name="db_config|annotation_column" value="annotation" />
+            </conditional>
             <output name="output_json">
                 <assert_contents>
                     <has_json_property_with_text property="execution" text="true" />
@@ -47,20 +67,17 @@
         </test>
         <!--test execution is false -->
         <test> 
-            <param name="execution" value="False" />
-            <param name="db_uri" value="postgresql://postgres:RK17@localhost:5432/test_fragments_db" />
-            <param name="table_name" value="sample" />
-            <param name="fragment_column" value="fragment" />
-            <param name="sequence_column" value="sequence" />
-            <param name="annotation_column" value="annotation" />
+            <conditional name="db_request">
+                <param name="execution" value="false" />
+            </conditional>
             <output name="output_json">
                 <assert_contents>
                     <has_json_property_with_text property="execution" text="false" />
-                    <has_json_property_with_text property="JSON_db_uri" text="postgresql://postgres:RK17__at__localhost:5432/test_fragments_db" />
-                    <has_json_property_with_text property="JSON_table" text="sample" />
-                    <has_json_property_with_text property="JSON_fragment_column" text="fragment" />
-                    <has_json_property_with_text property="JSON_sequence_column" text="sequence" />
-                    <has_json_property_with_text property="JSON_annotation_column" text="annotation" />
+                    <has_json_property_with_text property="JSON_db_uri" text="" />
+                    <has_json_property_with_text property="JSON_table" text="" />
+                    <has_json_property_with_text property="JSON_fragment_column" text="" />
+                    <has_json_property_with_text property="JSON_sequence_column" text="" />
+                    <has_json_property_with_text property="JSON_annotation_column" text="" />
                 </assert_contents>
             </output>
         </test>
--- a/output.html	Mon Jun 02 13:39:41 2025 +0000
+++ b/output.html	Mon Jun 02 14:54:24 2025 +0000
@@ -285,7 +285,7 @@
         var md = window.markdownit({
           html: true,
         });
-        target.innerHTML = md.render(atob('IyMgVGVzdCBTdW1tYXJ5Cgo8ZGl2IGNsYXNzPSJwcm9ncmVzcyI+CiAgPGRpdiBjbGFzcz0icHJvZ3Jlc3MtYmFyIHByb2dyZXNzLWJhci1zdWNjZXNzIiBzdHlsZT0id2lkdGg6IDEwMC4wJSIgYXJpYS12YWx1ZW5vdz0iMiIgYXJpYS12YWx1ZW1pbj0iMCIgYXJpYS12YWx1ZW1heD0iMiIgZGF0YS10b2dnbGU9InRvb2x0aXAiIHRpdGxlPSIyIFBhc3NlZCI+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icHJvZ3Jlc3MtYmFyIHByb2dyZXNzLWJhci13YXJuaW5nIiBzdHlsZT0id2lkdGg6IDAuMCUiIGFyaWEtdmFsdWVub3c9IjAiIGFyaWEtdmFsdWVtaW49IjAiIGFyaWEtdmFsdWVtYXg9IjIiIGRhdGEtdG9nZ2xlPSJ0b29sdGlwIiB0aXRsZT0iMCBTa2lwcGVkIj4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwcm9ncmVzcy1iYXIgcHJvZ3Jlc3MtYmFyLWRhbmdlciIgc3R5bGU9IndpZHRoOiAwLjAlIiBhcmlhLXZhbHVlbm93PSIwIiBhcmlhLXZhbHVlbWluPSIwIiBhcmlhLXZhbHVlbWF4PSIyIiB0aXRsZT0iMCBGYWlsZWQgb3IgRXJyb3JlZCI+CiAgPC9kaXY+CjwvZGl2PgoKfCBUZXN0IFN0YXRlIHwgQ291bnQgfAp8IC0tLS0tLS0tLS0gfCAtLS0tLSB8CnwgVG90YWwgICAgICB8IDIgfAp8IFBhc3NlZCAgICAgfCAyIHwKfCBFcnJvciAgICAgIHwgMCB8CnwgRmFpbHVyZSAgICB8IDAgfAp8IFNraXBwZWQgICAgfCAwIHwKCgo8ZGV0YWlscyA+PHN1bW1hcnk+UGFzc2VkIFRlc3RzPC9zdW1tYXJ5PgoKKiA8ZGV0YWlscyBjbGFzcz0icmNvcm5lcnMgbGlnaHQtZ3JlZW4iPjxzdW1tYXJ5IGNsYXNzPSJsaWdodC1ncmVlbiI+JiM5OTg5OyBqc29uX2RiX2NvbmZpZ19nZW5lcmF0aW5nIChUZXN0ICMgMSk8L3N1bW1hcnk+PGRpdiBjbGFzcz0icGFkZGVkIj4KCiAgICAqKkNvbW1hbmQgTGluZToqKgoKICAgICogYGBgY29uc29sZQogICAgICBweXRob24zIC1jICJpbXBvcnQganNvbjsgcGFyYW1zID0geyAnZXhlY3V0aW9uJzogJ3RydWUnLCAnSlNPTl9kYl91cmknOiAncG9zdGdyZXNxbDovL3Bvc3RncmVzOlJLMTdfX2F0X19sb2NhbGhvc3Q6NTQzMi90ZXN0X2ZyYWdtZW50c19kYicsICdKU09OX3RhYmxlJzogJ3NhbXBsZScsICdKU09OX2ZyYWdtZW50X2NvbHVtbic6ICdmcmFnbWVudCcsICdKU09OX3NlcXVlbmNlX2NvbHVtbic6ICdzZXF1ZW5jZScsICdKU09OX2Fubm90YXRpb25fY29sdW1uJzogJ2Fubm90YXRpb24nIH07IGYgPSBvcGVuKCcvdG1wL3RtcGh1b3gxbWVfL2pvYl93b3JraW5nX2RpcmVjdG9yeS8wMDAvMS9vdXRwdXRzL2RhdGFzZXRfYTU3ZDQzODEtYmE1MS00YzdlLTg0MDktMWVjMGY4NWQzYmEyLmRhdCcsICd3Jyk7IGpzb24uZHVtcChwYXJhbXMsIGYsIGluZGVudD00KTsgZi5jbG9zZSgpIiAmJiBlY2hvIERFQlVHICYmIGNhdCAnL3RtcC90bXBodW94MW1lXy9qb2Jfd29ya2luZ19kaXJlY3RvcnkvMDAwLzEvb3V0cHV0cy9kYXRhc2V0X2E1N2Q0MzgxLWJhNTEtNGM3ZS04NDA5LTFlYzBmODVkM2JhMi5kYXQnCiAgICAgIGBgYAogICAgKipFeGl0IENvZGU6KioKCiAgICAqIGBgYGNvbnNvbGUKICAgICAgMAogICAgICBgYGAKICAgICoqU3RhbmRhcmQgT3V0cHV0OioqCgogICAgKiBgYGBjb25zb2xlCiAgICAgIERFQlVHCiAgICAgIHsKICAgICAgICAgICJleGVjdXRpb24iOiAidHJ1ZSIsCiAgICAgICAgICAiSlNPTl9kYl91cmkiOiAicG9zdGdyZXNxbDovL3Bvc3RncmVzOlJLMTdfX2F0X19sb2NhbGhvc3Q6NTQzMi90ZXN0X2ZyYWdtZW50c19kYiIsCiAgICAgICAgICAiSlNPTl90YWJsZSI6ICJzYW1wbGUiLAogICAgICAgICAgIkpTT05fZnJhZ21lbnRfY29sdW1uIjogImZyYWdtZW50IiwKICAgICAgICAgICJKU09OX3NlcXVlbmNlX2NvbHVtbiI6ICJzZXF1ZW5jZSIsCiAgICAgICAgICAiSlNPTl9hbm5vdGF0aW9uX2NvbHVtbiI6ICJhbm5vdGF0aW9uIgogICAgICB9CiAgICAgIGBgYAogICAgKipUcmFjZWJhY2s6KioKCiAgICAqIGBgYGNvbnNvbGUKICAgICAgCiAgICAgIGBgYAogICAqKkpvYiBQYXJhbWV0ZXJzOioqCgogICAqICAgfCBKb2IgcGFyYW1ldGVyIHwgUGFyYW1ldGVyIHZhbHVlIHwKICAgICAgIHwgLS0tLS0tLS0tLS0tLSB8IC0tLS0tLS0tLS0tLS0tLSB8CiAgICAgICB8IGV4ZWN1dGlvbiB8IGAgdHJ1ZSBgIHwKICAgICAgIHwgZGJcX3VyaSB8IGAgInBvc3RncmVzcWw6Ly9wb3N0Z3JlczpSSzE3QGxvY2FsaG9zdDo1NDMyL3Rlc3RfZnJhZ21lbnRzX2RiIiBgIHwKICAgICAgIHwgdGFibGVcX25hbWUgfCBgICJzYW1wbGUiIGAgfAogICAgICAgfCBmcmFnbWVudFxfY29sdW1uIHwgYCAiZnJhZ21lbnQiIGAgfAogICAgICAgfCBzZXF1ZW5jZVxfY29sdW1uIHwgYCAic2VxdWVuY2UiIGAgfAogICAgICAgfCBhbm5vdGF0aW9uXF9jb2x1bW4gfCBgICJhbm5vdGF0aW9uIiBgIHwKICAgICAgIHwgY2hyb21JbmZvIHwgYCAiL3RtcC90bXBodW94MW1lXy9nYWxheHktZGV2L3Rvb2wtZGF0YS9zaGFyZWQvdWNzYy9jaHJvbS8/LmxlbiIgYCB8CiAgICAgICB8IGRia2V5IHwgYCAiPyIgYCB8CiAgICAgICB8IFxfXF9pbnB1dFxfZXh0IHwgYCAiaW5wdXQiIGAgfAoKCgogICAgPC9kaXY+PC9kZXRhaWxzPgoKCiogPGRldGFpbHMgY2xhc3M9InJjb3JuZXJzIGxpZ2h0LWdyZWVuIj48c3VtbWFyeSBjbGFzcz0ibGlnaHQtZ3JlZW4iPiYjOTk4OTsganNvbl9kYl9jb25maWdfZ2VuZXJhdGluZyAoVGVzdCAjIDIpPC9zdW1tYXJ5PjxkaXYgY2xhc3M9InBhZGRlZCI+CgogICAgKipDb21tYW5kIExpbmU6KioKCiAgICAqIGBgYGNvbnNvbGUKICAgICAgcHl0aG9uMyAtYyAiaW1wb3J0IGpzb247IHBhcmFtcyA9IHsgJ2V4ZWN1dGlvbic6ICdmYWxzZScsICdKU09OX2RiX3VyaSc6ICdwb3N0Z3Jlc3FsOi8vcG9zdGdyZXM6UksxN19fYXRfX2xvY2FsaG9zdDo1NDMyL3Rlc3RfZnJhZ21lbnRzX2RiJywgJ0pTT05fdGFibGUnOiAnc2FtcGxlJywgJ0pTT05fZnJhZ21lbnRfY29sdW1uJzogJ2ZyYWdtZW50JywgJ0pTT05fc2VxdWVuY2VfY29sdW1uJzogJ3NlcXVlbmNlJywgJ0pTT05fYW5ub3RhdGlvbl9jb2x1bW4nOiAnYW5ub3RhdGlvbicgfTsgZiA9IG9wZW4oJy90bXAvdG1waHVveDFtZV8vam9iX3dvcmtpbmdfZGlyZWN0b3J5LzAwMC8yL291dHB1dHMvZGF0YXNldF9iNGQzOWMxOS04ODJmLTQ4MDUtOTBlZS1kYmZkMmRjNTFjNDQuZGF0JywgJ3cnKTsganNvbi5kdW1wKHBhcmFtcywgZiwgaW5kZW50PTQpOyBmLmNsb3NlKCkiICYmIGVjaG8gREVCVUcgJiYgY2F0ICcvdG1wL3RtcGh1b3gxbWVfL2pvYl93b3JraW5nX2RpcmVjdG9yeS8wMDAvMi9vdXRwdXRzL2RhdGFzZXRfYjRkMzljMTktODgyZi00ODA1LTkwZWUtZGJmZDJkYzUxYzQ0LmRhdCcKICAgICAgYGBgCiAgICAqKkV4aXQgQ29kZToqKgoKICAgICogYGBgY29uc29sZQogICAgICAwCiAgICAgIGBgYAogICAgKipTdGFuZGFyZCBPdXRwdXQ6KioKCiAgICAqIGBgYGNvbnNvbGUKICAgICAgREVCVUcKICAgICAgewogICAgICAgICAgImV4ZWN1dGlvbiI6ICJmYWxzZSIsCiAgICAgICAgICAiSlNPTl9kYl91cmkiOiAicG9zdGdyZXNxbDovL3Bvc3RncmVzOlJLMTdfX2F0X19sb2NhbGhvc3Q6NTQzMi90ZXN0X2ZyYWdtZW50c19kYiIsCiAgICAgICAgICAiSlNPTl90YWJsZSI6ICJzYW1wbGUiLAogICAgICAgICAgIkpTT05fZnJhZ21lbnRfY29sdW1uIjogImZyYWdtZW50IiwKICAgICAgICAgICJKU09OX3NlcXVlbmNlX2NvbHVtbiI6ICJzZXF1ZW5jZSIsCiAgICAgICAgICAiSlNPTl9hbm5vdGF0aW9uX2NvbHVtbiI6ICJhbm5vdGF0aW9uIgogICAgICB9CiAgICAgIGBgYAogICAgKipUcmFjZWJhY2s6KioKCiAgICAqIGBgYGNvbnNvbGUKICAgICAgCiAgICAgIGBgYAogICAqKkpvYiBQYXJhbWV0ZXJzOioqCgogICAqICAgfCBKb2IgcGFyYW1ldGVyIHwgUGFyYW1ldGVyIHZhbHVlIHwKICAgICAgIHwgLS0tLS0tLS0tLS0tLSB8IC0tLS0tLS0tLS0tLS0tLSB8CiAgICAgICB8IGV4ZWN1dGlvbiB8IGAgZmFsc2UgYCB8CiAgICAgICB8IGRiXF91cmkgfCBgICJwb3N0Z3Jlc3FsOi8vcG9zdGdyZXM6UksxN0Bsb2NhbGhvc3Q6NTQzMi90ZXN0X2ZyYWdtZW50c19kYiIgYCB8CiAgICAgICB8IHRhYmxlXF9uYW1lIHwgYCAic2FtcGxlIiBgIHwKICAgICAgIHwgZnJhZ21lbnRcX2NvbHVtbiB8IGAgImZyYWdtZW50IiBgIHwKICAgICAgIHwgc2VxdWVuY2VcX2NvbHVtbiB8IGAgInNlcXVlbmNlIiBgIHwKICAgICAgIHwgYW5ub3RhdGlvblxfY29sdW1uIHwgYCAiYW5ub3RhdGlvbiIgYCB8CiAgICAgICB8IGNocm9tSW5mbyB8IGAgIi90bXAvdG1waHVveDFtZV8vZ2FsYXh5LWRldi90b29sLWRhdGEvc2hhcmVkL3Vjc2MvY2hyb20vPy5sZW4iIGAgfAogICAgICAgfCBkYmtleSB8IGAgIj8iIGAgfAogICAgICAgfCBcX1xfaW5wdXRcX2V4dCB8IGAgImlucHV0IiBgIHwKCgoKICAgIDwvZGl2PjwvZGV0YWlscz4KCgo8L2RldGFpbHM+Cg=='));
+        target.innerHTML = md.render(atob('IyMgVGVzdCBTdW1tYXJ5Cgo8ZGl2IGNsYXNzPSJwcm9ncmVzcyI+CiAgPGRpdiBjbGFzcz0icHJvZ3Jlc3MtYmFyIHByb2dyZXNzLWJhci1zdWNjZXNzIiBzdHlsZT0id2lkdGg6IDEwMC4wJSIgYXJpYS12YWx1ZW5vdz0iMiIgYXJpYS12YWx1ZW1pbj0iMCIgYXJpYS12YWx1ZW1heD0iMiIgZGF0YS10b2dnbGU9InRvb2x0aXAiIHRpdGxlPSIyIFBhc3NlZCI+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icHJvZ3Jlc3MtYmFyIHByb2dyZXNzLWJhci13YXJuaW5nIiBzdHlsZT0id2lkdGg6IDAuMCUiIGFyaWEtdmFsdWVub3c9IjAiIGFyaWEtdmFsdWVtaW49IjAiIGFyaWEtdmFsdWVtYXg9IjIiIGRhdGEtdG9nZ2xlPSJ0b29sdGlwIiB0aXRsZT0iMCBTa2lwcGVkIj4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwcm9ncmVzcy1iYXIgcHJvZ3Jlc3MtYmFyLWRhbmdlciIgc3R5bGU9IndpZHRoOiAwLjAlIiBhcmlhLXZhbHVlbm93PSIwIiBhcmlhLXZhbHVlbWluPSIwIiBhcmlhLXZhbHVlbWF4PSIyIiB0aXRsZT0iMCBGYWlsZWQgb3IgRXJyb3JlZCI+CiAgPC9kaXY+CjwvZGl2PgoKfCBUZXN0IFN0YXRlIHwgQ291bnQgfAp8IC0tLS0tLS0tLS0gfCAtLS0tLSB8CnwgVG90YWwgICAgICB8IDIgfAp8IFBhc3NlZCAgICAgfCAyIHwKfCBFcnJvciAgICAgIHwgMCB8CnwgRmFpbHVyZSAgICB8IDAgfAp8IFNraXBwZWQgICAgfCAwIHwKCgo8ZGV0YWlscyA+PHN1bW1hcnk+UGFzc2VkIFRlc3RzPC9zdW1tYXJ5PgoKKiA8ZGV0YWlscyBjbGFzcz0icmNvcm5lcnMgbGlnaHQtZ3JlZW4iPjxzdW1tYXJ5IGNsYXNzPSJsaWdodC1ncmVlbiI+JiM5OTg5OyBqc29uX2RiX2NvbmZpZ19nZW5lcmF0aW5nIChUZXN0ICMgMSk8L3N1bW1hcnk+PGRpdiBjbGFzcz0icGFkZGVkIj4KCiAgICAqKkNvbW1hbmQgTGluZToqKgoKICAgICogYGBgY29uc29sZQogICAgICBweXRob24zIC1jICJpbXBvcnQganNvbjsgcGFyYW1zID0geyAnZXhlY3V0aW9uJzogJ3RydWUnLCAnSlNPTl9kYl91cmknOiAncG9zdGdyZXNxbDovL3Bvc3RncmVzOlJLMTdfX2F0X19sb2NhbGhvc3Q6NTQzMi90ZXN0X2ZyYWdtZW50c19kYicsICdKU09OX3RhYmxlJzogJ3NhbXBsZScsICdKU09OX2ZyYWdtZW50X2NvbHVtbic6ICdmcmFnbWVudCcsICdKU09OX3NlcXVlbmNlX2NvbHVtbic6ICdzZXF1ZW5jZScsICdKU09OX2Fubm90YXRpb25fY29sdW1uJzogJ2Fubm90YXRpb24nIH07IGYgPSBvcGVuKCcvdG1wL3RtcDkxdTF2bWRyL2pvYl93b3JraW5nX2RpcmVjdG9yeS8wMDAvMS9vdXRwdXRzL2RhdGFzZXRfYjc4MWU5ZGMtODNiNC00YzNmLTk5ZWYtNmMxZWI2MDc4ZjYyLmRhdCcsICd3Jyk7IGpzb24uZHVtcChwYXJhbXMsIGYsIGluZGVudD00KTsgZi5jbG9zZSgpIiAmJiBlY2hvIERFQkcgJiYgY2F0ICcvdG1wL3RtcDkxdTF2bWRyL2pvYl93b3JraW5nX2RpcmVjdG9yeS8wMDAvMS9vdXRwdXRzL2RhdGFzZXRfYjc4MWU5ZGMtODNiNC00YzNmLTk5ZWYtNmMxZWI2MDc4ZjYyLmRhdCcKICAgICAgYGBgCiAgICAqKkV4aXQgQ29kZToqKgoKICAgICogYGBgY29uc29sZQogICAgICAwCiAgICAgIGBgYAogICAgKipTdGFuZGFyZCBPdXRwdXQ6KioKCiAgICAqIGBgYGNvbnNvbGUKICAgICAgREVCRwogICAgICB7CiAgICAgICAgICAiZXhlY3V0aW9uIjogInRydWUiLAogICAgICAgICAgIkpTT05fZGJfdXJpIjogInBvc3RncmVzcWw6Ly9wb3N0Z3JlczpSSzE3X19hdF9fbG9jYWxob3N0OjU0MzIvdGVzdF9mcmFnbWVudHNfZGIiLAogICAgICAgICAgIkpTT05fdGFibGUiOiAic2FtcGxlIiwKICAgICAgICAgICJKU09OX2ZyYWdtZW50X2NvbHVtbiI6ICJmcmFnbWVudCIsCiAgICAgICAgICAiSlNPTl9zZXF1ZW5jZV9jb2x1bW4iOiAic2VxdWVuY2UiLAogICAgICAgICAgIkpTT05fYW5ub3RhdGlvbl9jb2x1bW4iOiAiYW5ub3RhdGlvbiIKICAgICAgfQogICAgICBgYGAKICAgICoqVHJhY2ViYWNrOioqCgogICAgKiBgYGBjb25zb2xlCiAgICAgIAogICAgICBgYGAKICAgKipKb2IgUGFyYW1ldGVyczoqKgoKICAgKiAgIHwgSm9iIHBhcmFtZXRlciB8IFBhcmFtZXRlciB2YWx1ZSB8CiAgICAgICB8IC0tLS0tLS0tLS0tLS0gfCAtLS0tLS0tLS0tLS0tLS0gfAogICAgICAgfCBkYlxfcmVxdWVzdCB8IGAgeyJfX2N1cnJlbnRfY2FzZV9fIjogMCwgImRiX2NvbmZpZyI6IHsiYW5ub3RhdGlvbl9jb2x1bW4iOiAiYW5ub3RhdGlvbiIsICJkYl91cmkiOiAicG9zdGdyZXNxbDovL3Bvc3RncmVzOlJLMTdAbG9jYWxob3N0OjU0MzIvdGVzdF9mcmFnbWVudHNfZGIiLCAiZnJhZ21lbnRfY29sdW1uIjogImZyYWdtZW50IiwgInNlcXVlbmNlX2NvbHVtbiI6ICJzZXF1ZW5jZSIsICJ0YWJsZV9uYW1lIjogInNhbXBsZSJ9LCAiZXhlY3V0aW9uIjogInRydWUifSBgIHwKICAgICAgIHwgY2hyb21JbmZvIHwgYCAiL3RtcC90bXA5MXUxdm1kci9nYWxheHktZGV2L3Rvb2wtZGF0YS9zaGFyZWQvdWNzYy9jaHJvbS8/LmxlbiIgYCB8CiAgICAgICB8IGRia2V5IHwgYCAiPyIgYCB8CiAgICAgICB8IFxfXF9pbnB1dFxfZXh0IHwgYCAiaW5wdXQiIGAgfAoKCgogICAgPC9kaXY+PC9kZXRhaWxzPgoKCiogPGRldGFpbHMgY2xhc3M9InJjb3JuZXJzIGxpZ2h0LWdyZWVuIj48c3VtbWFyeSBjbGFzcz0ibGlnaHQtZ3JlZW4iPiYjOTk4OTsganNvbl9kYl9jb25maWdfZ2VuZXJhdGluZyAoVGVzdCAjIDIpPC9zdW1tYXJ5PjxkaXYgY2xhc3M9InBhZGRlZCI+CgogICAgKipDb21tYW5kIExpbmU6KioKCiAgICAqIGBgYGNvbnNvbGUKICAgICAgcHl0aG9uMyAtYyAiaW1wb3J0IGpzb247IHBhcmFtcyA9IHsgJ2V4ZWN1dGlvbic6ICdmYWxzZScsICdKU09OX2RiX3VyaSc6ICcnLCAnSlNPTl90YWJsZSc6ICcnLCAnSlNPTl9mcmFnbWVudF9jb2x1bW4nOiAnJywgJ0pTT05fc2VxdWVuY2VfY29sdW1uJzogJycsICdKU09OX2Fubm90YXRpb25fY29sdW1uJzogJycgfTsgZiA9IG9wZW4oJy90bXAvdG1wOTF1MXZtZHIvam9iX3dvcmtpbmdfZGlyZWN0b3J5LzAwMC8yL291dHB1dHMvZGF0YXNldF9mZWEwNzc4Zi1mYzg0LTQxOTQtYTM3ZS1iYzc0YmJlMjM5YjkuZGF0JywgJ3cnKTsganNvbi5kdW1wKHBhcmFtcywgZiwgaW5kZW50PTQpOyBmLmNsb3NlKCkiICYmIGVjaG8gREVCRyAmJiBjYXQgJy90bXAvdG1wOTF1MXZtZHIvam9iX3dvcmtpbmdfZGlyZWN0b3J5LzAwMC8yL291dHB1dHMvZGF0YXNldF9mZWEwNzc4Zi1mYzg0LTQxOTQtYTM3ZS1iYzc0YmJlMjM5YjkuZGF0JwogICAgICBgYGAKICAgICoqRXhpdCBDb2RlOioqCgogICAgKiBgYGBjb25zb2xlCiAgICAgIDAKICAgICAgYGBgCiAgICAqKlN0YW5kYXJkIE91dHB1dDoqKgoKICAgICogYGBgY29uc29sZQogICAgICBERUJHCiAgICAgIHsKICAgICAgICAgICJleGVjdXRpb24iOiAiZmFsc2UiLAogICAgICAgICAgIkpTT05fZGJfdXJpIjogIiIsCiAgICAgICAgICAiSlNPTl90YWJsZSI6ICIiLAogICAgICAgICAgIkpTT05fZnJhZ21lbnRfY29sdW1uIjogIiIsCiAgICAgICAgICAiSlNPTl9zZXF1ZW5jZV9jb2x1bW4iOiAiIiwKICAgICAgICAgICJKU09OX2Fubm90YXRpb25fY29sdW1uIjogIiIKICAgICAgfQogICAgICBgYGAKICAgICoqVHJhY2ViYWNrOioqCgogICAgKiBgYGBjb25zb2xlCiAgICAgIAogICAgICBgYGAKICAgKipKb2IgUGFyYW1ldGVyczoqKgoKICAgKiAgIHwgSm9iIHBhcmFtZXRlciB8IFBhcmFtZXRlciB2YWx1ZSB8CiAgICAgICB8IC0tLS0tLS0tLS0tLS0gfCAtLS0tLS0tLS0tLS0tLS0gfAogICAgICAgfCBkYlxfcmVxdWVzdCB8IGAgeyJfX2N1cnJlbnRfY2FzZV9fIjogMSwgImRiX2NvbmZpZyI6IHsiYW5ub3RhdGlvbl9jb2x1bW4iOiBudWxsLCAiZGJfdXJpIjogbnVsbCwgImZyYWdtZW50X2NvbHVtbiI6IG51bGwsICJzZXF1ZW5jZV9jb2x1bW4iOiBudWxsLCAidGFibGVfbmFtZSI6IG51bGx9LCAiZXhlY3V0aW9uIjogImZhbHNlIn0gYCB8CiAgICAgICB8IGNocm9tSW5mbyB8IGAgIi90bXAvdG1wOTF1MXZtZHIvZ2FsYXh5LWRldi90b29sLWRhdGEvc2hhcmVkL3Vjc2MvY2hyb20vPy5sZW4iIGAgfAogICAgICAgfCBkYmtleSB8IGAgIj8iIGAgfAogICAgICAgfCBcX1xfaW5wdXRcX2V4dCB8IGAgImlucHV0IiBgIHwKCgoKICAgIDwvZGl2PjwvZGV0YWlscz4KCgo8L2RldGFpbHM+Cg=='));
     </script>
   </body>
 </html>
\ No newline at end of file
--- a/output.json	Mon Jun 02 13:39:41 2025 +0000
+++ b/output.json	Mon Jun 02 14:54:24 2025 +0000
@@ -9,25 +9,25 @@
         {
             "data": {
                 "inputs": {
-                    "annotation_column": "annotation",
-                    "db_uri": "postgresql://postgres:RK17@localhost:5432/test_fragments_db",
-                    "execution": true,
-                    "fragment_column": "fragment",
-                    "sequence_column": "sequence",
-                    "table_name": "sample"
+                    "db_request|db_config|annotation_column": "annotation",
+                    "db_request|db_config|db_uri": "postgresql://postgres:RK17@localhost:5432/test_fragments_db",
+                    "db_request|db_config|fragment_column": "fragment",
+                    "db_request|db_config|sequence_column": "sequence",
+                    "db_request|db_config|table_name": "sample",
+                    "db_request|execution": "true"
                 },
                 "job": {
-                    "command_line": "python3 -c \"import json; params = { 'execution': 'true', 'JSON_db_uri': 'postgresql://postgres:RK17__at__localhost:5432/test_fragments_db', 'JSON_table': 'sample', 'JSON_fragment_column': 'fragment', 'JSON_sequence_column': 'sequence', 'JSON_annotation_column': 'annotation' }; f = open('/tmp/tmphuox1me_/job_working_directory/000/1/outputs/dataset_a57d4381-ba51-4c7e-8409-1ec0f85d3ba2.dat', 'w'); json.dump(params, f, indent=4); f.close()\" && echo DEBUG && cat '/tmp/tmphuox1me_/job_working_directory/000/1/outputs/dataset_a57d4381-ba51-4c7e-8409-1ec0f85d3ba2.dat'",
+                    "command_line": "python3 -c \"import json; params = { 'execution': 'true', 'JSON_db_uri': 'postgresql://postgres:RK17__at__localhost:5432/test_fragments_db', 'JSON_table': 'sample', 'JSON_fragment_column': 'fragment', 'JSON_sequence_column': 'sequence', 'JSON_annotation_column': 'annotation' }; f = open('/tmp/tmp91u1vmdr/job_working_directory/000/1/outputs/dataset_b781e9dc-83b4-4c3f-99ef-6c1eb6078f62.dat', 'w'); json.dump(params, f, indent=4); f.close()\" && echo DEBG && cat '/tmp/tmp91u1vmdr/job_working_directory/000/1/outputs/dataset_b781e9dc-83b4-4c3f-99ef-6c1eb6078f62.dat'",
                     "command_version": "",
                     "copied_from_job_id": null,
-                    "create_time": "2025-06-02T13:36:45.666819",
+                    "create_time": "2025-06-02T14:52:18.811266",
                     "dependencies": [],
                     "exit_code": 0,
-                    "external_id": "240263",
+                    "external_id": "274048",
                     "galaxy_version": "24.2",
                     "handler": null,
-                    "history_id": "abb9783f010dde16",
-                    "id": "abb9783f010dde16",
+                    "history_id": "a0c0127196534838",
+                    "id": "a0c0127196534838",
                     "inputs": {},
                     "job_messages": [],
                     "job_metrics": [],
@@ -38,35 +38,30 @@
                     "output_collections": {},
                     "outputs": {
                         "output_json": {
-                            "id": "abb9783f010dde16",
+                            "id": "a0c0127196534838",
                             "src": "hda",
-                            "uuid": "a57d4381-ba51-4c7e-8409-1ec0f85d3ba2"
+                            "uuid": "b781e9dc-83b4-4c3f-99ef-6c1eb6078f62"
                         }
                     },
                     "params": {
                         "__input_ext": "\"input\"",
-                        "annotation_column": "\"annotation\"",
-                        "chromInfo": "\"/tmp/tmphuox1me_/galaxy-dev/tool-data/shared/ucsc/chrom/?.len\"",
-                        "db_uri": "\"postgresql://postgres:RK17@localhost:5432/test_fragments_db\"",
-                        "dbkey": "\"?\"",
-                        "execution": "true",
-                        "fragment_column": "\"fragment\"",
-                        "sequence_column": "\"sequence\"",
-                        "table_name": "\"sample\""
+                        "chromInfo": "\"/tmp/tmp91u1vmdr/galaxy-dev/tool-data/shared/ucsc/chrom/?.len\"",
+                        "db_request": "{\"__current_case__\": 0, \"db_config\": {\"annotation_column\": \"annotation\", \"db_uri\": \"postgresql://postgres:RK17@localhost:5432/test_fragments_db\", \"fragment_column\": \"fragment\", \"sequence_column\": \"sequence\", \"table_name\": \"sample\"}, \"execution\": \"true\"}",
+                        "dbkey": "\"?\""
                     },
                     "state": "ok",
                     "stderr": "",
-                    "stdout": "DEBUG\n{\n    \"execution\": \"true\",\n    \"JSON_db_uri\": \"postgresql://postgres:RK17__at__localhost:5432/test_fragments_db\",\n    \"JSON_table\": \"sample\",\n    \"JSON_fragment_column\": \"fragment\",\n    \"JSON_sequence_column\": \"sequence\",\n    \"JSON_annotation_column\": \"annotation\"\n}",
+                    "stdout": "DEBG\n{\n    \"execution\": \"true\",\n    \"JSON_db_uri\": \"postgresql://postgres:RK17__at__localhost:5432/test_fragments_db\",\n    \"JSON_table\": \"sample\",\n    \"JSON_fragment_column\": \"fragment\",\n    \"JSON_sequence_column\": \"sequence\",\n    \"JSON_annotation_column\": \"annotation\"\n}",
                     "tool_id": "json_db_config_generating",
                     "tool_stderr": "",
-                    "tool_stdout": "DEBUG\n{\n    \"execution\": \"true\",\n    \"JSON_db_uri\": \"postgresql://postgres:RK17__at__localhost:5432/test_fragments_db\",\n    \"JSON_table\": \"sample\",\n    \"JSON_fragment_column\": \"fragment\",\n    \"JSON_sequence_column\": \"sequence\",\n    \"JSON_annotation_column\": \"annotation\"\n}",
-                    "update_time": "2025-06-02T13:36:51.468608",
+                    "tool_stdout": "DEBG\n{\n    \"execution\": \"true\",\n    \"JSON_db_uri\": \"postgresql://postgres:RK17__at__localhost:5432/test_fragments_db\",\n    \"JSON_table\": \"sample\",\n    \"JSON_fragment_column\": \"fragment\",\n    \"JSON_sequence_column\": \"sequence\",\n    \"JSON_annotation_column\": \"annotation\"\n}",
+                    "update_time": "2025-06-02T14:52:24.970443",
                     "user_email": "planemo@galaxyproject.org",
-                    "user_id": "abb9783f010dde16"
+                    "user_id": "a0c0127196534838"
                 },
                 "status": "success",
                 "test_index": 0,
-                "time_seconds": 6.098992109298706,
+                "time_seconds": 6.417675256729126,
                 "tool_id": "json_db_config_generating",
                 "tool_version": "0.1.0+galaxy1"
             },
@@ -76,25 +71,20 @@
         {
             "data": {
                 "inputs": {
-                    "annotation_column": "annotation",
-                    "db_uri": "postgresql://postgres:RK17@localhost:5432/test_fragments_db",
-                    "execution": false,
-                    "fragment_column": "fragment",
-                    "sequence_column": "sequence",
-                    "table_name": "sample"
+                    "db_request|execution": "false"
                 },
                 "job": {
-                    "command_line": "python3 -c \"import json; params = { 'execution': 'false', 'JSON_db_uri': 'postgresql://postgres:RK17__at__localhost:5432/test_fragments_db', 'JSON_table': 'sample', 'JSON_fragment_column': 'fragment', 'JSON_sequence_column': 'sequence', 'JSON_annotation_column': 'annotation' }; f = open('/tmp/tmphuox1me_/job_working_directory/000/2/outputs/dataset_b4d39c19-882f-4805-90ee-dbfd2dc51c44.dat', 'w'); json.dump(params, f, indent=4); f.close()\" && echo DEBUG && cat '/tmp/tmphuox1me_/job_working_directory/000/2/outputs/dataset_b4d39c19-882f-4805-90ee-dbfd2dc51c44.dat'",
+                    "command_line": "python3 -c \"import json; params = { 'execution': 'false', 'JSON_db_uri': '', 'JSON_table': '', 'JSON_fragment_column': '', 'JSON_sequence_column': '', 'JSON_annotation_column': '' }; f = open('/tmp/tmp91u1vmdr/job_working_directory/000/2/outputs/dataset_fea0778f-fc84-4194-a37e-bc74bbe239b9.dat', 'w'); json.dump(params, f, indent=4); f.close()\" && echo DEBG && cat '/tmp/tmp91u1vmdr/job_working_directory/000/2/outputs/dataset_fea0778f-fc84-4194-a37e-bc74bbe239b9.dat'",
                     "command_version": "",
                     "copied_from_job_id": null,
-                    "create_time": "2025-06-02T13:36:51.893406",
+                    "create_time": "2025-06-02T14:52:25.368237",
                     "dependencies": [],
                     "exit_code": 0,
-                    "external_id": "240333",
+                    "external_id": "274120",
                     "galaxy_version": "24.2",
                     "handler": null,
-                    "history_id": "e20768301a38397d",
-                    "id": "e20768301a38397d",
+                    "history_id": "819c904f5882870a",
+                    "id": "819c904f5882870a",
                     "inputs": {},
                     "job_messages": [],
                     "job_metrics": [],
@@ -105,35 +95,30 @@
                     "output_collections": {},
                     "outputs": {
                         "output_json": {
-                            "id": "e20768301a38397d",
+                            "id": "819c904f5882870a",
                             "src": "hda",
-                            "uuid": "b4d39c19-882f-4805-90ee-dbfd2dc51c44"
+                            "uuid": "fea0778f-fc84-4194-a37e-bc74bbe239b9"
                         }
                     },
                     "params": {
                         "__input_ext": "\"input\"",
-                        "annotation_column": "\"annotation\"",
-                        "chromInfo": "\"/tmp/tmphuox1me_/galaxy-dev/tool-data/shared/ucsc/chrom/?.len\"",
-                        "db_uri": "\"postgresql://postgres:RK17@localhost:5432/test_fragments_db\"",
-                        "dbkey": "\"?\"",
-                        "execution": "false",
-                        "fragment_column": "\"fragment\"",
-                        "sequence_column": "\"sequence\"",
-                        "table_name": "\"sample\""
+                        "chromInfo": "\"/tmp/tmp91u1vmdr/galaxy-dev/tool-data/shared/ucsc/chrom/?.len\"",
+                        "db_request": "{\"__current_case__\": 1, \"db_config\": {\"annotation_column\": null, \"db_uri\": null, \"fragment_column\": null, \"sequence_column\": null, \"table_name\": null}, \"execution\": \"false\"}",
+                        "dbkey": "\"?\""
                     },
                     "state": "ok",
                     "stderr": "",
-                    "stdout": "DEBUG\n{\n    \"execution\": \"false\",\n    \"JSON_db_uri\": \"postgresql://postgres:RK17__at__localhost:5432/test_fragments_db\",\n    \"JSON_table\": \"sample\",\n    \"JSON_fragment_column\": \"fragment\",\n    \"JSON_sequence_column\": \"sequence\",\n    \"JSON_annotation_column\": \"annotation\"\n}",
+                    "stdout": "DEBG\n{\n    \"execution\": \"false\",\n    \"JSON_db_uri\": \"\",\n    \"JSON_table\": \"\",\n    \"JSON_fragment_column\": \"\",\n    \"JSON_sequence_column\": \"\",\n    \"JSON_annotation_column\": \"\"\n}",
                     "tool_id": "json_db_config_generating",
                     "tool_stderr": "",
-                    "tool_stdout": "DEBUG\n{\n    \"execution\": \"false\",\n    \"JSON_db_uri\": \"postgresql://postgres:RK17__at__localhost:5432/test_fragments_db\",\n    \"JSON_table\": \"sample\",\n    \"JSON_fragment_column\": \"fragment\",\n    \"JSON_sequence_column\": \"sequence\",\n    \"JSON_annotation_column\": \"annotation\"\n}",
-                    "update_time": "2025-06-02T13:36:57.648501",
+                    "tool_stdout": "DEBG\n{\n    \"execution\": \"false\",\n    \"JSON_db_uri\": \"\",\n    \"JSON_table\": \"\",\n    \"JSON_fragment_column\": \"\",\n    \"JSON_sequence_column\": \"\",\n    \"JSON_annotation_column\": \"\"\n}",
+                    "update_time": "2025-06-02T14:52:31.112726",
                     "user_email": "planemo@galaxyproject.org",
-                    "user_id": "abb9783f010dde16"
+                    "user_id": "a0c0127196534838"
                 },
                 "status": "success",
                 "test_index": 1,
-                "time_seconds": 6.048913240432739,
+                "time_seconds": 6.040508270263672,
                 "tool_id": "json_db_config_generating",
                 "tool_version": "0.1.0+galaxy1"
             },