Conversation
| mkdir -p /ovms_pkg/${BASE_OS} | ||
| cd /ovms_pkg/${BASE_OS} | ||
| tar czf ovms.tar.gz --transform 's/ovms_release/ovms/' /ovms_release/ | ||
| sha256sum ovms.tar.gz > ovms.tar.gz.sha256 && \ |
There was a problem hiding this comment.
ovms.tar is to be repacked in next stage to add libovms_shared.so
| # prebuild dependencies before copying sources | ||
| # hadolint ignore=DL3059 | ||
| RUN bazel build --jobs=$JOBS ${debug_bazel_flags} //:ovms_dependencies @com_google_googletest//:gtest |
There was a problem hiding this comment.
Removing all those steps will mean that all those dependencies are not cached in docker layers up until L321:
https://github.com/openvinotoolkit/model_server/pull/4159/changes#diff-507d73bbefd62da3db1eec3a006d6f4bf47433fec017a5299f63921bd0a605b0L321
So basically that means they are never cached in docker. With bazel remote cache that would not be an issue but in every other case its mean recompiling most of ovms dependencies each time anything in our srcs change (L281).
Unless proven empirically that those dependencies recompile anyway, its a no go for me.
There was a problem hiding this comment.
Yeah, this might be useful to have
🛠 Summary
This is productization of #3967
CVS-185012 Image building refactor to address issues for RedHat base OS on Konflux system.
Bazel command is in a single layer to avoid issues with passing bazel cache between layers.
It also speeds up build when release docker image is the only needed artefact, skipping capi stage.
🧪 Checklist
``