-
-
Notifications
You must be signed in to change notification settings - Fork 3.6k
Pull/Push cached environment using storage #6763
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
Merged
Merged
Changes from 8 commits
Commits
Show all changes
11 commits
Select commit
Hold shift + click to select a range
9ec4258
Pull/Push cached environment using storage
humitos 7e5b86a
Use tempfile.mkstemp since tempfile.mktemp is deprecated
humitos 4e47c28
Cleanup temporary file once it's used
humitos dc2e7e8
Use tarfile.open as recommended by docs
humitos 5fd7fac
Merge branch 'master' into humitos/cache-envs-storage
humitos 8c9c473
Update settings
humitos 1737e4a
Fix linting
humitos c9f5ef7
Add comment explaining with not push on sync repository task
humitos af4d441
Use --cache-dir on pip if CACHED_ENVIRONMENT is enabled
humitos 861d90b
Ignore OS-level handle
humitos bd560ea
Save .cache path properly
humitos File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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.
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.
I wonder if it's worth abstracting the archive format here. It looks like
shutil
has an abstraction over it. I imagine we'll want to play withtar
andgzip
at least, because I imagine bandwidth and CPU will be a tradeoff here that we want to be able to tweak.https://docs.python.org/3/library/shutil.html#archiving-operations
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.
Hrm... Interesting! I didn't know about
shutil.make_archive
. I will take a deeper look.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.
Having an abstraction is a good idea to be able to play here. Although, it seems that
shutil.make_archive
does not gives us too much ability for this since it's not too customizable: we can't change lower level attributes.Besides, we would need Python 3.8 because since that version they are using modern PAX (
--xattrs
equivalent):On the other hand,
tarfile
allows us to play withgzip
,bz2
andlzma
and with compression level as well.