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

Hook after download #26

Open
jlaxson opened this issue Jan 15, 2022 · 1 comment
Open

Hook after download #26

jlaxson opened this issue Jan 15, 2022 · 1 comment

Comments

@jlaxson
Copy link
Contributor

jlaxson commented Jan 15, 2022

I would love the ability to specify some sort of hook to run on downloaded/requested assets. Could happen synchronously or asynchronously for my purposes (maybe even preferable asynchronously). I'd see it as dispatching an action to the RBE scheduler, but probably lots of ways to skin that cat.

I'd use it to unpack and directly upload all constituent files into the CAS. This way clients aren't downloading large assets only to unzip and upload them right back.

I'd also use it to log assets I'm using and maybe automatically mirror them into persistent object storage that I control (a la mirror.tensorflow.org).

Another use, less personally interesting, would be to enforce policy (whitelisting sources), etc.

@Qinusty
Copy link
Collaborator

Qinusty commented Feb 28, 2022

Unpacking zips at the asset server level is definitely something that makes a lot of sense. I'm not sure how the clients currently behave and whether or not they fetch the zip regardless.

We definitely discussed this at one point as a bonus towards implementing the remote executor fetcher. Although I think it would likely be more standardised build actions such as unpacking zips rather than user customizable actions as it would be tricky to support these in situations without a remote executor configured.

This related issue is a little old but definitely has overlap #10

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

No branches or pull requests

2 participants