Open stevenhorsman opened 2 months ago
IMO it will be good to dogfood the upstream builds where feasible, but I agree w/ 1): we need to be able to reference builds with their revision.
Another upside is also that the bespoke build logic/params that we currently thread through several layers of Dockerfiles and Makefiles can be removed from the project.
I would still recommend we have the option of manually building guest binaries out-of-tree and be able to use them in image build, possibly a simple set of make targets that will only download a binary if they are not present yet is sufficient.
With the move to use kata-container's main branch we also get access to their component caches, so could potentially significantly simplify our podvm image build code and improve the performance (as the kata-agent is a big source of the time it takes and the pause image bundle could allow us to remove skopeo and umoci). There are a few issues with this that we should discuss first.
src/cloud-api-adaptor/podvm/files/
directory (as Pradipta is doing with theresources/binaries-tree
in the docker provider) that we'd skip the cache pulling that could provide a less arduous dev cycle. Alternatively we first check if the version file is a cached image and if not pull it and build it like today, but that adds complexity rather than removing it.