CEKit 3.7.0 released2 min read release
After long time without a release, we have finally another minor delivery which is focused on two things:
Adding support for base images
Multiple fixes for multi-stage builds
You can see full release notes here. Below you can find highlights of this release.
Base image support
Statically compiled binaries are very common in the cloud environment. Such binaries make it possible to be added to a container image without the need for any other libraries. This approach results in small size of the container image. Another benefit is to remove all unnecessary libraries that may be subject for potential CVE’s.
In 3.7.0 CEKit added support for creating base images. To do this you only need to define
from image as
Here is a sample image definition that uses this feature:
name: "cekit-scratch" version: "1.0.0" from: "scratch" labels: - name: "io.cekit.test" value: "This is a CEKit test label" artifacts: # The 'metadata' directory (path relative to image descriptor) will be copied to # the container and placed in /target directory - name: "dir" path: metadata dest: /target
|Base images are special type of images. This means that not all CEKit features will be available.|
Please refer to the documentation to get more information about this feature.
Multiple issues were found in the multi-stage implementation in CEKit. Luckily, we have a great community which helped a lot with providing reproducers and testing proposed fixes as well!
A bug that prevented using the OSBS builder with multi-stage builds was fixed, #649
Using builder images with different operating systems (and thus package managers) was broken. It was not possible to install packages correctly. This fix fixed making it possible to use correct package manager within the correct container, #646
Overrides are now applied to every image in multi-stage builds (builder images and resulting image as well), #648
Please refer to multi-stage builds documentation to learn how to use this feature.