Commit Graph
41525 Commits
Author SHA1 Message Date
mvdbeek 259bee364b Don't set tool if we don't have a tool dir 2025-05-12 10:54:55 +02:00
mvdbeek e73ec140ca Rebuild client schema 2025-05-12 10:54:54 +02:00
mvdbeek b007fc1341 Subclass generic for readable model title 2025-05-12 10:54:53 +02:00
mvdbeek 7c52e9fc79 Skip unprivileged tool resolution if we don't have appropriate permissions 2025-05-12 10:54:53 +02:00
mvdbeek 74a6f31f4f Implement roles to restrict custom tool permissions 2025-05-12 10:54:52 +02:00
mvdbeek 40e1be1632 Fix up tool source display for user tools 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 fde572dfc0 Update import path 2025-05-12 10:54:50 +02:00
mvdbeek 86e823304f Add missing `Literal` import 2025-05-12 10:54:49 +02:00
mvdbeek 1ea07735c2 Don't require validators for select parameters 2025-05-12 10:54:49 +02:00
mvdbeek 1c8090e7ad Fix local import in __resolvers_dict 2025-05-12 10:54:47 +02:00
mvdbeek c3e167bba4 Move dynamic tool models to tool_util 2025-05-12 10:54:47 +02:00
mvdbeek ddaf5d3021 Fix linting issues with new API routes 2025-05-12 10:54:46 +02:00
mvdbeek 22d111e0ac Add required name and version to embedded tool 2025-05-12 10:54:45 +02:00
mvdbeek 4ae1ea2010 Fix toolbox.get_tool return type annotation 2025-05-12 10:54:45 +02:00
mvdbeek ef409b27c2 Fix admin tool deactivation, dynamic tool endpoint mixup 2025-05-12 10:54:45 +02:00
mvdbeek 280208f777 Fix duplicate import 2025-05-12 10:54:44 +02:00
mvdbeek d9ea2fde61 Type fixes for workflow_run_dict 2025-05-12 10:54:44 +02:00
mvdbeek a52b78bf16 Add a few annotations to test out schema info rendering 2025-05-12 10:54:44 +02:00
mvdbeek e6b0783194 Enable (Javascript) requirements on frontend/backend 2025-05-12 10:54:42 +02:00
mvdbeek 791ab043ff Exclude defaults from unprivileged tool api response 2025-05-12 10:54:32 +02:00
mvdbeek 301bb62974 Use native type discriminator for UserToolSource model 2025-05-12 10:54:32 +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 5884fa9835 Enable single container key 2025-05-12 10:54:28 +02:00
mvdbeek bfaad0773c Enable unprivileged tool preview endpoint 2025-05-12 10:54:28 +02:00
mvdbeek 841e19d4ad Fix admin-only dynamic tools 2025-05-12 10:54:26 +02:00
mvdbeek 1a0de476b0 Fetch dynamic tool for job 2025-05-12 10:54:25 +02:00
mvdbeek d9dd54d5b3 Add monaco-based tool editor with json schema support 2025-05-12 10:54:25 +02:00
mvdbeek d6121d543e Enable access to dynamic tools via toolbox.get_tool 2025-05-12 10:54:24 +02:00
mvdbeek 746935b7fc Return unprivileged tool api return types 2025-05-12 10:54:23 +02:00
mvdbeek a6d6477122 Bypass global toolbox for unprivileged tools 2025-05-12 10:54:23 +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 4b1c336218 Add user_dynamic_tool_association migration 2025-05-12 10:54:21 +02:00
mvdbeek cbddc5196e Add unprivileged tools endpoint and models 2025-05-12 09:07:57 +02:00
mvdbeek bafb615c1f Add user_tool role types 2025-05-12 09:07:56 +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
mvdbeek 855d359f0c Add an experimental non-cheetah way of building command lines
The primary benefit is that the command section does not have access the
app or any dangling reference to the database connection or any other
secrets. There are two flavors here, one uses base_command and
arguments, and allows building up an (escaped) argv list, the other is a
shortcut for writing shell scripts and feels maybe a bit more like
writing a very simple cheetah section.

base_command:

```yml
name: base_command tool
class: GalaxyTool
version: 1.0.0
base_command: cat
arguments:
- $(inputs.input.path)
- '>'
- output.fastq
inputs:
- type: data
  name: input
outputs:
  output:
    type: data
    from_work_dir: output.fastq
    name: output
```

shell_command style:

```yml
name: shell_command tool
class: GalaxyTool
version: 1.0.0
shell_command: cat '$(inputs.input.path)' > output.fastq
inputs:
- type: data
  name: input
outputs:
  output:
    type: data
    from_work_dir: output.fastq
    name: output
```
2025-05-12 09:07:24 +02:00
mvdbeek eb38fd8ec9 Merge branch 'release_24.2' into dev 2025-05-12 09:05:28 +02:00
mvdbeek 65d265fd51 Merge branch 'release_24.1' into release_24.2 2025-05-12 09:02:07 +02:00
mvdbeek c5c0599a2d Merge branch 'release_24.0' into release_24.1 2025-05-12 09:01:27 +02:00
mvdbeek 4fb1388e50 Fix invocation failure dataset reference
Fixes https://github.com/galaxyproject/galaxy/issues/20049.
Many thanks for pointing me at the real issue @jdavcs!
2025-05-10 10:57:00 +02:00
John Chilton e3c6ea3a3e Tweak API tests for small test tool tweaks. 2025-05-09 17:39:41 -04:00
John Chilton 7304573e2d Add selenium test for creating a paired/unpaired list from a workflow input. 2025-05-09 17:39:41 -04: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 7141c402cd Bugfixes around specified multiple collection types for wf inputs. 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