Skip to content

Conversation

@guerler
Copy link
Contributor

@guerler guerler commented Dec 5, 2025

Add a dedicated Azure Flat file source using fsspec adlfs. This adds a new azureflat plugin for Azure Blob Storage accounts without hierarchical namespace. It uses fsspec’s AzureBlobFileSystem, matching the s3fs integration, and avoids the filesystem assumptions in the existing Azure plugin.

screencast

How to test the changes?

(Select all options that apply)

  • I've included appropriate automated tests.
  • This is a refactoring of components with existing test coverage.
  • Instructions for manual testing are as follows:
    1. Create an Azure Storage Account and Containers without Hierarchical Name Spacing
    2. Upload files to the Containers
    3. Update your file_sources_conf.yml

License

  • I agree to license these and all my past contributions to the core galaxy codebase under the MIT license.

@bgruening
Copy link
Member

@guerler could you please also add object store and file-source templates:

https://github.com/galaxyproject/galaxy/tree/dev/lib/galaxy/objectstore/templates/examples
https://github.com/galaxyproject/galaxy/tree/dev/lib/galaxy/files/templates/examples

That would be super helpful I think.

@guerler guerler force-pushed the azure_flat_fs branch 3 times, most recently from f763136 to 7c42573 Compare December 6, 2025 07:22
@guerler guerler marked this pull request as ready for review December 6, 2025 10:59
Copy link
Contributor

@davelopez davelopez left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The implementation looks solid to me! Thank you!

You may want to add adlfs to conditional dependencies too.

@dannon
Copy link
Member

dannon commented Dec 8, 2025

Are there mixed flat/hierarchical azure buckets?

edit for a bit more context:

In #21051 that was the problem, there was actually a mix where some keys were 'flat' so to speak (without directory markers), but others were properly hierarchical.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants