-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Add fsspec
base implementation for File Source plugins
#20698
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: dev
Are you sure you want to change the base?
Conversation
5333af2
to
ae3d450
Compare
I think the basic implementation is ready for review. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Implementation seems good to me. Since you're working on this component - I wanted to make the case that documentation would be really nice as you're implementing new components. In particular if you could create Pydantic models for the inputs supported by our framework - instead of passing kwds around so much. We could generate documentation for these plugins like we have for the user-defined variants (https://docs.galaxyproject.org/en/master/admin/data.html#file-source-types) and we could be more sure of what needs to be ported when we do have to migrate implementations.
I will happily work on those Pydantic models! |
For file source system integration with fsspec
- Introduced _is_templated method to check if property values are templated. - Updated get_prop method to evaluate templated properties using user context. - Enhanced ensure_required_dependency method to print dependency checks. - Added _initialize_listings_expiry method to manage listings expiry time. - Improved listing methods with pagination and glob pattern support.
Since there is not TempFileSystem in fsspec we need to manually box and unbox the paths to a temp folder `root_path` using a regular LocalFileSystem
This mostly to test the the base class without requiring configuration for any real fsspec compatible backend
ae3d450
to
6355ff4
Compare
This PR adds a base
FsspecFilesSource
class as an adapter to integrate any fsspec-compatible backend to the Galaxy FilesSources framework.TempFilesSource
toFsspecFilesSource
for testing purposes.MemoryFilesSource
to test the base integration without a real backend.TODO
xref #20415
How to test the changes?
License