[0/3] automation: build Xen in openSUSE Tumbleweed
mbox series

Message ID 156458463216.7075.10552410480716651842.stgit@Palanthas
Headers show
Series
  • automation: build Xen in openSUSE Tumbleweed
Related show

Message

Dario Faggioli July 31, 2019, 4:58 p.m. UTC
The openSUSE distribution comes in two flavours: Leap, which is
non-rolling, and released annualy, and Tumbleweed, which is rolling.

In general, they are quite similar, but the versions of the software
they ship can be significantly different. As it is easy to imagine,
Tumbleweed, being rolling, has much more recent and updated packages.

Actually, Tumbleweed often ships the most updated releases of various
software and projects, among many distribution around.

For instance, right now, Tumbleweed has gcc 9.1.1. Fedora Rawhide also
seems to have 9.1.1, while Fedora 30 has 9.0.1. Debian Unstable and
Ubuntu Disco both have 8.3.0, AFAICT.

Of course, it's not at all like "the more updated the better", or
anything like that! It's just that I see some value in having, as a part
of our CI:
- more diversity, in terms of versions of the packages/software we try
  to build Xen with and against;
- a "bleeding edge" environment, in order to catch, or at least be
  aware of, build issues with latest compilers and/or when linking
  against the latest version of this and that library.

Interestingly, in the past couple of days, a few build issues of Xen,
qemu-xen and ipxe (at the commit that we were checking out) with gcc
9.1.1 where discovered and fixed. And --at least as far as the ones
I've reported/fixed-- I found about them while building Xen in
openSUSE Tumbleweed (while working on this patch series :-D ).

Happy to hear what people think about all this. :-)

Oh, BTW, apart from adding the Tumbleweed dockerfile and CI jobs, the
series also does some minor tweaking of the already present openSUSE
Leap dockerfile (in patch 1).

Thanks and Regards.
---
Dario Faggioli (3):
      automation: try to keep openSUSE Leap image a little smaller
      automation: add openSUSE Tumbleweed CI image
      automation: build in openSUSE Tumbleweed

 automation/build/suse/opensuse-leap.dockerfile     |    6 +-
 .../build/suse/opensuse-tumbleweed.dockerfile      |   68 ++++++++++++++++++++
 automation/gitlab-ci/build.yaml                    |   20 ++++++
 3 files changed, 91 insertions(+), 3 deletions(-)
 create mode 100644 automation/build/suse/opensuse-tumbleweed.dockerfile
--
Dario Faggioli, Ph.D
http://about.me/dario.faggioli
Virtualization Software Engineer
SUSE Labs, SUSE https://www.suse.com/
-------------------------------------------------------------------
<<This happens because _I_ choose it to happen!>> (Raistlin Majere)

Comments

Andrew Cooper Aug. 3, 2019, 4:22 p.m. UTC | #1
On 31/07/2019 17:58, Dario Faggioli wrote:
> The openSUSE distribution comes in two flavours: Leap, which is
> non-rolling, and released annualy, and Tumbleweed, which is rolling.
>
> In general, they are quite similar, but the versions of the software
> they ship can be significantly different. As it is easy to imagine,
> Tumbleweed, being rolling, has much more recent and updated packages.
>
> Actually, Tumbleweed often ships the most updated releases of various
> software and projects, among many distribution around.
>
> For instance, right now, Tumbleweed has gcc 9.1.1. Fedora Rawhide also
> seems to have 9.1.1, while Fedora 30 has 9.0.1. Debian Unstable and
> Ubuntu Disco both have 8.3.0, AFAICT.
>
> Of course, it's not at all like "the more updated the better", or
> anything like that! It's just that I see some value in having, as a part
> of our CI:
> - more diversity, in terms of versions of the packages/software we try
>   to build Xen with and against;
> - a "bleeding edge" environment, in order to catch, or at least be
>   aware of, build issues with latest compilers and/or when linking
>   against the latest version of this and that library.
>
> Interestingly, in the past couple of days, a few build issues of Xen,
> qemu-xen and ipxe (at the commit that we were checking out) with gcc
> 9.1.1 where discovered and fixed. And --at least as far as the ones
> I've reported/fixed-- I found about them while building Xen in
> openSUSE Tumbleweed (while working on this patch series :-D ).
>
> Happy to hear what people think about all this. :-)
>
> Oh, BTW, apart from adding the Tumbleweed dockerfile and CI jobs, the
> series also does some minor tweaking of the already present openSUSE
> Leap dockerfile (in patch 1).
>
> Thanks and Regards.
> ---
> Dario Faggioli (3):
>       automation: try to keep openSUSE Leap image a little smaller

I've pushed patch 1, and refreshed the leap container.

I have also pushed a tumbleweed container, but the build is currently
failing in Qemu.

https://gitlab.com/xen-project/people/andyhhp/xen/-/jobs/265301303

I have also pushed patch 2, because that is the dockerfile which matches
the current container.  However, I won't push patch 3 (adding it into
CI) until the build errors are resolved.

~Andrew
Dario Faggioli Aug. 5, 2019, 9:44 a.m. UTC | #2
On Sat, 2019-08-03 at 17:22 +0100, Andrew Cooper wrote:
> On 31/07/2019 17:58, Dario Faggioli wrote:
> > 
> > Interestingly, in the past couple of days, a few build issues of
> > Xen,
> > qemu-xen and ipxe (at the commit that we were checking out) with
> > gcc
> > 9.1.1 where discovered and fixed. And --at least as far as the ones
> > I've reported/fixed-- I found about them while building Xen in
> > openSUSE Tumbleweed (while working on this patch series :-D ).
> > 
> > ---
> > Dario Faggioli (3):
> >       automation: try to keep openSUSE Leap image a little smaller
> 
> I've pushed patch 1, and refreshed the leap container.
> 
> I have also pushed a tumbleweed container, but the build is currently
> failing in Qemu.
> 
> https://gitlab.com/xen-project/people/andyhhp/xen/-/jobs/265301303
> 
Ah, interesting... I tested locally and wasn't seeing this.

Anyway, it seems that, in addition to the one I mentioned to Anthony a
few days ago, we also miss this from upstream?

commit 2d2023c3b99edb33ad4bb9791f70456ea1a1c049
sockets: avoid string truncation warnings when copying UNIX path

Anthony, do you think it's fine to import that patch? Or should I try
to rebuild and see if run into the issue this time, and if that patch
fixes it?

Regards
Anthony PERARD Aug. 6, 2019, 10:12 a.m. UTC | #3
On Mon, Aug 05, 2019 at 11:44:11AM +0200, Dario Faggioli wrote:
> Anyway, it seems that, in addition to the one I mentioned to Anthony a
> few days ago, we also miss this from upstream?
> 
> commit 2d2023c3b99edb33ad4bb9791f70456ea1a1c049
> sockets: avoid string truncation warnings when copying UNIX path
> 
> Anthony, do you think it's fine to import that patch? Or should I try
> to rebuild and see if run into the issue this time, and if that patch
> fixes it?

I've pushed that patch and that other one:
  ccb799313a5926a6aa49018bbc67fe6165fad7f3
  hw/usb: avoid format truncation warning when formatting port name

with those two I could build a qemu in the tumbleweed container, but
there are maybe other commit missing.
Dario Faggioli Aug. 6, 2019, 1:17 p.m. UTC | #4
On Tue, 2019-08-06 at 11:12 +0100, Anthony PERARD wrote:
> On Mon, Aug 05, 2019 at 11:44:11AM +0200, Dario Faggioli wrote:
> > Anyway, it seems that, in addition to the one I mentioned to
> > Anthony a
> > few days ago, we also miss this from upstream?
> > 
> > commit 2d2023c3b99edb33ad4bb9791f70456ea1a1c049
> > sockets: avoid string truncation warnings when copying UNIX path
> > 
> > Anthony, do you think it's fine to import that patch? Or should I
> > try
> > to rebuild and see if run into the issue this time, and if that
> > patch
> > fixes it?
> 
> I've pushed that patch and that other one:
>   ccb799313a5926a6aa49018bbc67fe6165fad7f3
>   hw/usb: avoid format truncation warning when formatting port name
> 
> with those two I could build a qemu in the tumbleweed container, but
> there are maybe other commit missing.
> 
You mean the build is still failing for you, but not in QEMU?

I've just tried, and the only problem I'm seeing is the
test-cpu-policy.c one that has already been reported, but is believed
to be a gcc problem.

Regards
Anthony PERARD Aug. 6, 2019, 1:34 p.m. UTC | #5
On Tue, Aug 06, 2019 at 03:17:26PM +0200, Dario Faggioli wrote:
> On Tue, 2019-08-06 at 11:12 +0100, Anthony PERARD wrote:
> > with those two I could build a qemu in the tumbleweed container, but
> > there are maybe other commit missing.
> > 
> You mean the build is still failing for you, but not in QEMU?

I have built QEMU but without Xen. The container I used didn't have the
Xen libraries and I didn't try to build or install them.

> I've just tried, and the only problem I'm seeing is the
> test-cpu-policy.c one that has already been reported, but is believed
> to be a gcc problem.

Thanks for confirming it all works :).