Commit Graph
461 Commits
Author SHA1 Message Date
mvdbeek 74a6f31f4f Implement roles to restrict custom tool permissions 2025-05-12 10:54:52 +02:00
mvdbeek 9815e8204c Move dynamic_tool_models to tool_util_models 2025-05-12 10:54:50 +02:00
mvdbeek c3e167bba4 Move dynamic tool models to tool_util 2025-05-12 10:54:47 +02:00
mvdbeek 152bc2ffa5 Add runtime model to API
Like job_internal but replaces dataset and dataset collection with file
and array / object of files.
2025-05-12 10:54:30 +02:00
mvdbeek bfaad0773c Enable unprivileged tool preview endpoint 2025-05-12 10:54:28 +02:00
mvdbeek 1767ad21a9 Test tool run 2025-05-12 10:54:22 +02:00
mvdbeek a234ec565a Add separate unprivileged tools endpoint 2025-05-12 10:54:22 +02:00
mvdbeek 024d688e58 Minor fix to restore admin-style dynamic tools 2025-05-12 09:07:56 +02:00
mvdbeek 5228e32a14 Create UserToolSource pydantic model 2025-05-12 09:07:54 +02:00
John Chilton 6c9bc27d47 More test coverage for workflow running with collections. 2025-05-09 17:39:41 -04:00
John Chilton cf6a1a4f5f Typo/format fix. 2025-05-09 17:39:41 -04:00
John Chilton e6df994faa Fixes for using paired list creator from workflow form. 2025-05-09 17:39:41 -04:00
John Chilton be6de1273f Apply Rules on Collection Element Index. 2025-05-09 17:39:40 -04:00
John Chilton 0c78f3a8a9 Rule builder API test case for paired/unpaired datasets. 2025-05-09 17:39:40 -04:00
John Chilton 219796f049 Implement paired_or_unpaired collections, list wizards. 2025-05-09 17:39:38 -04:00
John Chilton 94ead7c8df WIP: embedded list of pairs workflow run selenium test case. 2025-05-09 16:38:18 -04:00
mvdbeek 1816eda90c Drop invalid hid entry 2025-04-22 14:18:49 +02:00
mvdbeek c03d179db0 Implement dataset collection support in workflow landing requests
and tweak request models to make them compatible with workflow test format
2025-04-22 14:18:47 +02:00
Marius van den Beek 916877ff12 Merge pull request #19969 from mvdbeek/hdca_update_pwermission_check
Fix ownership check in history contents update route
2025-04-11 10:10:41 +02:00
mvdbeek 6edab86870 Merge branch 'release_24.2' into dev 2025-04-10 18:54:17 +02:00
mvdbeek 5fa648aa92 Ensure we copy the cached jobs' extension
The cached job might be skipped and null, in which case we should not
override the `expression.json` extension, because in that case the
dataset would not be considered as a null.
2025-04-10 15:43:04 +02:00
mvdbeek fd3d3dbc5b Fix cache for skipped jobs 2025-04-10 12:20:24 +02:00
mvdbeek eab0c8a408 Add dataset collection specific update endpoint 2025-04-09 16:45:54 +02:00
mvdbeek eb1709fcbb Merge branch 'release_24.2' into dev 2025-03-08 11:20:03 +01:00
John Chilton 5ffd5abfc3 Improved simplicity and isolation in transiently failing test.
The test failure without any really useful context on the client is bad and indicating a problem - it is going to be some concurrency or database thing in the test environment or an issue with us hitting Github a bunch right in a row. Regardless - it isn't the job of this test case to uncover that I think - I think isolating the network and simplifying the test here will increase the test robustness and ensure it is testing what it is meant to test.
2025-02-26 13:35:21 -05:00
mvdbeek 6706e87a6a Use TestDataResolver in tool framework tests 2025-02-25 18:10:12 +01:00
mvdbeek 4c7ab9f898 Support directory uploads in workflow framework tests 2025-02-25 18:10:12 +01:00
Nicola Soranzo 7ce76af796 Format code with black 25.1.0 2025-02-16 18:07:51 +00:00
Nicola Soranzo 78234720c4 Replace deprecated `__package__ with __name__
`__package__` is deprecated since Python 3.13, see
https://docs.python.org/3/reference/datamodel.html#module.__package__

`importlib.resources.files()` can be passed a non-package module
since Python 3.12 (or importlib-resources 5.10.0, see
https://importlib-resources.readthedocs.io/en/latest/history.html#v5-10-0 ),
so we can use `__name__` instead of `__package__`.

Also, I noticed that in lib/galaxy/config/__init__.py we are passing
a directory to `importlib.resources.as_file()`, which is supported
only since Python 3.12 (or importlib-resources 5.9.0).

For the reasons above:
- Update conditional imports in `lib/galaxy/util/resources.py` to
  import from `importlib.resources` only for Python 3.12,
  otherwise from the importlib-resources package.
- Update importlib-resources requirement in galaxy-util package.
- Drop importlib-resources requirement from galaxy-web-apps as it's
  not imported directly from its code any more.
2024-12-16 15:16:41 +00:00
Nicola Soranzo bbed4a85f8 Merge branch 'release_24.2' into dev 2024-12-10 21:17:36 +00:00
John Chilton 79a073ed2c Initial selenium tests for workflow invocation export.
Test STS link generation of RO crates and native model store format.
2024-12-05 12:58:46 -05:00
John Chilton 4b3ee52b44 Merge branch 'release_24.2' into merge_24.2_into_dev 2024-12-03 12:39:48 -05:00
mvdbeek 70a74c2186 Fix and add test for required workflow parameters with a default value
The SimpleTextParameter change might have larger implications
(https://github.com/galaxyproject/galaxy/pull/13523), but it allows us
to detect if we need to use the provided default value.
2024-11-29 16:43:01 +01:00
mvdbeek 433766e953 Allow setting default value for required parameter 2024-11-29 16:42:59 +01:00
Nicola Soranzo 1b54c0bcd8 Calculate hash for new non-deferred datasets when finishing a job
This is configurable with two new options:
- `calculate_dataset_hash`: in which cases Galaxy should calculate
  a hash for a new dataset. Possible values: 'always', 'upload'
  (the default), 'never'.
- `hash_function`. Possible values: 'md5', 'sha1', 'sha256', 'sha512'

Hashes are calculated via a Celery task, so currently only if
the 'enable_celery_tasks' option is set to true.
2024-11-21 15:55:14 +00:00
Marius van den Beek 6463f86e6f Merge pull request #18966 from jdavcs/dev_private_roles2
Decouple user email from role name
2024-11-19 16:51:45 +01:00
Nicola Soranzo eb7d89d891 Merge pull request #19110 from nsoranzo/always_validate_hashes
Always validate hashes when provided
2024-11-07 19:25:23 +00:00
Marius van den Beek 360b72a82a Improve user_id description, set email where needed 2024-11-06 11:42:18 +01:00
mvdbeek 3a6fdf24fb Allow searching jobs in public histories for job cache 2024-11-06 11:42:18 +01:00
Nicola Soranzo f7c5769ca5 Always validate hashes when provided
Currently when uploading datasets with associated hashes, this were
only validated if `validate_hashes=True` was also passed in the
request.

This commit drops `validate_hashes` completely and always validates
hashes when they were provided.
2024-11-05 23:21:51 +00:00
John Davis 98044ad7dc Change how a populator gets a user's private role
Because we no longer can match role name to user email
2024-10-30 15:28:47 -04:00
Björn Grüning d11d8930a3 Merge pull request #19027 from jmchilton/parameter_model_enhancements
A variety of improvements around tool parameter modeling (second try)
2024-10-29 07:57:12 +01:00
Marius van den Beek 1ebd078043 Merge pull request #18985 from jmchilton/workflow_request
Allow recovering a normalized version of workflow request state from API
2024-10-28 13:17:08 -04:00
John Chilton 951ab47f47 More tool tests. 2024-10-22 07:49:37 -04:00
John Chilton d07081d869 tool input format test fixutre 2024-10-22 07:49:37 -04:00
John Chilton 639d3025b3 Merge pull request #18979 from mvdbeek/workflow_landing_improvements
Workflow landing improvements
2024-10-22 07:47:12 -04:00
mvdbeek 4f497a30f1 Separate private and public landing requests
Private requests must be claimed before use. Public / Anonymous requests
only depend on the public flag, so anoymous users can create private
landing requests and authenticated users can create public requests.

Tests should cover all of these scenarios.
2024-10-20 18:34:56 -04:00
John Chilton 7f7710d392 Implement recovering normalized workflow request from invocation. 2024-10-15 09:12:05 -04:00
John Chilton 2509234dc0 Add a test flag to force tests not to skip on required tools.
I will occasionally see tests that skip instead of failing because the tool required to run the test stopped loading - maybe a parsing error or a misconfiguration around sample data tables. I don't think this should be the default but we should make sure all our CI tests are running properly.
2024-10-14 09:40:22 -04:00
John Chilton 687f3661f1 Migrate various tool execute tests to more declarative style. 2024-10-14 09:40:22 -04:00