IBM Mainframe s390x RPM Binaries for RHEL6 and RHEL7

I would like to contribute IBM Z series RPM binaries to The Foreman yum
repository. I will not be modifying code; only compiling for the s390x
architecture for the SRPMs that aren't noarch. Is there someone here who
can point me in the right direction on getting
ahttp://yum.theforeman.org/releases/1.9/el6/s390x distribution set up?

I am not a developer by any measure. I'm simply rpmbuliding the SRPM
packages on RHEL 6 and 7 for IBM System Z (zlinux) so I'll probably need
some hand holding.

Thanks, Brian

> I would like to contribute IBM Z series RPM binaries to The Foreman yum
> repository. I will not be modifying code; only compiling for the s390x
> architecture for the SRPMs that aren't noarch. Is there someone here
> who can point me in the right direction on getting
> ahttp://yum.theforeman.org/releases/1.9/el6/s390x distribution set up?

This won't be possible until the software collections and EPEL packages
that we depend on are available for s390x, which is no small task.

EPEL is only available for x86, but there was recent talk of it -
perhaps start there
(https://lists.fedoraproject.org/pipermail/epel-devel/2015-June/011322.html).

The two SCLs (ruby193, v8314) that we currently use are again only x86
and this needs fixing in two places.

a) The original SRPMs are produced by Red Hat in RHSCL, who only provide
them on x86. For s390x users on RHEL, RHSCL would have to be shipped
for s390x. For non-RHEL users it'd be useful to know that they were
tested at least.

b) The binary RPMs from softwarecollections.org that we use on RHEL
rebuilds are only x86 as it's built on Fedora Copr which is x86-only.
This is probably a similar (if not harder) situation to EPEL where the
project would need additional hardware. #fedora-buildsys on Freenode
might be the best place to bring it up.

SCL development and distribution(?) is moving over to the CentOS
project, but they don't build for s390x either at the moment.

Once our dependencies are available, we'd need s390x builder(s) donated
and connected to our Koji instance in order to build and distribute
binaries for yum.tf.org.

> I am not a developer by any measure. I'm simply rpmbuliding the SRPM
> packages on RHEL 6 and 7 for IBM System Z (zlinux) so I'll probably need
> some hand holding.

You might find mock or mockchain a lot easier - it provides a
reproducible build environment, and can reuse existing builds to build
further packages. Example configs are in
https://github.com/theforeman/foreman-packaging/tree/rpm/develop/mock.

I'd say for now you should probably just doing a full rebuild using the
SRPMs we, EPEL and softwarecollections.org provide in mockchain (e.g.
mockchain -r el7-scl --recurse *.srpm) but be prepared as none of the
stack will have been tested under that arch. We couldn't publish the
result, but if it works you could put it somewhere like fedorapeople.org
for others to use if they wish.

It'd be good to see the proper build chains get s390x arch support, but
it would need some donations and help provided to all the relevant
projects to get it online.

Sorry for the gloomy outlook.

Cheers,

··· On 30/08/15 16:43, Brian Schonecker wrote:


Dominic Cleal
dominic@cleal.org

Hey All! 2015… and now here we are in 2019.

@Dominic_Cleal2 good prediction on this not being a small task but now we have the infrastructure and the means to do it. Here is the gameplan!

I am actively pursuing providing public s390x infrastructure to the Koji build environment. With those builders teams are going to be able to package their applications as with the other archs. See the “Accomplished” section here with details about the Koji Builders https://fedoraproject.org/wiki/Architectures/s390x#Accomplished

Next we need somewhere to put the binaries both in upstream Foreman and upstream EPEL as noted above. Can someone from the Foreman team comment and assist on creating an upstream repository for the foreman-provided yum repositories?

In parallel we are working on getting s390x trees in EL7 and EL8 EPEL

Finally I would like to have some collaboration between Foreman dev and my team to implement and integrate s390x into your current CICD pipeline. Short term I would like to replicate your build environment internally to work out the bugs and kinks. For the future though I would like to have a continuing discord in terms of maintenance and support going forward. Who would be a good candidate for this from the Foreman organization?

@pcreech I understand that you are the person to talk to about the Koji integration. But I also hear you are otherwise disposed on a paternity leave. Congratulations by the way!

If you have a waking second I would appreciate any insight on the above.

Just to clarify, are we talking about client tools repo or whole Foreman running on s390x?

@lzap the end goal is to have Foreman in all of it’s entirety running on s390x

Okay, Foreman for IBM Z and LinuxONE sounds exciting. Not sure who you talked to but we have a dedicated @packaging team and they might be able to comment on that. We build our packages on our own Koji hosted on EC2, currently only intel: http://koji.katello.org/koji/hosts?state=all&order=name but there is some effort to bring Foreman to ARM. I am not sure how far it got.

So I have been chatting with @ekohl and a few other members on IRC about how to best approach this and the parts that are needed.

We build our packages on our own Koji hosted on EC2, currently only intel

Ok so I thought the Koji piece of the puzzle was taking care of but it sounds like I am going to have to work with the @packaging (I can’t @ because I’m a new user :frowning: ) and @pcreech to get a Koji node into your environment. Could someone speak to what kind of specs y’all currently have set up for the Intel (x86) node so that I can put in the request to have something of similar sizing?

FYI there is another conversation where we are discussing the changes needed to the foreman-installer and other components to support s390x here

It’s good to realize there’s koji the software and there’s instances. https://koji.fedoraproject.org/koji/ is the Fedora one. We have our own at http://koji.katello.org/koji/. The one you found was adding nodes to the Fedora infra. Personally I have no experience with adding nodes so I can’t speak to how we’d do it in our infra.

Adding nodes is documented at: KojiBuilderSetup - Foreman

However, I can hardly imagine a node outside of EC2 as nodes use NFS extensively to reach out to repodata. This needs to be on LAN otherwise we will spend all the money on data transfers.