-
-
Notifications
You must be signed in to change notification settings - Fork 369
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
Caching process update #2467
Caching process update #2467
Conversation
475c280
to
820d737
Compare
Hopefully it would remove it & its files from being cached in the action. & also not includde into environment.
For future caching configuraiton.
For 1:1 according cache to it.
Sources are stored separately. Before this cache was storing per Platform/GHC sources & compiled results together. While deps sources does not depend on platform or GHC, they are platform & GHC agnostic. Because sources & compiled results were stored togather & sources took ~1/2-2/3 of that - cache stored multiple duplicates of the same source code. This config stores the source code separately. And at the same time tries to store & share all source code which may be needed. & all compiled deps that would be used in different workflows.
9ac4c4a
to
284e203
Compare
[skip circleci] |
284e203
to
ff41e51
Compare
3098f20
to
f97b4bd
Compare
This PR has WIP commits that allow development & review. To not merge the work commits. Please, it needs to be reviewed as a draft, before being marked available for merge. |
Ok. The working results in the PR are in: https://github.com/haskell/haskell-language-server/pull/2467/checks?sha=f97b4bd8794ac9e6ac4121b7cfed8ca92cce08c0 Now cleaning-up the PR from PR-work commits. |
f97b4bd
to
6483d96
Compare
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.
Looks great overall, separating sources from compiled code is really a good idea
Nice. After merge, it works as expected. Caching in the |
New code included & shares all source code that may be needed.
New config includes & shares all compiled deps that may be needed in workflows.
New config stores the source code separately, which means it gets stored one time.
Before this cache stored per Platform/GHC - the sources & compiled results
together. It is while sources not depend on platform or GHC, as sources are
platform & GHC agnostic. Because they were always bundled together
& sources took ~1/2-2/3 of that storage - cache stored multiple duplicates of the same
source code.
caching
workflow now downloads, builds & shares all sources & all dependencies for all targets.dist-newstyle
so far is not included in to the cache, (what to cache from them can be looked into in the next updates).