-
Notifications
You must be signed in to change notification settings - Fork 109
(Safe) Implementation of the token-safe retry logic for gfal #12218
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
Conversation
Jenkins results:
|
Jenkins results:
|
Jenkins results:
|
Jenkins results:
|
Jenkins results:
|
Jenkins results:
|
Jenkins results:
|
Jenkins results:
|
Jenkins results:
|
Jenkins results:
|
Jenkins results:
|
Jenkins results:
|
Jenkins results:
|
Jenkins results:
|
Jenkins results:
|
Jenkins results:
|
Jenkins results:
|
Jenkins results:
|
Jenkins results:
|
Jenkins results:
|
Jenkins results:
|
Jenkins results:
|
Jenkins results:
|
Jenkins results:
|
171abae
to
eea7b19
Compare
Jenkins results:
|
Jenkins results:
|
Jenkins results:
|
Jenkins results:
|
Jenkins results:
|
Jenkins results:
|
Jenkins results:
|
Jenkins results:
|
Jenkins results:
|
Jenkins results:
|
Jenkins results:
|
Jenkins results:
|
Jenkins results:
|
Jenkins results:
|
…eateCopyCommand and createRemoveCommand
@amaltaro this is ready for the final review |
Jenkins results:
|
test this please |
Jenkins results:
|
test this please |
Jenkins results:
|
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.
Thank you Andrea and Kenyi, these changes look good to me.
I noticed some unit test changes in the first commit as well, please try to keep them separated in future PRs
Fixes #12144
Status
Tested
Description
This PR introduces the retry logic proposed by @stlammel for handling the possible failures with token authentication when used with
gfal-cp
andxrootd
protocols.Both the copy and remove commands are preceded by setting the proper env variables to enforcing the desired authentication method, specified via the
authMethod
method argument. In addition, given that these protocols will try to use every authentication method before failing, an additionalforceMethod
argument is added to unset the env variables needed to enable the undesired protocol.For instance:
authMethod=TOKEN, forceMethod=True
set theBEARER_TOKEN*
env variables and clearly unset theX509_
ones.These variables are introduced also for all other subclasses for the other protocols, but their usage in not implemented for now. The retry logic is delegated to
StageOutImpl
Is it backward compatible (if not, which system it affects?)
YES
Related PRs
#12199 for implementing the token authentication in the stage-in step
This PR overrides #12191
External dependencies / deployment changes
None