-
Notifications
You must be signed in to change notification settings - Fork 0
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
fix: Properly collect Python dependencies during image build. Next attempt at build cache #47
Conversation
…tempt to build cache * `Dockerfile`: fixed installing Python package dependencies (should use same `pip install --root...`) * Github Actions: switched to `registry` cache for Docker build, as `gha` one didn't result in any hits
Please retry analysis of this Pull-Request directly on SonarCloud |
1 similar comment
Please retry analysis of this Pull-Request directly on SonarCloud |
platform, utilizing separate build cache - previously a single step build all target platform didn't use the cache resulting in very long build time
Quality Gate passedIssues Measures |
Please retry analysis of this Pull-Request directly on SonarCloud |
potentially it could lead to build cache not being utilized
Please retry analysis of this Pull-Request directly on SonarCloud |
1 similar comment
Please retry analysis of this Pull-Request directly on SonarCloud |
since there is a known issue it might prevent utilizing the cache
Please retry analysis of this Pull-Request directly on SonarCloud |
Quality Gate passedIssues Measures |
`build-push-action`, since version couldn't be determined when using default Git context for the action
Quality Gate passedIssues Measures |
version for `setuptools_scm`
Please retry analysis of this Pull-Request directly on SonarCloud |
* Github Actions: pass version override via `VERSION` build arg instead of environment variable when building the Docker image
Please retry analysis of this Pull-Request directly on SonarCloud |
Please retry analysis of this Pull-Request directly on SonarCloud |
the platform name doesn't pass Docker Buildx requirements to cache ref
Please retry analysis of this Pull-Request directly on SonarCloud |
Quality Gate passedIssues Measures |
the image tag being built, the prefix will be the version
name to the `build-push-action`
Please retry analysis of this Pull-Request directly on SonarCloud |
1 similar comment
Please retry analysis of this Pull-Request directly on SonarCloud |
Please retry analysis of this Pull-Request directly on SonarCloud |
produced by `docker/metadata-action` as JSON, so they could be handled by `github-action-matrix-outputs-write`
Quality Gate passedIssues Measures |
for tags and annotations via JSON representation (`docker/metadata-action`, `json` output)
tags/annotations/digests considering nested JSON structure
Quality Gate passedIssues Measures |
Docker image metadata has been moved to separate jobs, since those don't need to be matrix ones
Quality Gate passedIssues Measures |
in `{value: <digest>}` object each, so later those could be dereferenced using `.*.value` syntax
Please retry analysis of this Pull-Request directly on SonarCloud |
Quality Gate passedIssues Measures |
construct arguments for `docker buildx imagetools create` command - should be easier compared to `jq` and alike
Please retry analysis of this Pull-Request directly on SonarCloud |
`docker buildx imagetools create` command - should use `tag` and `annotation` instead of `tags` and `annotations`
Please retry analysis of this Pull-Request directly on SonarCloud |
Quality Gate passedIssues Measures |
manufest, as annotations aren't supported there - instead, there are added to each image built
Quality Gate passedIssues Measures |
operation at a time, otherwise GHCR responds with 403 when multiple tags are provided to `buildx imagetools create`.
Please retry analysis of this Pull-Request directly on SonarCloud |
Quality Gate passedIssues Measures |
Dockerfile
: fixed installing Python package dependenciesDockerfile
: restructured to minimize chances of cache invalidationregistry
cache for Docker build, asgha
might reduce hit ratio (see Best way to cache multi-stage + multi-platform image builds docker/buildx#1382 for details)buildx
invocation with multiple platforms doesn't result in proper caching (see the link above for details)