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

Add "third party copy" mode #1604

Open
wants to merge 8 commits into
base: main
Choose a base branch
from
Open

Conversation

bbockelm
Copy link
Collaborator

This adds initial support for so-called "third party copy" mode, where the client (the "third party") triggers a transfer from a Pelican data federation to an origin. This will eventually support large-scale bulk transfers but, for now, it simply rounds out the client.DoCopy method: one can copy from a pelican:// URL to a pelican:// URL.

Given the client churn in #1603 (and given #1603 similarly adds new client functionality, working in the same part of the code), this was built on top of that PR. We should merge this only after that has gone through.

bbockelm added 8 commits July 24, 2024 19:50
The cache plugin directory is controlled by environment variable.  If
the environment variable is set in the `pelican` environment, pass its
value along to xrootd.

Simplifies testing in environments where the plugin is not installed
as root.
The new `pelican object prestage` command (and the corresponding
public APIs) allow a user to trigger the prestaging of data to a
specific cache.

The prestage itself is not intelligent: it checks to see if a file
is already present and, if not, it triggers a full download.  Future
work may extend this on the Pelican-side so there's a control
interface exposed that triggers prestaging without data movement all
the way to the client.

Includes unit tests and some modest refactoring.  Given the current
LIGO origins don't have the collections URL set (and I wanted to
test it out), this also provides the ability to override the
collections URL on the CLI.
Fix unit test, make the copy implementation look more like prestaging
with a separate `NewCopyJob` method.
@bbockelm bbockelm added enhancement New feature or request client Issue affecting the OSDF client origin Issue relating to the origin component labels Sep 30, 2024
@bbockelm bbockelm requested a review from turetske September 30, 2024 13:45
@jhiemstrawisc jhiemstrawisc added this to the v7.12.0 milestone Oct 22, 2024
@jhiemstrawisc jhiemstrawisc removed this from the v7.12.0 milestone Dec 17, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
client Issue affecting the OSDF client enhancement New feature or request origin Issue relating to the origin component
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants