diff --git a/docs/commands.rst b/docs/commands.rst index 965b30914..0b0dcd154 100644 --- a/docs/commands.rst +++ b/docs/commands.rst @@ -68,4 +68,5 @@ documentation describes these commands. .. include:: commands/workflow_job_init.rst .. include:: commands/workflow_lint.rst .. include:: commands/workflow_test_init.rst +.. include:: commands/workflow_test_on_invocation.rst .. include:: commands/workflow_upload.rst \ No newline at end of file diff --git a/docs/commands/autoupdate.rst b/docs/commands/autoupdate.rst index b2dc9e159..9ed8e5ef4 100644 --- a/docs/commands/autoupdate.rst +++ b/docs/commands/autoupdate.rst @@ -1,6 +1,6 @@ ``autoupdate`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``autoupdate``. This help message can be generated with ``planemo autoupdate @@ -32,15 +32,15 @@ Auto-update tool requirements by checking against Conda and updating if newer ve tools and workflows. Defaults to a local Galaxy, but running Galaxy within a Docker container. - --update_test_data Update test-data directory with job outputs - (normally written to directory - --job_output_files if specified.) --paste_test_data_paths / --no_paste_test_data_paths By default Planemo will use or not use Galaxy's path paste option to load test data into a history based on the engine type it is targeting. This can override the logic to explicitly enable or disable path pasting. + --update_test_data Update test-data directory with job outputs + (normally written to directory + --job_output_files if specified.) --test_output PATH Output test report (HTML - for humans) defaults to tool_test_output.html. --test_output_text PATH Output test report (Basic text - for display diff --git a/docs/commands/ci_find_repos.rst b/docs/commands/ci_find_repos.rst index 46a57eed5..dd5cabdbb 100644 --- a/docs/commands/ci_find_repos.rst +++ b/docs/commands/ci_find_repos.rst @@ -1,6 +1,6 @@ ``ci_find_repos`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``ci_find_repos``. This help message can be generated with ``planemo ci_find_repos diff --git a/docs/commands/ci_find_tools.rst b/docs/commands/ci_find_tools.rst index f162b79e3..00248d022 100644 --- a/docs/commands/ci_find_tools.rst +++ b/docs/commands/ci_find_tools.rst @@ -1,6 +1,6 @@ ``ci_find_tools`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``ci_find_tools``. This help message can be generated with ``planemo ci_find_tools diff --git a/docs/commands/ci_setup.rst b/docs/commands/ci_setup.rst index f893a275b..90224a40d 100644 --- a/docs/commands/ci_setup.rst +++ b/docs/commands/ci_setup.rst @@ -1,6 +1,6 @@ ``ci_setup`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``ci_setup``. This help message can be generated with ``planemo ci_setup diff --git a/docs/commands/clone.rst b/docs/commands/clone.rst index 78dd15d4f..355b21574 100644 --- a/docs/commands/clone.rst +++ b/docs/commands/clone.rst @@ -1,6 +1,6 @@ ``clone`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``clone``. This help message can be generated with ``planemo clone diff --git a/docs/commands/conda_build.rst b/docs/commands/conda_build.rst index 3f9ecbb88..e8ba65359 100644 --- a/docs/commands/conda_build.rst +++ b/docs/commands/conda_build.rst @@ -1,6 +1,6 @@ ``conda_build`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``conda_build``. This help message can be generated with ``planemo conda_build diff --git a/docs/commands/conda_env.rst b/docs/commands/conda_env.rst index 477847327..88b1929fe 100644 --- a/docs/commands/conda_env.rst +++ b/docs/commands/conda_env.rst @@ -1,6 +1,6 @@ ``conda_env`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``conda_env``. This help message can be generated with ``planemo conda_env diff --git a/docs/commands/conda_init.rst b/docs/commands/conda_init.rst index f1056362e..af4be0862 100644 --- a/docs/commands/conda_init.rst +++ b/docs/commands/conda_init.rst @@ -1,6 +1,6 @@ ``conda_init`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``conda_init``. This help message can be generated with ``planemo conda_init diff --git a/docs/commands/conda_install.rst b/docs/commands/conda_install.rst index 4af78024f..220132445 100644 --- a/docs/commands/conda_install.rst +++ b/docs/commands/conda_install.rst @@ -1,6 +1,6 @@ ``conda_install`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``conda_install``. This help message can be generated with ``planemo conda_install diff --git a/docs/commands/conda_search.rst b/docs/commands/conda_search.rst index 05047fa14..174ba0f56 100644 --- a/docs/commands/conda_search.rst +++ b/docs/commands/conda_search.rst @@ -1,6 +1,6 @@ ``conda_search`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``conda_search``. This help message can be generated with ``planemo conda_search diff --git a/docs/commands/config_init.rst b/docs/commands/config_init.rst index 561c8672e..a358b22ef 100644 --- a/docs/commands/config_init.rst +++ b/docs/commands/config_init.rst @@ -1,6 +1,6 @@ ``config_init`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``config_init``. This help message can be generated with ``planemo config_init diff --git a/docs/commands/container_register.rst b/docs/commands/container_register.rst index 44d913df0..9a0f06582 100644 --- a/docs/commands/container_register.rst +++ b/docs/commands/container_register.rst @@ -1,6 +1,6 @@ ``container_register`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``container_register``. This help message can be generated with ``planemo container_register diff --git a/docs/commands/create_alias.rst b/docs/commands/create_alias.rst index e96632f43..8dbe8a0f4 100644 --- a/docs/commands/create_alias.rst +++ b/docs/commands/create_alias.rst @@ -1,6 +1,6 @@ ``create_alias`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``create_alias``. This help message can be generated with ``planemo create_alias diff --git a/docs/commands/database_create.rst b/docs/commands/database_create.rst index 6563075ea..30bdb6c19 100644 --- a/docs/commands/database_create.rst +++ b/docs/commands/database_create.rst @@ -1,6 +1,6 @@ ``database_create`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``database_create``. This help message can be generated with ``planemo database_create diff --git a/docs/commands/database_delete.rst b/docs/commands/database_delete.rst index 68dba6ff4..3bbc8edde 100644 --- a/docs/commands/database_delete.rst +++ b/docs/commands/database_delete.rst @@ -1,6 +1,6 @@ ``database_delete`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``database_delete``. This help message can be generated with ``planemo database_delete diff --git a/docs/commands/database_list.rst b/docs/commands/database_list.rst index c5b748650..0627d3598 100644 --- a/docs/commands/database_list.rst +++ b/docs/commands/database_list.rst @@ -1,6 +1,6 @@ ``database_list`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``database_list``. This help message can be generated with ``planemo database_list diff --git a/docs/commands/delete_alias.rst b/docs/commands/delete_alias.rst index a0678abff..875e6018f 100644 --- a/docs/commands/delete_alias.rst +++ b/docs/commands/delete_alias.rst @@ -1,6 +1,6 @@ ``delete_alias`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``delete_alias``. This help message can be generated with ``planemo delete_alias diff --git a/docs/commands/docker_build.rst b/docs/commands/docker_build.rst index ee4ccf4e2..2bd91b768 100644 --- a/docs/commands/docker_build.rst +++ b/docs/commands/docker_build.rst @@ -1,6 +1,6 @@ ``docker_build`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``docker_build``. This help message can be generated with ``planemo docker_build diff --git a/docs/commands/docker_shell.rst b/docs/commands/docker_shell.rst index cd8f1cfc7..00c6cdb7a 100644 --- a/docs/commands/docker_shell.rst +++ b/docs/commands/docker_shell.rst @@ -1,6 +1,6 @@ ``docker_shell`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``docker_shell``. This help message can be generated with ``planemo docker_shell diff --git a/docs/commands/dockstore_init.rst b/docs/commands/dockstore_init.rst index 50f4bc653..a4bac040b 100644 --- a/docs/commands/dockstore_init.rst +++ b/docs/commands/dockstore_init.rst @@ -1,6 +1,6 @@ ``dockstore_init`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``dockstore_init``. This help message can be generated with ``planemo dockstore_init diff --git a/docs/commands/docs.rst b/docs/commands/docs.rst index 4a09982a9..4e2878342 100644 --- a/docs/commands/docs.rst +++ b/docs/commands/docs.rst @@ -1,6 +1,6 @@ ``docs`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``docs``. This help message can be generated with ``planemo docs diff --git a/docs/commands/lint.rst b/docs/commands/lint.rst index 4db5093e4..f07737a34 100644 --- a/docs/commands/lint.rst +++ b/docs/commands/lint.rst @@ -1,6 +1,6 @@ ``lint`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``lint``. This help message can be generated with ``planemo lint diff --git a/docs/commands/list_alias.rst b/docs/commands/list_alias.rst index 042a745ae..c16f533a0 100644 --- a/docs/commands/list_alias.rst +++ b/docs/commands/list_alias.rst @@ -1,6 +1,6 @@ ``list_alias`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``list_alias``. This help message can be generated with ``planemo list_alias diff --git a/docs/commands/list_invocations.rst b/docs/commands/list_invocations.rst index 34ac5e199..f4e268aac 100644 --- a/docs/commands/list_invocations.rst +++ b/docs/commands/list_invocations.rst @@ -1,6 +1,6 @@ ``list_invocations`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``list_invocations``. This help message can be generated with ``planemo list_invocations diff --git a/docs/commands/list_repos.rst b/docs/commands/list_repos.rst index 3d536ce25..4c6d06b11 100644 --- a/docs/commands/list_repos.rst +++ b/docs/commands/list_repos.rst @@ -1,6 +1,6 @@ ``list_repos`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``list_repos``. This help message can be generated with ``planemo list_repos diff --git a/docs/commands/merge_test_reports.rst b/docs/commands/merge_test_reports.rst index c506ed2d1..e1896189d 100644 --- a/docs/commands/merge_test_reports.rst +++ b/docs/commands/merge_test_reports.rst @@ -1,6 +1,6 @@ ``merge_test_reports`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``merge_test_reports``. This help message can be generated with ``planemo merge_test_reports diff --git a/docs/commands/mull.rst b/docs/commands/mull.rst index d103f483f..b21f852e3 100644 --- a/docs/commands/mull.rst +++ b/docs/commands/mull.rst @@ -1,6 +1,6 @@ ``mull`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``mull``. This help message can be generated with ``planemo mull diff --git a/docs/commands/mulled_init.rst b/docs/commands/mulled_init.rst index d1b7e1bc7..479be735e 100644 --- a/docs/commands/mulled_init.rst +++ b/docs/commands/mulled_init.rst @@ -1,6 +1,6 @@ ``mulled_init`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``mulled_init``. This help message can be generated with ``planemo mulled_init diff --git a/docs/commands/normalize.rst b/docs/commands/normalize.rst index 7746510ee..c677011f4 100644 --- a/docs/commands/normalize.rst +++ b/docs/commands/normalize.rst @@ -1,6 +1,6 @@ ``normalize`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``normalize``. This help message can be generated with ``planemo normalize diff --git a/docs/commands/open.rst b/docs/commands/open.rst index 510678b68..0c6b30d3d 100644 --- a/docs/commands/open.rst +++ b/docs/commands/open.rst @@ -1,6 +1,6 @@ ``open`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``open``. This help message can be generated with ``planemo open diff --git a/docs/commands/profile_create.rst b/docs/commands/profile_create.rst index feb236bcd..83e5a223b 100644 --- a/docs/commands/profile_create.rst +++ b/docs/commands/profile_create.rst @@ -1,6 +1,6 @@ ``profile_create`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``profile_create``. This help message can be generated with ``planemo profile_create diff --git a/docs/commands/profile_delete.rst b/docs/commands/profile_delete.rst index 1b9baef08..bc778e4a3 100644 --- a/docs/commands/profile_delete.rst +++ b/docs/commands/profile_delete.rst @@ -1,6 +1,6 @@ ``profile_delete`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``profile_delete``. This help message can be generated with ``planemo profile_delete diff --git a/docs/commands/profile_list.rst b/docs/commands/profile_list.rst index 55238de69..7ed52b73e 100644 --- a/docs/commands/profile_list.rst +++ b/docs/commands/profile_list.rst @@ -1,6 +1,6 @@ ``profile_list`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``profile_list``. This help message can be generated with ``planemo profile_list diff --git a/docs/commands/project_init.rst b/docs/commands/project_init.rst index 35cb53d40..1c67f72c0 100644 --- a/docs/commands/project_init.rst +++ b/docs/commands/project_init.rst @@ -1,6 +1,6 @@ ``project_init`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``project_init``. This help message can be generated with ``planemo project_init diff --git a/docs/commands/pull_request.rst b/docs/commands/pull_request.rst index c220216c8..b4eadc2c4 100644 --- a/docs/commands/pull_request.rst +++ b/docs/commands/pull_request.rst @@ -1,6 +1,6 @@ ``pull_request`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``pull_request``. This help message can be generated with ``planemo pull_request diff --git a/docs/commands/rerun.rst b/docs/commands/rerun.rst index c0bc4c54d..46035786f 100644 --- a/docs/commands/rerun.rst +++ b/docs/commands/rerun.rst @@ -1,6 +1,6 @@ ``rerun`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``rerun``. This help message can be generated with ``planemo rerun diff --git a/docs/commands/run.rst b/docs/commands/run.rst index 3e4b94545..7e77725ad 100644 --- a/docs/commands/run.rst +++ b/docs/commands/run.rst @@ -1,6 +1,6 @@ ``run`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``run``. This help message can be generated with ``planemo run @@ -212,15 +212,15 @@ Planemo command for running tools and jobs. created. --no_wait After invoking a job or workflow, do not wait for completion. - --update_test_data Update test-data directory with job outputs - (normally written to directory - --job_output_files if specified.) --paste_test_data_paths / --no_paste_test_data_paths By default Planemo will use or not use Galaxy's path paste option to load test data into a history based on the engine type it is targeting. This can override the logic to explicitly enable or disable path pasting. + --update_test_data Update test-data directory with job outputs + (normally written to directory + --job_output_files if specified.) --test_output PATH Output test report (HTML - for humans) defaults to tool_test_output.html. --test_output_text PATH Output test report (Basic text - for display diff --git a/docs/commands/serve.rst b/docs/commands/serve.rst index 6adbac4fe..7f781ad3d 100644 --- a/docs/commands/serve.rst +++ b/docs/commands/serve.rst @@ -1,6 +1,6 @@ ``serve`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``serve``. This help message can be generated with ``planemo serve diff --git a/docs/commands/share_test.rst b/docs/commands/share_test.rst index 7aa0b0644..052aaedb3 100644 --- a/docs/commands/share_test.rst +++ b/docs/commands/share_test.rst @@ -1,6 +1,6 @@ ``share_test`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``share_test``. This help message can be generated with ``planemo share_test diff --git a/docs/commands/shed_build.rst b/docs/commands/shed_build.rst index 7032252ed..785e2fa80 100644 --- a/docs/commands/shed_build.rst +++ b/docs/commands/shed_build.rst @@ -1,6 +1,6 @@ ``shed_build`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``shed_build``. This help message can be generated with ``planemo shed_build diff --git a/docs/commands/shed_create.rst b/docs/commands/shed_create.rst index 6c6c12eac..6049804e7 100644 --- a/docs/commands/shed_create.rst +++ b/docs/commands/shed_create.rst @@ -1,6 +1,6 @@ ``shed_create`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``shed_create``. This help message can be generated with ``planemo shed_create diff --git a/docs/commands/shed_diff.rst b/docs/commands/shed_diff.rst index 0e9390849..688b6f18f 100644 --- a/docs/commands/shed_diff.rst +++ b/docs/commands/shed_diff.rst @@ -1,6 +1,6 @@ ``shed_diff`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``shed_diff``. This help message can be generated with ``planemo shed_diff diff --git a/docs/commands/shed_init.rst b/docs/commands/shed_init.rst index 3ee7f01bc..48fc2f759 100644 --- a/docs/commands/shed_init.rst +++ b/docs/commands/shed_init.rst @@ -1,6 +1,6 @@ ``shed_init`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``shed_init``. This help message can be generated with ``planemo shed_init diff --git a/docs/commands/shed_lint.rst b/docs/commands/shed_lint.rst index 245b30ca1..dd6604c26 100644 --- a/docs/commands/shed_lint.rst +++ b/docs/commands/shed_lint.rst @@ -1,6 +1,6 @@ ``shed_lint`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``shed_lint``. This help message can be generated with ``planemo shed_lint diff --git a/docs/commands/shed_serve.rst b/docs/commands/shed_serve.rst index 155037c5f..155a48469 100644 --- a/docs/commands/shed_serve.rst +++ b/docs/commands/shed_serve.rst @@ -1,6 +1,6 @@ ``shed_serve`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``shed_serve``. This help message can be generated with ``planemo shed_serve diff --git a/docs/commands/shed_test.rst b/docs/commands/shed_test.rst index 12d5d26b3..d401d8179 100644 --- a/docs/commands/shed_test.rst +++ b/docs/commands/shed_test.rst @@ -1,6 +1,6 @@ ``shed_test`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``shed_test``. This help message can be generated with ``planemo shed_test @@ -168,15 +168,15 @@ install these artifacts, and run the tool tests for these commands. one user and this user is automatically logged it. Use --no_galaxy_single_user to prevent Galaxy from running this way. - --update_test_data Update test-data directory with job outputs - (normally written to directory - --job_output_files if specified.) --paste_test_data_paths / --no_paste_test_data_paths By default Planemo will use or not use Galaxy's path paste option to load test data into a history based on the engine type it is targeting. This can override the logic to explicitly enable or disable path pasting. + --update_test_data Update test-data directory with job outputs + (normally written to directory + --job_output_files if specified.) --test_output PATH Output test report (HTML - for humans) defaults to tool_test_output.html. --test_output_text PATH Output test report (Basic text - for display diff --git a/docs/commands/shed_update.rst b/docs/commands/shed_update.rst index b77535bb6..6da2b3ec4 100644 --- a/docs/commands/shed_update.rst +++ b/docs/commands/shed_update.rst @@ -1,6 +1,6 @@ ``shed_update`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``shed_update``. This help message can be generated with ``planemo shed_update diff --git a/docs/commands/shed_upload.rst b/docs/commands/shed_upload.rst index 65bb0e458..1e4752331 100644 --- a/docs/commands/shed_upload.rst +++ b/docs/commands/shed_upload.rst @@ -1,6 +1,6 @@ ``shed_upload`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``shed_upload``. This help message can be generated with ``planemo shed_upload diff --git a/docs/commands/syntax.rst b/docs/commands/syntax.rst index 898e58c37..3296256d2 100644 --- a/docs/commands/syntax.rst +++ b/docs/commands/syntax.rst @@ -1,6 +1,6 @@ ``syntax`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``syntax``. This help message can be generated with ``planemo syntax diff --git a/docs/commands/test.rst b/docs/commands/test.rst index 71ff8ae44..024a2843d 100644 --- a/docs/commands/test.rst +++ b/docs/commands/test.rst @@ -1,6 +1,6 @@ ``test`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``test``. This help message can be generated with ``planemo test @@ -175,15 +175,15 @@ please careful and do not try this against production Galaxy instances. one user and this user is automatically logged it. Use --no_galaxy_single_user to prevent Galaxy from running this way. - --update_test_data Update test-data directory with job outputs - (normally written to directory - --job_output_files if specified.) --paste_test_data_paths / --no_paste_test_data_paths By default Planemo will use or not use Galaxy's path paste option to load test data into a history based on the engine type it is targeting. This can override the logic to explicitly enable or disable path pasting. + --update_test_data Update test-data directory with job outputs + (normally written to directory + --job_output_files if specified.) --test_output PATH Output test report (HTML - for humans) defaults to tool_test_output.html. --test_output_text PATH Output test report (Basic text - for display diff --git a/docs/commands/test_reports.rst b/docs/commands/test_reports.rst index b038c4eec..7731fda60 100644 --- a/docs/commands/test_reports.rst +++ b/docs/commands/test_reports.rst @@ -1,6 +1,6 @@ ``test_reports`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``test_reports``. This help message can be generated with ``planemo test_reports diff --git a/docs/commands/tool_init.rst b/docs/commands/tool_init.rst index fe5f3ea61..58b7343e4 100644 --- a/docs/commands/tool_init.rst +++ b/docs/commands/tool_init.rst @@ -1,6 +1,6 @@ ``tool_init`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``tool_init``. This help message can be generated with ``planemo tool_init diff --git a/docs/commands/training_fill_data_library.rst b/docs/commands/training_fill_data_library.rst index 998ae7697..fbbf30f5e 100644 --- a/docs/commands/training_fill_data_library.rst +++ b/docs/commands/training_fill_data_library.rst @@ -1,6 +1,6 @@ ``training_fill_data_library`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``training_fill_data_library``. This help message can be generated with ``planemo training_fill_data_library diff --git a/docs/commands/training_generate_from_wf.rst b/docs/commands/training_generate_from_wf.rst index 246f6fef2..671f3024c 100644 --- a/docs/commands/training_generate_from_wf.rst +++ b/docs/commands/training_generate_from_wf.rst @@ -1,6 +1,6 @@ ``training_generate_from_wf`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``training_generate_from_wf``. This help message can be generated with ``planemo training_generate_from_wf diff --git a/docs/commands/training_init.rst b/docs/commands/training_init.rst index 181d71460..0eb952963 100644 --- a/docs/commands/training_init.rst +++ b/docs/commands/training_init.rst @@ -1,6 +1,6 @@ ``training_init`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``training_init``. This help message can be generated with ``planemo training_init diff --git a/docs/commands/upload_data.rst b/docs/commands/upload_data.rst index 20662a01e..b0cd08834 100644 --- a/docs/commands/upload_data.rst +++ b/docs/commands/upload_data.rst @@ -1,6 +1,6 @@ ``upload_data`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``upload_data``. This help message can be generated with ``planemo upload_data diff --git a/docs/commands/workflow_convert.rst b/docs/commands/workflow_convert.rst index 8b6af43d0..e9987c476 100644 --- a/docs/commands/workflow_convert.rst +++ b/docs/commands/workflow_convert.rst @@ -1,6 +1,6 @@ ``workflow_convert`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``workflow_convert``. This help message can be generated with ``planemo workflow_convert diff --git a/docs/commands/workflow_edit.rst b/docs/commands/workflow_edit.rst index 1afb0efc8..ec728155f 100644 --- a/docs/commands/workflow_edit.rst +++ b/docs/commands/workflow_edit.rst @@ -1,6 +1,6 @@ ``workflow_edit`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``workflow_edit``. This help message can be generated with ``planemo workflow_edit diff --git a/docs/commands/workflow_job_init.rst b/docs/commands/workflow_job_init.rst index 2002382f0..fce1f9e35 100644 --- a/docs/commands/workflow_job_init.rst +++ b/docs/commands/workflow_job_init.rst @@ -1,6 +1,6 @@ ``workflow_job_init`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``workflow_job_init``. This help message can be generated with ``planemo workflow_job_init diff --git a/docs/commands/workflow_lint.rst b/docs/commands/workflow_lint.rst index 604246a23..d75069457 100644 --- a/docs/commands/workflow_lint.rst +++ b/docs/commands/workflow_lint.rst @@ -1,6 +1,6 @@ ``workflow_lint`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``workflow_lint``. This help message can be generated with ``planemo workflow_lint diff --git a/docs/commands/workflow_test_init.rst b/docs/commands/workflow_test_init.rst index 49f14a217..fce28a527 100644 --- a/docs/commands/workflow_test_init.rst +++ b/docs/commands/workflow_test_init.rst @@ -1,6 +1,6 @@ ``workflow_test_init`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``workflow_test_init``. This help message can be generated with ``planemo workflow_test_init diff --git a/docs/commands/workflow_test_on_invocation.rst b/docs/commands/workflow_test_on_invocation.rst new file mode 100644 index 000000000..018bfa07e --- /dev/null +++ b/docs/commands/workflow_test_on_invocation.rst @@ -0,0 +1,47 @@ + +``workflow_test_on_invocation`` command +======================================== + +This section is auto-generated from the help text for the planemo command +``workflow_test_on_invocation``. This help message can be generated with ``planemo workflow_test_on_invocation +--help``. + +**Usage**:: + + planemo workflow_test_on_invocation [OPTIONS] TEST DEFINITION + +**Help** + +Run defined tests against existing workflow invocation. +**Options**:: + + + --galaxy_url TEXT Remote Galaxy URL to use with external Galaxy + engine. [required] + --galaxy_user_key TEXT User key to use with external Galaxy engine. + [required] + --test_index INTEGER Select which test to run. Counting starts at 1 + --update_test_data Update test-data directory with job outputs + (normally written to directory + --job_output_files if specified.) + --test_output PATH Output test report (HTML - for humans) + defaults to tool_test_output.html. + --test_output_text PATH Output test report (Basic text - for display + in CI) + --test_output_markdown PATH Output test report (Markdown style - for + humans & computers) + --test_output_xunit PATH Output test report (xunit style - for CI + systems + --test_output_junit PATH Output test report (jUnit style - for CI + systems + --test_output_allure DIRECTORY Output test allure2 framework resutls + --test_output_json PATH Output test report (planemo json) defaults to + tool_test_output.json. + --job_output_files DIRECTORY Write job outputs to specified directory. + --summary [none|minimal|compact] + Summary style printed to planemo's standard + output (see output reports for more complete + summary). Set to 'none' to disable completely. + --test_timeout INTEGER Maximum runtime of a single test in seconds. + --help Show this message and exit. + diff --git a/docs/commands/workflow_upload.rst b/docs/commands/workflow_upload.rst index d22b9fc98..9a9898e98 100644 --- a/docs/commands/workflow_upload.rst +++ b/docs/commands/workflow_upload.rst @@ -1,6 +1,6 @@ ``workflow_upload`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``workflow_upload``. This help message can be generated with ``planemo workflow_upload diff --git a/docs/planemo.commands.rst b/docs/planemo.commands.rst index d7237648c..c29dcacfb 100644 --- a/docs/planemo.commands.rst +++ b/docs/planemo.commands.rst @@ -508,6 +508,14 @@ planemo.commands.cmd\_workflow\_test\_init module :undoc-members: :show-inheritance: +planemo.commands.cmd\_workflow\_test\_on\_invocation module +----------------------------------------------------------- + +.. automodule:: planemo.commands.cmd_workflow_test_on_invocation + :members: + :undoc-members: + :show-inheritance: + planemo.commands.cmd\_workflow\_upload module --------------------------------------------- diff --git a/planemo/commands/cmd_workflow_test_on_invocation.py b/planemo/commands/cmd_workflow_test_on_invocation.py new file mode 100644 index 000000000..66c80dced --- /dev/null +++ b/planemo/commands/cmd_workflow_test_on_invocation.py @@ -0,0 +1,42 @@ +"""Module describing the planemo ``workflow_test_check`` command.""" +import click + +from planemo import options +from planemo.cli import command_function +from planemo.engine.factory import engine_context +from planemo.galaxy.activity import invocation_to_run_response +from planemo.galaxy.test.actions import handle_reports_and_summary +from planemo.runnable import definition_to_test_case +from planemo.runnable_resolve import for_runnable_identifier +from planemo.test.results import StructuredData + + +@click.command("workflow_test_on_invocation") +@options.optional_tools_arg(multiple=False, allow_uris=False, metavar="TEST DEFINITION") +@options.required_workflow_arg() +@options.galaxy_url_option(required=True) +@options.galaxy_user_key_option(required=True) +@options.test_index_option() +@options.test_output_options() +@command_function +def cli(ctx, path, workflow_identifier, test_index, **kwds): + """Run defined tests against existing workflow invocation.""" + with engine_context(ctx, engine="external_galaxy", **kwds) as engine, engine.ensure_runnables_served([]) as config: + user_gi = config.user_gi + invocation = user_gi.invocations.show_invocation(workflow_identifier) + runnable = for_runnable_identifier(ctx, invocation["workflow_id"], kwds) + test_cases = definition_to_test_case(path, runnable) + assert ( + len(test_cases) >= test_index + ), f"Selected test case {test_index}, but only found {len(test_cases)} test case(s)." + test_case = test_cases[test_index - 1] + run_response = invocation_to_run_response(ctx, user_gi=config.user_gi, runnable=runnable, invocation=invocation) + structured_data = test_case.structured_test_data(run_response) + test_data = { + "version": "0.1", + "tests": [structured_data], + } + structured_results = StructuredData(data=test_data) + structured_results.calculate_summary_data() + return_value = handle_reports_and_summary(ctx, structured_results.structured_data, kwds=kwds) + ctx.exit(return_value) diff --git a/planemo/galaxy/activity.py b/planemo/galaxy/activity.py index 3547fdcf1..d1746da86 100644 --- a/planemo/galaxy/activity.py +++ b/planemo/galaxy/activity.py @@ -152,6 +152,7 @@ def _execute( # noqa C901 ) -> "GalaxyBaseRunResponse": user_gi = config.user_gi admin_gi = config.gi + run_response = None start_datetime = datetime.now() try: @@ -205,46 +206,31 @@ def _execute( # noqa C901 allow_tool_state_corrections=True, inputs_by="name", ) - invocation_id = invocation["id"] - - ctx.vlog("Waiting for invocation [%s]" % invocation_id) - polling_backoff = kwds.get("polling_backoff", 0) - no_wait = kwds.get("no_wait", False) - - final_invocation_state, job_state, error_message = wait_for_invocation_and_jobs( + run_response = invocation_to_run_response( ctx, - invocation_id=invocation_id, - history_id=history_id, - user_gi=user_gi, - no_wait=no_wait, - polling_backoff=polling_backoff, + config.user_gi, + runnable, + invocation, + polling_backoff=kwds.get("polling_backoff", 0), + no_wait=kwds.get("no_wait", False), + start_datetime=start_datetime, + log=log_contents_str(config), ) - if final_invocation_state not in ("ok", "skipped"): - msg = f"Failed to run workflow [{workflow_id}], at least one job is in [{final_invocation_state}] state." - ctx.vlog(msg) - summarize_history(ctx, user_gi, history_id) - - response_kwds = { - "workflow_id": workflow_id, - "invocation_id": invocation_id, - "history_state": job_state if not no_wait else None, - "invocation_state": final_invocation_state, - "error_message": error_message, - } else: raise NotImplementedError() - run_response = response_class( - ctx=ctx, - runnable=runnable, - user_gi=user_gi, - history_id=history_id, - log=log_contents_str(config), - start_datetime=start_datetime, - end_datetime=datetime.now(), - **response_kwds, - ) + if not run_response: + run_response = response_class( + ctx=ctx, + runnable=runnable, + user_gi=user_gi, + history_id=history_id, + log=log_contents_str(config), + start_datetime=start_datetime, + end_datetime=datetime.now(), + **response_kwds, + ) if kwds.get("download_outputs"): output_directory = kwds.get("output_directory", None) ctx.vlog("collecting outputs from run...") @@ -253,6 +239,45 @@ def _execute( # noqa C901 return run_response +def invocation_to_run_response( + ctx, user_gi, runnable, invocation, polling_backoff=0, no_wait=False, start_datetime=None, log=None +): + start_datetime = start_datetime or datetime.now() + invocation_id = invocation["id"] + history_id = invocation["history_id"] + workflow_id = invocation["workflow_id"] + + ctx.vlog("Waiting for invocation [%s]" % invocation_id) + + final_invocation_state, job_state, error_message = wait_for_invocation_and_jobs( + ctx, + invocation_id=invocation_id, + history_id=history_id, + user_gi=user_gi, + no_wait=no_wait, + polling_backoff=polling_backoff, + ) + if final_invocation_state not in ("ok", "skipped"): + msg = f"Failed to run workflow [{workflow_id}], at least one job is in [{final_invocation_state}] state." + ctx.vlog(msg) + summarize_history(ctx, user_gi, history_id) + + return GalaxyWorkflowRunResponse( + ctx, + runnable=runnable, + user_gi=user_gi, + history_id=history_id, + workflow_id=workflow_id, + invocation_id=invocation_id, + history_state=job_state if not no_wait else None, + invocation_state=final_invocation_state, + error_message=error_message, + log=log, + start_datetime=start_datetime, + end_datetime=datetime.now(), + ) + + def stage_in( ctx: "PlanemoCliContext", runnable: Runnable, config: "BaseGalaxyConfig", job_path: str, **kwds ) -> Tuple[Dict[str, Any], str]: diff --git a/planemo/options.py b/planemo/options.py index 180e18615..e387ddfe4 100644 --- a/planemo/options.py +++ b/planemo/options.py @@ -467,12 +467,13 @@ def docker_extra_volume_option(): ) -def galaxy_url_option(): +def galaxy_url_option(required: bool = False): return planemo_option( "--galaxy_url", use_global_config=True, extra_global_config_vars=["galaxy_url"], use_env_var=True, + required=required, type=str, help="Remote Galaxy URL to use with external Galaxy engine.", ) @@ -489,12 +490,13 @@ def galaxy_admin_key_option(): ) -def galaxy_user_key_option(): +def galaxy_user_key_option(required: bool = False): return planemo_option( "--galaxy_user_key", use_global_config=True, extra_global_config_vars=["admin_key"], use_env_var=True, + required=required, type=str, help="User key to use with external Galaxy engine.", ) @@ -824,7 +826,7 @@ def convert(self, value, param, ctx): return super().convert(value, param, ctx) -def optional_tools_arg(multiple=False, allow_uris=False): +def optional_tools_arg(multiple=False, allow_uris=False, metavar="TOOL_PATH"): """Decorate click method as optionally taking in the path to a tool or directory of tools. If no such argument is given the current working directory will be treated as a directory of tools. @@ -844,7 +846,7 @@ def optional_tools_arg(multiple=False, allow_uris=False): nargs = -1 if multiple else 1 return click.argument( name, - metavar="TOOL_PATH", + metavar=metavar, type=arg_type, nargs=nargs, callback=_optional_tools_default, @@ -1599,7 +1601,11 @@ def profile_database_options(): ) -def test_options(): +def test_index_option(): + return planemo_option("--test_index", default=1, type=int, help="Select which test to check. Counting starts at 1") + + +def test_output_options(): return _compose( planemo_option( "--update_test_data", @@ -1607,7 +1613,6 @@ def test_options(): help="Update test-data directory with job outputs (normally" " written to directory --job_output_files if specified.)", ), - paste_test_data_paths_option(), test_report_options(), planemo_option( "--test_output_json", @@ -1641,6 +1646,13 @@ def test_options(): ) +def test_options(): + return _compose( + paste_test_data_paths_option(), + test_output_options(), + ) + + def _compose(*functions): def compose2(f, g): return lambda x: f(g(x)) diff --git a/planemo/runnable.py b/planemo/runnable.py index 9e69d7bec..9ac8932da 100644 --- a/planemo/runnable.py +++ b/planemo/runnable.py @@ -265,6 +265,12 @@ def cases(runnable: Runnable) -> List["AbstractTestCase"]: cases.append(ExternalGalaxyToolTestCase(runnable, tool_id, tool_version, i, test_dict)) return cases + return definition_to_test_case(tests_path=tests_path, runnable=runnable) + + +def definition_to_test_case(tests_path: str, runnable: Runnable) -> List["AbstractTestCase"]: + with open(tests_path) as f: + tests_def = yaml.safe_load(f) tests_directory = os.path.abspath(os.path.dirname(tests_path)) def normalize_to_tests_path(path: str) -> str: @@ -274,13 +280,11 @@ def normalize_to_tests_path(path: str) -> str: absolute_path = path return os.path.normpath(absolute_path) - with open(tests_path) as f: - tests_def = yaml.safe_load(f) - if not isinstance(tests_def, list): message = TEST_FILE_NOT_LIST_MESSAGE % tests_path raise Exception(message) + cases: List["AbstractTestCase"] = [] for i, test_def in enumerate(tests_def): if "job" not in test_def: message = TEST_FIELD_MISSING_MESSAGE % (i + 1, tests_path, "job") @@ -305,7 +309,6 @@ def normalize_to_tests_path(path: str) -> str: doc=doc, ) cases.append(case) - return cases @@ -434,7 +437,7 @@ def _test_id(self) -> str: ]: return get_tool_source(self.runnable.path).parse_id() else: - return os.path.basename(self.runnable.path) + return os.path.basename(self.runnable.uri) class ExternalGalaxyToolTestCase(AbstractTestCase): diff --git a/scripts/commands_to_rst.py b/scripts/commands_to_rst.py index c0a9829b9..dd780c27b 100755 --- a/scripts/commands_to_rst.py +++ b/scripts/commands_to_rst.py @@ -25,7 +25,7 @@ COMMAND_TEMPLATE = Template( """ ``${command}`` command -====================================== +======================================== This section is auto-generated from the help text for the planemo command ``${command}``. This help message can be generated with ``planemo ${command} diff --git a/tests/test_cmds_with_workflow_id.py b/tests/test_cmds_with_workflow_id.py index fd8fced47..ea33812c6 100644 --- a/tests/test_cmds_with_workflow_id.py +++ b/tests/test_cmds_with_workflow_id.py @@ -78,3 +78,19 @@ def test_serve_workflow(self): with open(output_json_path) as f: output = json.load(f) assert "tests" in output + + test_index = 1 + invocation_id = output["tests"][test_index]["data"]["invocation_details"]["details"]["invocation_id"] + test_path = os.path.join(TEST_DATA_DIR, "wf11-remote.gxwf-test.yml") + workflow_test_on_invocation_command = [ + "workflow_test_on_invocation", + "--galaxy_url", + f"http://localhost:{self._port}", + "--galaxy_user_key", + api.DEFAULT_ADMIN_API_KEY, + "--test_index", + str(test_index), + test_path, + invocation_id, + ] + self._check_exit_code(workflow_test_on_invocation_command, exit_code=0)