[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: |
Thomas Huth |
Subject: |
Re: [PATCH] gitlab-ci.yml: Add openSUSE Leap 15.2 for gitlab CI/CD |
Date: |
Tue, 17 Nov 2020 12:51:10 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.12.0 |
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?
Or would it make sense to trim the list of packages that need to be installed?
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?
Also, do we need clang/llvm in here? sparse? nmap? glibc-devel-32bit?
libzip-devel?
And why is there libvte-2_91-0, but no libvte-2_91-devel ?
I think at least some of those packages could be dropped, indeed.
Thomas