microsoft / ga4gh-tes

C# implementation of the GA4GH TES API; provides distributed batch task execution on Microsoft Azure
MIT License
33 stars 27 forks source link

[#148 Implement TES Task Runner] Implement SAS resolution strategy for DRS #150

Closed giventocode closed 6 months ago

giventocode commented 1 year ago

Overview The TES Task Runner provides an extensibility mechanism to enable just-in-time SAS token resolution on the Batch Nodes. The goal of this story is to implement a new SAS resolution strategy when DRS URLs are provided.

AC:

DoD:

BMurri commented 10 months ago

Notes: Consider the following WRT the DRS Localizer (which is the current DRS approach):

The following is provided because it is no longer showing up in the source code:

DRS files are identified via this line of code: task.Inputs.Where(f => f?.Url?.StartsWith("drs://", StringComparison.OrdinalIgnoreCase) == true)

The docker image is available in BatchScheduler as cromwellDrsLocalizerImageName, the resolver URL (found currently in Options.MarthaOptions.Url) is passed double-quoted via the DRS_RESOLVER_URL environment variable, the command-line option --access-token-strategy azure is always provided, and the container should run with the same volume mounts options as the executor. When not using the manifest file, the Url and Path should be passed as command-line arguments in that same order.