Create a temp staging dir per-download #1306
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Relates to #954.
Reusing the same temp directory for staging TUF downloads is proving more error-prone than it's worth -- I've seen at least a couple instances of
could not download updates: [could not download update for launcher: could not add release launcher-1.0.16.tar.gz for binary launcher to library: could not stage update: could not create file at /tmp/staged-updates612578530/launcher-1.0.16.tar.gz: open /tmp/staged-updates612578530/launcher-1.0.16.tar.gz: no such file or directory]
across two devices, where the temp staging directory no longer exists. I think it makes more sense to create a temp directory on the fly for staging, and clean it up after we finish download.Future work + linked PRs
Subsequent PRs will tackle the following (order is not set in stone):
Previous work: