# HG changeset patch # User iuc # Date 1761292983 0 # Node ID 1090ae5e7b29c7f36b5c3ef71d54034a4cd8ea3e # Parent 7f669682f4ac656d6e3ec1499dccf0fdc5d4b2d0 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/ena_webin_cli commit 6f9ce1aba91681e831f2649fb36b74cc3d572eb3 diff -r 7f669682f4ac -r 1090ae5e7b29 README.rst --- a/README.rst Mon Oct 06 12:13:07 2025 +0000 +++ b/README.rst Fri Oct 24 08:03:03 2025 +0000 @@ -9,18 +9,7 @@ Setting up credentials on Galaxy -------------------------------- -The admin of the server can set up global credentials through a file -with the format: - -.. code-block:: yaml - - username: webin_id - password: webin_password - -The path to this file must be exported as an environment variable called -$GALAXY_ENA_SECRETS - -Alternatively, the admin can enable users to set their own credentials +Enable users to set their own credentials for this tool. To enable it, make sure the file ``config/user_preferences_extra_conf.yml`` has the following section: diff -r 7f669682f4ac -r 1090ae5e7b29 ena_webin_cli.xml --- a/ena_webin_cli.xml Mon Oct 06 12:13:07 2025 +0000 +++ b/ena_webin_cli.xml Fri Oct 24 08:03:03 2025 +0000 @@ -2,7 +2,7 @@ Submission of consensus sequences to the European Nucleotide Archive (ENA) 9.0.1 - 0 + 1 ena-webin-cli @@ -13,35 +13,27 @@ ## ----------------------------------------------------------------------------- ## 1) Initialize log and credentials ## ----------------------------------------------------------------------------- +echo "Initializing log and credentials"; ## Truncate (or create) the Galaxy-captured Webin-CLI log dataset. : > "$webin_cli_log"; -## Default path where the content will be written. -## In dry-run we override this with a fake file so tests don’t require real creds. -#set $credentials = 'credentials' -#if $dry_run == "true": - #set $credentials = './test_fake_path' - touch $credentials; - echo "username:test_user" >> "$credentials"; - echo "password:test_password" >> "$credentials"; -#end if - ## Extract username/password from the credentials file. ## NOTE: $webin_id appears in bash, so we escape it as \$webin_id. -webin_id=`grep 'username' $credentials | cut -d':' -f2,2`; +webin_id=`grep 'username' $credentials | cut -d':' -f2`; if [ -z "\$webin_id" ]; then ## Fail early with guidance if no username is present. echo "No ENA credentials defined. Set your credentials via: User -> Preferences -> Manage Information" >&2; exit 1; else ## Pull the password similarly. - password=`grep 'password' $credentials | cut -d':' -f2,2`; + password=`grep 'password' $credentials | cut -d':' -f2`; fi; ## ----------------------------------------------------------------------------- ## 2) Create a base manifest (fields common to all submissions) ## ----------------------------------------------------------------------------- +echo "Creating a base manifest (fields common to all submissions)"; ## Name of the base manifest template (we append more fields later). #set $manifest_base = 'manifest_base.tab' @@ -62,6 +54,7 @@ ## ----------------------------------------------------------------------------- ## 3) Build per-sample manifests depending on metadata workflow ## ----------------------------------------------------------------------------- +echo "Building per-sample manifests depending on metadata workflow"; #if $metadata_file_or_form.metadata_format == "file": ## --------------------------- FILE-DRIVEN WORKFLOW ------------------------ @@ -151,8 +144,9 @@ #end if ## ----------------------------------------------------------------------------- -## 4) Prepare output directory and build CLI flags safely with Cheetah +## 4) Prepare output directory and build CLI flags ## ----------------------------------------------------------------------------- +echo "Preparing output directory and build CLI flags"; ## Webin-CLI will write receipts/logs under this directory (we later tar it). #set $outputs_dir = 'outputs' @@ -173,6 +167,7 @@ ## ----------------------------------------------------------------------------- ## 5) Execute Webin-CLI ## ----------------------------------------------------------------------------- +echo "Executing Webin-CLI"; #if $metadata_file_or_form.metadata_format == "file": ## Loop over each manifest written by process_input.py (submit_list.tab). @@ -184,17 +179,18 @@ echo "Submitting manifest \$manifest" >> "$webin_cli_log" 2>&1; ## Invoke Webin-CLI with computed flags. - ena-webin-cli -context genome -manifest "\$manifest" -userName "'\$webin_id'" -password "'\$password'" -centerName "'\$center_name'" -inputDir './fasta' $test_flag $action_flag -outputDir $outputs_dir >> '$webin_cli_log' 2>&1 || true; + ena-webin-cli -context genome -manifest "\$manifest" -userName "\$webin_id" -password "\$password" -centerName "\$center_name" -inputDir "./fasta" $test_flag $action_flag -outputDir $outputs_dir >> '$webin_cli_log' 2>&1 || true; done < submit_list.tab; #else: ## Single run in "form" mode with the one generated manifest. - ena-webin-cli -context genome -manifest $generated_manifest -userName "'\$webin_id'" -password "'\$password'" -centerName "'\$center_name'" -inputDir ./ $test_flag $action_flag -outputDir $outputs_dir >> "$webin_cli_log" 2>&1 || true; + ena-webin-cli -context genome -manifest $generated_manifest -userName "\$webin_id" -password "\$password" -centerName "\$center_name" -inputDir "./" $test_flag $action_flag -outputDir $outputs_dir >> "$webin_cli_log" 2>&1 || true; #end if ## ----------------------------------------------------------------------------- ## 6) Package outputs for Galaxy ## ----------------------------------------------------------------------------- +echo "Packaging outputs for Galaxy"; ## Tar up the Webin-CLI output directory so Galaxy can collect a single dataset. tar -cf $webin_cli_outputs $outputs_dir ; @@ -211,9 +207,14 @@ @@ -314,8 +315,8 @@ - - + + @@ -349,8 +350,8 @@ - - + + diff -r 7f669682f4ac -r 1090ae5e7b29 test-data/receipt_sample.txt --- a/test-data/receipt_sample.txt Mon Oct 06 12:13:07 2025 +0000 +++ b/test-data/receipt_sample.txt Fri Oct 24 08:03:03 2025 +0000 @@ -74,3 +74,4 @@ save updates in ./submission_files/experiments_updated.tsv save updates in ./submission_files/runs_updated.tsv action_option add +center_name Gent test diff -r 7f669682f4ac -r 1090ae5e7b29 test-data/receipt_sample_nophiX2.txt --- a/test-data/receipt_sample_nophiX2.txt Mon Oct 06 12:13:07 2025 +0000 +++ b/test-data/receipt_sample_nophiX2.txt Fri Oct 24 08:03:03 2025 +0000 @@ -52,3 +52,4 @@ save updates in ./submission_files/experiments_updated.tsv save updates in ./submission_files/runs_updated.tsv action_option add +center_name Gent test diff -r 7f669682f4ac -r 1090ae5e7b29 test-data/receipt_sample_phiX3.txt --- a/test-data/receipt_sample_phiX3.txt Mon Oct 06 12:13:07 2025 +0000 +++ b/test-data/receipt_sample_phiX3.txt Fri Oct 24 08:03:03 2025 +0000 @@ -74,3 +74,4 @@ save updates in ./submission_files/experiments_updated.tsv save updates in ./submission_files/runs_updated.tsv action_option add +center_name Gent test