These have been generated from the build dependency data
available in the libvirt-jenkins-ci repository, and will
be refreshed periodically to keep them in sync the same
way we've updated .travis.yml so far; my guess, based on
that effort, is that we'll need to do so about once per
release.
Automated builds will be set up on Docker Hub so that
changes to the Dockerfiles will cause the images to be
regenerated, and with that in place (a subset of) the
resulting images will be used in the Travis CI pipeline,
as well of course as being available to developers for
testing and debugging purposes.
Signed-off-by: Andrea Bolognani <abologna(a)redhat.com>
---
POC script used to generate the files:
https://www.redhat.com/archives/libvir-list/2018-June/msg01238.html
Preview of what the images will look like:
https://hub.docker.com/r/andreabolognani/buildenv-centos-7/
https://hub.docker.com/r/andreabolognani/buildenv-fedora-rawhide/
https://hub.docker.com/r/andreabolognani/buildenv-ubuntu-18/
libvirt.git feels like a sensible enough place to store these
files, especially considering that we've been storing pretty
much the same information in .travis.yml up until now; that
said, I don't love the idea of tracking what is ultimately
generated data, so I'm open to creating a separate, ad-hoc
repository (libvirt-dockerfiles.git?) instead.
.docker/buildenv-centos-7.Dockerfile | 70 ++++++++++++++
.docker/buildenv-debian-8.Dockerfile | 76 +++++++++++++++
.docker/buildenv-debian-9.Dockerfile | 78 ++++++++++++++++
.docker/buildenv-debian-sid.Dockerfile | 78 ++++++++++++++++
.docker/buildenv-fedora-27.Dockerfile | 78 ++++++++++++++++
.docker/buildenv-fedora-28.Dockerfile | 78 ++++++++++++++++
.docker/buildenv-fedora-rawhide.Dockerfile | 102 +++++++++++++++++++++
.docker/buildenv-ubuntu-16.Dockerfile | 79 ++++++++++++++++
.docker/buildenv-ubuntu-18.Dockerfile | 79 ++++++++++++++++
9 files changed, 718 insertions(+)
create mode 100644 .docker/buildenv-centos-7.Dockerfile
create mode 100644 .docker/buildenv-debian-8.Dockerfile
create mode 100644 .docker/buildenv-debian-9.Dockerfile
create mode 100644 .docker/buildenv-debian-sid.Dockerfile
create mode 100644 .docker/buildenv-fedora-27.Dockerfile
create mode 100644 .docker/buildenv-fedora-28.Dockerfile
create mode 100644 .docker/buildenv-fedora-rawhide.Dockerfile
create mode 100644 .docker/buildenv-ubuntu-16.Dockerfile
create mode 100644 .docker/buildenv-ubuntu-18.Dockerfile
diff --git a/.docker/buildenv-centos-7.Dockerfile b/.docker/buildenv-centos-7.Dockerfile
new file mode 100644
index 0000000000..5d92bfabc5
--- /dev/null
+++ b/.docker/buildenv-centos-7.Dockerfile
@@ -0,0 +1,70 @@
+FROM centos:centos7
+ENV PACKAGES audit-libs-devel \
+ augeas \
+ autoconf \
+ automake \
+ avahi-devel \
+ bash \
+ bash-completion \
+ chrony \
+ cyrus-sasl-devel \
+ dbus-devel \
+ device-mapper-devel \
+ dnsmasq \
+ ebtables \
+ fuse-devel \
+ gcc \
+ gettext \
+ gettext-devel \
+ git \
+ glibc-common \
+ glibc-devel \
+ glusterfs-api-devel \
+ gnutls-devel \
+ iproute \
+ iscsi-initiator-utils \
+ libacl-devel \
+ libattr-devel \
+ libblkid-devel \
+ libcap-ng-devel \
+ libcurl-devel \
+ libnl3-devel \
+ libpcap-devel \
+ libpciaccess-devel \
+ librbd1-devel \
+ libselinux-devel \
+ libssh-devel \
+ libssh2-devel \
+ libtirpc-devel \
+ libtool \
+ libudev-devel \
+ libwsman-devel \
+ libxml2 \
+ libxml2-devel \
+ libxslt \
+ lvm2 \
+ make \
+ netcf-devel \
+ nfs-utils \
+ numactl-devel \
+ numad \
+ parted \
+ parted-devel \
+ patch \
+ perl \
+ pkgconfig \
+ polkit \
+ qemu-img \
+ radvd \
+ readline-devel \
+ rpm-build \
+ sanlock-devel \
+ screen \
+ scrub \
+ sudo \
+ systemtap-sdt-devel \
+ vim \
+ yajl-devel
+RUN yum install -y ${PACKAGES} && \
+ yum autoremove -y && \
+ yum clean all -y
diff --git a/.docker/buildenv-debian-8.Dockerfile b/.docker/buildenv-debian-8.Dockerfile
new file mode 100644
index 0000000000..0766cc99e9
--- /dev/null
+++ b/.docker/buildenv-debian-8.Dockerfile
@@ -0,0 +1,76 @@
+FROM debian:8
+ENV PACKAGES augeas-tools \
+ autoconf \
+ automake \
+ autopoint \
+ bash \
+ bash-completion \
+ ccache \
+ chrony \
+ dnsmasq-base \
+ dwarves \
+ ebtables \
+ gcc \
+ gettext \
+ git \
+ glusterfs-client \
+ iproute2 \
+ libacl1-dev \
+ libapparmor-dev \
+ libattr1-dev \
+ libaudit-dev \
+ libavahi-client-dev \
+ libblkid-dev \
+ libc-dev-bin \
+ libc6-dev \
+ libcap-ng-dev \
+ libcurl4-gnutls-dev \
+ libdbus-1-dev \
+ libdevmapper-dev \
+ libfuse-dev \
+ libgnutls28-dev \
+ libnetcf-dev \
+ libnl-3-dev \
+ libnl-route-3-dev \
+ libnuma-dev \
+ libparted-dev \
+ libpcap-dev \
+ libpciaccess-dev \
+ librbd-dev \
+ libreadline-dev \
+ libsanlock-dev \
+ libsasl2-dev \
+ libselinux1-dev \
+ libssh-gcrypt-dev \
+ libssh2-1-dev \
+ libtirpc-dev \
+ libtool \
+ libtool-bin \
+ libudev-dev \
+ libxen-dev \
+ libxml2-dev \
+ libxml2-utils \
+ libyajl-dev \
+ lvm2 \
+ make \
+ nfs-common \
+ open-iscsi \
+ parted \
+ patch \
+ perl \
+ pkgconf \
+ policykit-1 \
+ qemu-utils \
+ radvd \
+ screen \
+ scrub \
+ sheepdog \
+ sudo \
+ systemtap-sdt-dev \
+ vim \
+ xsltproc \
+ zfs-fuse
+RUN apt-get update && \
+ apt-get install -y ${PACKAGES} && \
+ apt-get autoremove -y && \
+ apt-get autoclean -y
diff --git a/.docker/buildenv-debian-9.Dockerfile b/.docker/buildenv-debian-9.Dockerfile
new file mode 100644
index 0000000000..e106574aa9
--- /dev/null
+++ b/.docker/buildenv-debian-9.Dockerfile
@@ -0,0 +1,78 @@
+FROM debian:9
+ENV PACKAGES augeas-tools \
+ autoconf \
+ automake \
+ autopoint \
+ bash \
+ bash-completion \
+ ccache \
+ chrony \
+ dnsmasq-base \
+ dwarves \
+ ebtables \
+ gcc \
+ gettext \
+ git \
+ glusterfs-client \
+ iproute2 \
+ libacl1-dev \
+ libapparmor-dev \
+ libattr1-dev \
+ libaudit-dev \
+ libavahi-client-dev \
+ libblkid-dev \
+ libc-dev-bin \
+ libc6-dev \
+ libcap-ng-dev \
+ libcurl4-gnutls-dev \
+ libdbus-1-dev \
+ libdevmapper-dev \
+ libfuse-dev \
+ libgnutls28-dev \
+ libnetcf-dev \
+ libnl-3-dev \
+ libnl-route-3-dev \
+ libnuma-dev \
+ libparted-dev \
+ libpcap-dev \
+ libpciaccess-dev \
+ librbd-dev \
+ libreadline-dev \
+ libsanlock-dev \
+ libsasl2-dev \
+ libselinux1-dev \
+ libssh-gcrypt-dev \
+ libssh2-1-dev \
+ libtirpc-dev \
+ libtool \
+ libtool-bin \
+ libudev-dev \
+ libxen-dev \
+ libxml2-dev \
+ libxml2-utils \
+ libyajl-dev \
+ lvm2 \
+ make \
+ nfs-common \
+ numad \
+ open-iscsi \
+ parted \
+ patch \
+ perl \
+ pkgconf \
+ policykit-1 \
+ qemu-utils \
+ radvd \
+ screen \
+ scrub \
+ sheepdog \
+ sudo \
+ systemtap-sdt-dev \
+ vim \
+ wireshark-dev \
+ xsltproc \
+ zfs-fuse
+RUN apt-get update && \
+ apt-get install -y ${PACKAGES} && \
+ apt-get autoremove -y && \
+ apt-get autoclean -y
diff --git a/.docker/buildenv-debian-sid.Dockerfile
b/.docker/buildenv-debian-sid.Dockerfile
new file mode 100644
index 0000000000..c3a18be76d
--- /dev/null
+++ b/.docker/buildenv-debian-sid.Dockerfile
@@ -0,0 +1,78 @@
+FROM debian:sid
+ENV PACKAGES augeas-tools \
+ autoconf \
+ automake \
+ autopoint \
+ bash \
+ bash-completion \
+ ccache \
+ chrony \
+ dnsmasq-base \
+ dwarves \
+ ebtables \
+ gcc \
+ gettext \
+ git \
+ glusterfs-client \
+ iproute2 \
+ libacl1-dev \
+ libapparmor-dev \
+ libattr1-dev \
+ libaudit-dev \
+ libavahi-client-dev \
+ libblkid-dev \
+ libc-dev-bin \
+ libc6-dev \
+ libcap-ng-dev \
+ libcurl4-gnutls-dev \
+ libdbus-1-dev \
+ libdevmapper-dev \
+ libfuse-dev \
+ libgnutls28-dev \
+ libnetcf-dev \
+ libnl-3-dev \
+ libnl-route-3-dev \
+ libnuma-dev \
+ libparted-dev \
+ libpcap-dev \
+ libpciaccess-dev \
+ librbd-dev \
+ libreadline-dev \
+ libsanlock-dev \
+ libsasl2-dev \
+ libselinux1-dev \
+ libssh-gcrypt-dev \
+ libssh2-1-dev \
+ libtirpc-dev \
+ libtool \
+ libtool-bin \
+ libudev-dev \
+ libxen-dev \
+ libxml2-dev \
+ libxml2-utils \
+ libyajl-dev \
+ lvm2 \
+ make \
+ nfs-common \
+ numad \
+ open-iscsi \
+ parted \
+ patch \
+ perl \
+ pkgconf \
+ policykit-1 \
+ qemu-utils \
+ radvd \
+ screen \
+ scrub \
+ sheepdog \
+ sudo \
+ systemtap-sdt-dev \
+ vim \
+ wireshark-dev \
+ xsltproc \
+ zfs-fuse
+RUN apt-get update && \
+ apt-get install -y ${PACKAGES} && \
+ apt-get autoremove -y && \
+ apt-get autoclean -y
diff --git a/.docker/buildenv-fedora-27.Dockerfile
b/.docker/buildenv-fedora-27.Dockerfile
new file mode 100644
index 0000000000..4e5173fe9d
--- /dev/null
+++ b/.docker/buildenv-fedora-27.Dockerfile
@@ -0,0 +1,78 @@
+FROM fedora:27
+ENV PACKAGES audit-libs-devel \
+ augeas \
+ autoconf \
+ automake \
+ avahi-devel \
+ bash \
+ bash-completion \
+ ccache \
+ chrony \
+ cppi \
+ cyrus-sasl-devel \
+ dbus-devel \
+ device-mapper-devel \
+ dnsmasq \
+ dwarves \
+ ebtables \
+ fuse-devel \
+ gcc \
+ gettext \
+ gettext-devel \
+ git \
+ glibc-common \
+ glibc-devel \
+ glusterfs-api-devel \
+ gnutls-devel \
+ iproute \
+ iproute-tc \
+ iscsi-initiator-utils \
+ libacl-devel \
+ libattr-devel \
+ libblkid-devel \
+ libcap-ng-devel \
+ libcurl-devel \
+ libnl3-devel \
+ libpcap-devel \
+ libpciaccess-devel \
+ librbd-devel \
+ libselinux-devel \
+ libssh-devel \
+ libssh2-devel \
+ libtirpc-devel \
+ libtool \
+ libudev-devel \
+ libwsman-devel \
+ libxml2 \
+ libxml2-devel \
+ libxslt \
+ lvm2 \
+ make \
+ netcf-devel \
+ nfs-utils \
+ numactl-devel \
+ numad \
+ parted \
+ parted-devel \
+ patch \
+ perl \
+ pkgconfig \
+ polkit \
+ qemu-img \
+ radvd \
+ readline-devel \
+ rpm-build \
+ sanlock-devel \
+ screen \
+ scrub \
+ sheepdog \
+ sudo \
+ systemtap-sdt-devel \
+ vim \
+ wireshark-devel \
+ xen-devel \
+ yajl-devel \
+ zfs-fuse
+RUN yum install -y ${PACKAGES} && \
+ yum autoremove -y && \
+ yum clean all -y
diff --git a/.docker/buildenv-fedora-28.Dockerfile
b/.docker/buildenv-fedora-28.Dockerfile
new file mode 100644
index 0000000000..d051d65219
--- /dev/null
+++ b/.docker/buildenv-fedora-28.Dockerfile
@@ -0,0 +1,78 @@
+FROM fedora:28
+ENV PACKAGES audit-libs-devel \
+ augeas \
+ autoconf \
+ automake \
+ avahi-devel \
+ bash \
+ bash-completion \
+ ccache \
+ chrony \
+ cppi \
+ cyrus-sasl-devel \
+ dbus-devel \
+ device-mapper-devel \
+ dnsmasq \
+ dwarves \
+ ebtables \
+ fuse-devel \
+ gcc \
+ gettext \
+ gettext-devel \
+ git \
+ glibc-devel \
+ glusterfs-api-devel \
+ gnutls-devel \
+ iproute \
+ iproute-tc \
+ iscsi-initiator-utils \
+ libacl-devel \
+ libattr-devel \
+ libblkid-devel \
+ libcap-ng-devel \
+ libcurl-devel \
+ libnl3-devel \
+ libpcap-devel \
+ libpciaccess-devel \
+ librbd-devel \
+ libselinux-devel \
+ libssh-devel \
+ libssh2-devel \
+ libtirpc-devel \
+ libtool \
+ libudev-devel \
+ libwsman-devel \
+ libxml2 \
+ libxml2-devel \
+ libxslt \
+ lvm2 \
+ make \
+ netcf-devel \
+ nfs-utils \
+ numactl-devel \
+ numad \
+ parted \
+ parted-devel \
+ patch \
+ perl \
+ pkgconfig \
+ polkit \
+ qemu-img \
+ radvd \
+ readline-devel \
+ rpcgen \
+ rpm-build \
+ sanlock-devel \
+ screen \
+ scrub \
+ sheepdog \
+ sudo \
+ systemtap-sdt-devel \
+ vim \
+ wireshark-devel \
+ xen-devel \
+ yajl-devel \
+ zfs-fuse
+RUN yum install -y ${PACKAGES} && \
+ yum autoremove -y && \
+ yum clean all -y
diff --git a/.docker/buildenv-fedora-rawhide.Dockerfile
b/.docker/buildenv-fedora-rawhide.Dockerfile
new file mode 100644
index 0000000000..56d59a1dec
--- /dev/null
+++ b/.docker/buildenv-fedora-rawhide.Dockerfile
@@ -0,0 +1,102 @@
+FROM fedora:rawhide
+ENV PACKAGES audit-libs-devel \
+ augeas \
+ autoconf \
+ automake \
+ avahi-devel \
+ bash \
+ bash-completion \
+ ccache \
+ chrony \
+ cppi \
+ cyrus-sasl-devel \
+ dbus-devel \
+ device-mapper-devel \
+ dnsmasq \
+ dwarves \
+ ebtables \
+ fuse-devel \
+ gcc \
+ gettext \
+ gettext-devel \
+ git \
+ glibc-devel \
+ glusterfs-api-devel \
+ gnutls-devel \
+ iproute \
+ iproute-tc \
+ iscsi-initiator-utils \
+ libacl-devel \
+ libattr-devel \
+ libblkid-devel \
+ libcap-ng-devel \
+ libcurl-devel \
+ libnl3-devel \
+ libpcap-devel \
+ libpciaccess-devel \
+ librbd-devel \
+ libselinux-devel \
+ libssh-devel \
+ libssh2-devel \
+ libtirpc-devel \
+ libtool \
+ libudev-devel \
+ libwsman-devel \
+ libxml2 \
+ libxml2-devel \
+ libxslt \
+ lvm2 \
+ make \
+ mingw32-curl \
+ mingw32-dbus \
+ mingw32-dlfcn \
+ mingw32-gcc \
+ mingw32-gettext \
+ mingw32-gnutls \
+ mingw32-libssh2 \
+ mingw32-libxml2 \
+ mingw32-openssl \
+ mingw32-pkg-config \
+ mingw32-portablexdr \
+ mingw32-readline \
+ mingw64-curl \
+ mingw64-dbus \
+ mingw64-dlfcn \
+ mingw64-gcc \
+ mingw64-gettext \
+ mingw64-gnutls \
+ mingw64-libssh2 \
+ mingw64-libxml2 \
+ mingw64-openssl \
+ mingw64-pkg-config \
+ mingw64-portablexdr \
+ mingw64-readline \
+ netcf-devel \
+ nfs-utils \
+ numactl-devel \
+ numad \
+ parted \
+ parted-devel \
+ patch \
+ perl \
+ pkgconfig \
+ polkit \
+ qemu-img \
+ radvd \
+ readline-devel \
+ rpcgen \
+ rpm-build \
+ sanlock-devel \
+ screen \
+ scrub \
+ sheepdog \
+ sudo \
+ systemtap-sdt-devel \
+ vim \
+ wireshark-devel \
+ xen-devel \
+ yajl-devel \
+ zfs-fuse
+RUN yum install -y ${PACKAGES} && \
+ yum autoremove -y && \
+ yum clean all -y
diff --git a/.docker/buildenv-ubuntu-16.Dockerfile
b/.docker/buildenv-ubuntu-16.Dockerfile
new file mode 100644
index 0000000000..d2ece05722
--- /dev/null
+++ b/.docker/buildenv-ubuntu-16.Dockerfile
@@ -0,0 +1,79 @@
+FROM ubuntu:16.04
+ENV PACKAGES augeas-tools \
+ autoconf \
+ automake \
+ autopoint \
+ bash \
+ bash-completion \
+ ccache \
+ chrony \
+ dnsmasq-base \
+ dwarves \
+ ebtables \
+ gcc \
+ gettext \
+ git \
+ glusterfs-client \
+ iproute2 \
+ libacl1-dev \
+ libapparmor-dev \
+ libattr1-dev \
+ libaudit-dev \
+ libavahi-client-dev \
+ libblkid-dev \
+ libc-dev-bin \
+ libc6-dev \
+ libcap-ng-dev \
+ libcurl4-gnutls-dev \
+ libdbus-1-dev \
+ libdevmapper-dev \
+ libfuse-dev \
+ libgnutls28-dev \
+ libnetcf-dev \
+ libnl-3-dev \
+ libnl-route-3-dev \
+ libnuma-dev \
+ libopenwsman-dev \
+ libparted-dev \
+ libpcap-dev \
+ libpciaccess-dev \
+ librbd-dev \
+ libreadline-dev \
+ libsanlock-dev \
+ libsasl2-dev \
+ libselinux1-dev \
+ libssh-dev \
+ libssh2-1-dev \
+ libtirpc-dev \
+ libtool \
+ libtool-bin \
+ libudev-dev \
+ libxen-dev \
+ libxml2-dev \
+ libxml2-utils \
+ libyajl-dev \
+ lvm2 \
+ make \
+ nfs-common \
+ numad \
+ open-iscsi \
+ parted \
+ patch \
+ perl \
+ pkgconf \
+ policykit-1 \
+ qemu-utils \
+ radvd \
+ screen \
+ scrub \
+ sheepdog \
+ sudo \
+ systemtap-sdt-dev \
+ vim \
+ wireshark-dev \
+ xsltproc \
+ zfs-fuse
+RUN apt-get update && \
+ apt-get install -y ${PACKAGES} && \
+ apt-get autoremove -y && \
+ apt-get autoclean -y
diff --git a/.docker/buildenv-ubuntu-18.Dockerfile
b/.docker/buildenv-ubuntu-18.Dockerfile
new file mode 100644
index 0000000000..fdf97ebf90
--- /dev/null
+++ b/.docker/buildenv-ubuntu-18.Dockerfile
@@ -0,0 +1,79 @@
+FROM ubuntu:18.04
+ENV PACKAGES augeas-tools \
+ autoconf \
+ automake \
+ autopoint \
+ bash \
+ bash-completion \
+ ccache \
+ chrony \
+ dnsmasq-base \
+ dwarves \
+ ebtables \
+ gcc \
+ gettext \
+ git \
+ glusterfs-client \
+ iproute2 \
+ libacl1-dev \
+ libapparmor-dev \
+ libattr1-dev \
+ libaudit-dev \
+ libavahi-client-dev \
+ libblkid-dev \
+ libc-dev-bin \
+ libc6-dev \
+ libcap-ng-dev \
+ libcurl4-gnutls-dev \
+ libdbus-1-dev \
+ libdevmapper-dev \
+ libfuse-dev \
+ libgnutls28-dev \
+ libnetcf-dev \
+ libnl-3-dev \
+ libnl-route-3-dev \
+ libnuma-dev \
+ libopenwsman-dev \
+ libparted-dev \
+ libpcap-dev \
+ libpciaccess-dev \
+ librbd-dev \
+ libreadline-dev \
+ libsanlock-dev \
+ libsasl2-dev \
+ libselinux1-dev \
+ libssh-dev \
+ libssh2-1-dev \
+ libtirpc-dev \
+ libtool \
+ libtool-bin \
+ libudev-dev \
+ libxen-dev \
+ libxml2-dev \
+ libxml2-utils \
+ libyajl-dev \
+ lvm2 \
+ make \
+ nfs-common \
+ numad \
+ open-iscsi \
+ parted \
+ patch \
+ perl \
+ pkgconf \
+ policykit-1 \
+ qemu-utils \
+ radvd \
+ screen \
+ scrub \
+ sheepdog \
+ sudo \
+ systemtap-sdt-dev \
+ vim \
+ wireshark-dev \
+ xsltproc \
+ zfs-fuse
+RUN apt-get update && \
+ apt-get install -y ${PACKAGES} && \
+ apt-get autoremove -y && \
+ apt-get autoclean -y
--
2.17.1