Keep store media out of the project archive - #4124
Open
Nezz wants to merge 1 commit into
Open
Conversation
`eas metadata:pull` downloads screenshots, previews and App Clip header images into store/apple, which can be hundreds of megabytes. Only `eas metadata:push` reads them and it runs from the CLI, so uploading them for a build makes the archive bigger for no benefit. Ignore the directories when copying the project, the same way node_modules is ignored. The directories are now defined in one place, since both the metadata tasks and the archiving code need to agree on them.
|
Subscribed to pull request
Generated by CodeMention Warning: The preamble and epilogue options in commentConfiguration are deprecated. Use template instead. |
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Why
Fixes #3714 and saves the Expo team money on data transfer and storage costs
How
Store media that
eas metadata:pulldownloads intostore/appleis now ignored when archiving the project for an EAS build, the same waynode_modulesis. Onlyeas metadata:pushreads it and that runs from the CLI, so there is no reason to upload it for a build. The directories moved intosrc/metadata/media.ts, since the metadata tasks and the archiving code have to agree on them.Note that committed media still travels inside the shallow clone's
.git, andrequireCommit: trueprojects get a checkout rather than a copy, so they are unaffected.Test Plan
3 new tests, each failing on
main: media excluded whether it is untracked or committed, withstore.config.jsonkept, plus the.easignorecase.yarn test,yarn typecheck,yarn lintandyarn fmt:checkare clean.Reproduces with
eas build:inspect -p ios -s archive -o /tmp/inspecton a blank project with a 50 MB screenshot instore/apple/screenshot/en-US/APP_IPHONE_67: