Skip to content

Improve layer caching between images #68

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 1 commit into from
Mar 13, 2022

Conversation

AlistairB
Copy link
Contributor

@AlistairB AlistairB commented Mar 13, 2022

The previous logic to the ordering was order GHC, cabal-install and stack based on how often they get updated. (at the time) Cabal-install was updated the least so it was put as the first install. This minimises the amount of layers invalidated as these tools get updated.

However, upon reflection it is better to the images be more consistent in terms of the initial layers. This way when switching between versions of GHC you only need to download the new GHC layer and not also the stack layer. Also GHC is seeing a lot of releases these days, so that also makes it make sense as the last layer.

Then I put stack as the first install as it is updated less and less.

Also move the ENV path setting to the top since it almost never changes. Nah, it needs to be at the end while the path for GHC is dynamic based on the GHC version. I prefer this path which is more realistic so will leave ENV path setting at the end.

It is probably best to make the images share the same docker layers
as much as possible between GHC versions.
@AlistairB AlistairB merged commit 3fd71ef into haskell:master Mar 13, 2022
@AlistairB AlistairB deleted the better-layers branch March 13, 2022 06:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant