[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] gitlab-ci.yml: Add openSUSE Leap 15.2 for gitlab CI/CD
From: |
Daniel P . Berrangé |
Subject: |
Re: [PATCH] gitlab-ci.yml: Add openSUSE Leap 15.2 for gitlab CI/CD |
Date: |
Thu, 19 Nov 2020 09:29:37 +0000 |
User-agent: |
Mutt/1.14.6 (2020-07-11) |
On Thu, Nov 19, 2020 at 03:37:50PM +0800, AL Yu-Chen Cho wrote:
> On Tue, 2020-11-17 at 12:51 +0100, Thomas Huth wrote:
> > On 17/11/2020 07.57, Cho, Yu-Chen wrote:
> > > Add build-system-opensuse jobs and add opensuse-leap.docker
> > > dockerfile.
> > > Use openSUSE Leap 15.2 container image in the gitlab-CI.
> > >
> > > Signed-off-by: Cho, Yu-Chen <acho@suse.com>
> > > ---
> > > .gitlab-ci.d/containers.yml | 5 ++
> > > .gitlab-ci.yml | 30 +++++++
> > > tests/docker/dockerfiles/opensuse-leap.docker | 88
> > > +++++++++++++++++++
> > > 3 files changed, 123 insertions(+)
> > > create mode 100644 tests/docker/dockerfiles/opensuse-leap.docker
> > >
> > > diff --git a/.gitlab-ci.d/containers.yml b/.gitlab-
> > > ci.d/containers.yml
> > > index 11d079ea58..082624a6fa 100644
> > > --- a/.gitlab-ci.d/containers.yml
> > > +++ b/.gitlab-ci.d/containers.yml
> > > @@ -246,3 +246,8 @@ amd64-ubuntu-container:
> > > <<: *container_job_definition
> > > variables:
> > > NAME: ubuntu
> > > +
> > > +amd64-opensuse-leap-container:
> > > + <<: *container_job_definition
> > > + variables:
> > > + NAME: opensuse-leap
> > > diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
> > > index 9a8b375188..bf4759296a 100644
> > > --- a/.gitlab-ci.yml
> > > +++ b/.gitlab-ci.yml
> > > @@ -195,6 +195,36 @@ acceptance-system-centos:
> > > MAKE_CHECK_ARGS: check-acceptance
> > > <<: *acceptance_definition
> > >
> > > +build-system-opensuse:
> > > + <<: *native_build_job_definition
> > > + variables:
> > > + IMAGE: opensuse-leap
> > > + TARGETS: s390x-softmmu x86_64-softmmu aarch64-softmmu
> > > + MAKE_CHECK_ARGS: check-build
> > > + artifacts:
> > > + expire_in: 2 days
> > > + paths:
> > > + - build
> > > +
> > > +check-system-opensuse:
> > > + <<: *native_test_job_definition
> > > + needs:
> > > + - job: build-system-opensuse
> > > + artifacts: true
> > > + variables:
> > > + IMAGE: opensuse-leap
> > > + MAKE_CHECK_ARGS: check
> > > +
> > > +acceptance-system-opensuse:
> > > + <<: *native_test_job_definition
> > > + needs:
> > > + - job: build-system-opensuse
> > > + artifacts: true
> > > + variables:
> > > + IMAGE: opensuse-leap
> > > + MAKE_CHECK_ARGS: check-acceptance
> > > + <<: *acceptance_definition
> > > +
> > > build-disabled:
> > > <<: *native_build_job_definition
> > > variables:
> > > diff --git a/tests/docker/dockerfiles/opensuse-leap.docker
> > > b/tests/docker/dockerfiles/opensuse-leap.docker
> > > new file mode 100644
> > > index 0000000000..712eb4fe3a
> > > --- /dev/null
> > > +++ b/tests/docker/dockerfiles/opensuse-leap.docker
> > > @@ -0,0 +1,88 @@
> > > +FROM opensuse/leap:15.2
> > > +
> > > +RUN zypper update -y
> > > +
> > > +# Please keep this list sorted alphabetically
> > > +ENV PACKAGES \
> > > + bc \
> > > + brlapi-devel \
> > > + bzip2 \
> > > + libzip-devel \
> > > + ccache \
> > > + clang \
> > > + cyrus-sasl-devel \
> > > + dbus-1 \
> > > + device-mapper-devel \
> > > + gcc \
> > > + gcc-c++ \
> > > + mkisofs \
> > > + gettext-runtime \
> > > + git \
> > > + glib2-devel \
> > > + glusterfs-devel \
> > > + libgnutls-devel \
> > > + gtk3-devel \
> > > + hostname \
> > > + libaio-devel \
> > > + libasan5 \
> > > + libattr-devel \
> > > + libblockdev-devel \
> > > + libcap-ng-devel \
> > > + libcurl-devel \
> > > + libepoxy-devel \
> > > + libfdt-devel \
> > > + libiscsi-devel \
> > > + libjpeg8-devel \
> > > + libpmem-devel \
> > > + libpng16-devel \
> > > + librbd-devel \
> > > + libseccomp-devel \
> > > + libssh-devel \
> > > + libubsan0 \
> > > + libudev-devel \
> > > + libxml2-devel \
> > > + libzstd-devel \
> > > + llvm \
> > > + lzo-devel \
> > > + make \
> > > + mingw32-filesystem \
> > > + glibc-devel-32bit \
> > > + libSDL2_image-devel \
> > > + mingw64-binutils \
> > > + nmap \
> > > + ncat \
> > > + ncurses-devel \
> > > + libnettle-devel \
> > > + ninja \
> > > + mozilla-nss-devel \
> > > + libnuma-devel \
> > > + perl \
> > > + libpixman-1-0-devel \
> > > + python3-base \
> > > + python3-PyYAML \
> > > + python3-numpy \
> > > + python3-opencv \
> > > + python3-Pillow \
> > > + python3-pip \
> > > + python3-Sphinx \
> > > + python3-virtualenv \
> > > + rdma-core-devel \
> > > + libSDL2-devel \
> > > + snappy-devel \
> > > + sparse \
> > > + libspice-server-devel \
> > > + systemd-devel \
> > > + systemtap-sdt-devel \
> > > + tar \
> > > + tesseract-ocr \
> > > + tesseract-ocr-traineddata-english \
> > > + usbredir-devel \
> > > + virglrenderer-devel \
> > > + libvte-2_91-0 \
> > > + which \
> > > + xen-devel \
> > > + zlib-devel
> > > +ENV QEMU_CONFIGURE_OPTS --python=/usr/bin/python3.8
> > > +
> > > +RUN zypper --non-interactive install -y $PACKAGES
> > > +RUN rpm -q $PACKAGES | sort > /packages.txt
> >
> > Thanks, I gave it a try now and it seems to work fine so far ... but
> > the
> > initial creation of the container was quite slow, 28 minutes, that's
> > quite a
> > bit more from what I've seen with the other containers so far:
> >
> > https://gitlab.com/huth/qemu/-/jobs/853630446
> >
> > (other containers took e.g. only 10 minutes like
> > https://gitlab.com/huth/qemu/-/jobs/853630446 or 15 minutes like
> > https://gitlab.com/qemu-project/qemu/-/jobs/812284100)
> >
> > Did I maybe just hit a bad point in time?
> >
>
> No, Thanks for your suggestion, I think I can decrease the docker build
> duration.
>
>
> > Or would it make sense to trim the list of packages that need to be
> > installed?
>
> yes, I already started to trim, will submit v2 sson.
>
> >
> > For example, unless you want to test m68k-softmmu in this container,
> > too,
> > you don't need tesseract-ocr.
> >
> > And why do you need mozilla-nss-devel ?
> >
> > And I think you could also drop the mingw packages for now, unless
> > you want
> > to cross-compile some Windows binaries with this container?
> >
>
> yes, no problem. The origin plan is add some cross-compiler after this
> patch, and that I am not sure which one way to add it is that best (
> and that would not use the resource to create the docker image again.
> but I think I should patch it later.
We already have cross compiler testing with the Fedora (mingw) and Debian
images (non-x86 linux). I don't think we want to add more cross compiler
stuff if it just duplicating coverage we already haev.
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 :|