-
Notifications
You must be signed in to change notification settings - Fork 277
Keep track of currently valid set of metadata in Updater #1313
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
Comments
So what I've been playing with is a "metadata bundle" that tracks clients current valid set of metadata. Purpose is to:
Explicitly purpose is not to handle:
I hope this abstraction will make it easier for a reader to go through the metadata verification steps, and for a test system to test it (as downloads etc are no longer needed). This is definitely influenced by @trishankatdatadog's Repository class in tuf-on-a-plane (with some differences). Hypothetical/simplified usage example in an update loop:
I'll update when I have something that runs |
After some quick experiments these properties seem to make sense and would work:
|
Previous comment still stands otherwise but I'll document new thinking on the internal state: Specification says that we should download each top-level metadata on an update cycle and this is how I built the state transitions... but we don't really want to do that: if we are 100% sure we have the correct file already there's no need to download (this can be the case with at least targets and snapshot): this is what current client does as well. Implication on bundle state is that we cannot expect that top-level metadata is always loaded from remote. So:
Essentially the rules boil down to:
|
To be resolved by #1355 |
Closing with #1355 :
|
Description of issue or feature request:
Define and init sequence for Updater.
Define what is the currently valid set of metadata and is refresh() the only wait to achieve it.
Is keeping current/previous metadata enough for this?
Do we need a VCS-like functionality?
See #1291 (comment), #1291 (comment)
Sync with #1308
The text was updated successfully, but these errors were encountered: