Skip to content
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

Decouple CID FileSystem from Local file system and other fixes #5866

Merged
merged 6 commits into from
Mar 11, 2025

Conversation

jorgee
Copy link
Contributor

@jorgee jorgee commented Mar 10, 2025

This PR includes:

  • Allow the definition a remote path for workflow.data.store.location (e.g. S3)
  • CidFileSystemProvider is decoupled from underlyng local file system.
  • Staging Foreign Files is using the target path stored in the CID to avoid unnecessary copies.

Main changes:

  • The old CidFileSystem.basePath is replaced by a CidStore instance. It is used by CidPath and CidFileSystemProvider to access metadata. The CidPath.storePath has been removed and filePath is storing the path used in the URI as well as the key to use in the CidStore

  • .meta and .data.json are private constants in DefaultCidStore property used to store the metadata.

  • The CidHistoryLog interface is provided to decouple the log operations from the underlying storage. The CidHistoryFile is the implementation used in the DefaultCidStore.

  • The CidHistoryFile location is configurable workflow.data.store.logLocation. Users can define a remote path but the lock capability is not supported by all providers. If the provider does not support it a warning message is printed.

Copy link
Member

@pditommaso pditommaso left a comment

Choose a reason for hiding this comment

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

Excellent. Just some minor comments

jorgee added 5 commits March 11, 2025 10:27
Signed-off-by: jorgee <jorge.ejarque@seqera.io>
Signed-off-by: jorgee <jorge.ejarque@seqera.io>
… configurable in workflow data options

Signed-off-by: jorgee <jorge.ejarque@seqera.io>
Signed-off-by: jorgee <jorge.ejarque@seqera.io>
Signed-off-by: jorgee <jorge.ejarque@seqera.io>
@jorgee jorgee force-pushed the cid-store-rev1-fix branch from a8af7eb to 0495bb1 Compare March 11, 2025 14:09
Copy link
Member

@pditommaso pditommaso left a comment

Choose a reason for hiding this comment

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

Nice, just made a minor comment

@jorgee
Copy link
Contributor Author

jorgee commented Mar 11, 2025

Included in last commit the modification to add the algorithm and mode in the checksum

@pditommaso
Copy link
Member

What about this?

Signed-off-by: jorgee <jorge.ejarque@seqera.io>
@jorgee
Copy link
Contributor Author

jorgee commented Mar 11, 2025

What about this?

Fixed in the last commit.

Copy link
Member

@pditommaso pditommaso left a comment

Choose a reason for hiding this comment

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

Cool

@pditommaso pditommaso merged commit 063a0ec into cid-store Mar 11, 2025
18 checks passed
@pditommaso pditommaso deleted the cid-store-rev1-fix branch March 11, 2025 16:45
jorgee added a commit that referenced this pull request Mar 12, 2025
Signed-off-by: jorgee <jorge.ejarque@seqera.io>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants