Repository navigation
Drop the automatic GitHub Actions cache, add a parallel build keeping the cache of services sharing a stage - #24
Merged
Conversation
…ge keep their build cache
…ervice on its own an option
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.
0.9.0 backed every registry cache with a GitHub Actions one on CI, to make up for the registry cache missing layers at random (jolicode/docker-starter#430). That miss is a BuildKit race instead (moby/buildkit#6418), detailed in jolicode/docker-starter#448:
php-base), each import a cache describing that stage. BuildKit keeps one of them and randomly rebuilds the steps of the other services;dockerdriver of the runners also failed every build exporting it (Cache export is not supported for the docker driver).Changes
withRegistryCache(), as before 0.9.0, plus whatever is given to itscacheFrom().docker:build --paralleland thebuild_parallelcontext variable: each service builds in its own session, all of them in parallel, and its log is printed once it is done.docker:up --buildanddocker:pushfollow them,--no-parallelturns it off for one command.Measured
On jolicode/redirection.io CI (11 services, the builder stage was rebuilt on almost every run and on every cache push):
docker compose build