[libvirt-jenkins-ci PATCH] guests: allow for container image inheritance

Daniel P. Berrangé berrange at redhat.com
Wed Apr 29 14:38:45 UTC 2020


On Tue, Mar 31, 2020 at 03:28:20PM +0100, Daniel P. Berrangé wrote:
> Currently when creating a Dockerfile for a container, we include the
> full set of base packages, along with the packages for the project
> itself. If building a Perl binding, this would require us to install
> the base package, libvirt packages and Perl packages. With the use
> of the "--inherit libvirt-fedora-30" arg, it is possible to have a
> dockerfile that only adds the Perl packages, getting everything
> else from the parent image.
> 
> For example, a full Dockerfile for libvirt-go would thus be:
> 
>   FROM libvirt-centos-7:latest
> 
>   RUN yum install -y \
>           golang && \
>       yum autoremove -y && \
>       yum clean all -y
> 
> Note there is no need to set ENV either, as that's inherited from the
> parent container.
> 
> Signed-off-by: Daniel P. Berrangé <berrange at redhat.com>
> ---
>  guests/lcitool | 108 ++++++++++++++++++++++++++++++++++++++++++++-----
>  1 file changed, 98 insertions(+), 10 deletions(-)

While this is a conceptually useful feature, I'm not actually intending
to use it anymore. Instead the new libvirt-minimal and libvirt-dist
projets would be used to create a self-contained dockerfile for downstream
components as illustrated with

ci      https://www.redhat.com/archives/libvir-list/2020-April/msg01407.html
python  https://www.redhat.com/archives/libvir-list/2020-April/msg01418.html
perl    https://www.redhat.com/archives/libvir-list/2020-April/msg01408.html


It could still be useful if QEMU adopts lcitool since their dockerfiles
currently make use of inheritance

Regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|




More information about the libvir-list mailing list