[JIRA] (OVIRT-1772) s390x build support for oVirt infra
Barak Korren (oVirt JIRA)
jira at ovirt-jira.atlassian.net
Sat Dec 9 23:07:54 UTC 2017
[ https://ovirt-jira.atlassian.net/browse/OVIRT-1772?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=35481#comment-35481 ]
Barak Korren commented on OVIRT-1772:
-------------------------------------
Current direction for implementing support is to use a loaned slave managed by Dan Horak. This requires patching STDCI code to be able to run on a slave where we don't have full sudo privileges, as well as adding some new mock_runner configuration. Patches implementing these two things have been implemented and tested. (Linked to this ticket)
> s390x build support for oVirt infra
> -----------------------------------
>
> Key: OVIRT-1772
> URL: https://ovirt-jira.atlassian.net/browse/OVIRT-1772
> Project: oVirt - virtualization made easy
> Issue Type: Improvement
> Components: oVirt CI
> Reporter: Barak Korren
> Assignee: infra
> Labels: s390x, standard-ci
>
> There has been some recent interest in the community lately in building oVirt node components for the s390x architecture.
> Here is a list of things we would need in order to enable s390x builds:
> * Bring up some s390x Jenkins slave VMs, this implies:
> ** Getting s390x VMs up and running
> ** Getting an operating system for these VMs
> ** Getting Java running on these VMs, in order to run the Jenkins agent.
> * Enable '{{mock_runner.sh}}' to create s390x build environments.
> * Create '{{build-artifacts}}' jobs for s390x
> The easiest way get s390x slave VMs would be if we could get our hands on some real s390x machines, just like the ppc64le machines we currently have. But this does not seem to be likely to happen. An alternative would be to use some kind of s390x emulation. This kind of emulation seems to be used by the Fedora project for their s390x builds. A version of qemu that supports s390x is available in EPEL in the '{{qemu-system-s390x}}' package. Once installed, the package adds the following libvirt capabilities structure:
> {code}
> <guest>
> <os_type>hvm</os_type>
> <arch name='s390x'>
> <wordsize>64</wordsize>
> <emulator>/usr/bin/qemu-system-s390x</emulator>
> <machine maxCpus='255'>s390-virtio</machine>
> <machine canonical='s390-virtio' maxCpus='255'>s390</machine>
> <machine maxCpus='255'>s390-ccw-virtio</machine>
> <machine canonical='s390-ccw-virtio' maxCpus='255'>s390-ccw</machine>
> <domain type='qemu'/>
> </arch>
> <features>
> <cpuselection/>
> <deviceboot/>
> <disksnapshot default='on' toggle='no'/>
> </features>
> </guest>
> {code}
> So it seems we can get s390x VMs running on our x86_64 hardware. The next issue to tackle would be to get an OS running on these VMs. The seems to be a Fedora s390x release but not a CentOS one. Neither of these projects release an s390x cloud image, so we may end up having to make our own using '{{virt-install}}' or try to convince [Richard Jones|mailto:rjones at redhat.com] to make such images available in '{{virt-builder}}'.
> Once we have VMs up, we need to turn them into Jenkins slaves. Hopefully the s390x Fedora build includes Java so this may be trivial.
> To get '{{mock_runner.sh}}' support we would need an appropriates '{{mock}}' configuration files. Suitable files for Fedora on s390x package seems to already be shipped with the '{{mock}}' package, so there is not much to do there besides copying the file into our '{{jenkins}}' repo and making the usual adjustments we typically make to enable proxy and mirrors support.
> Once we have all of that up and running, adding s390x '{{build-artifacts}}' jobs would be trivial, we'll just have to add the right tags in the JJB YAML.
--
This message was sent by Atlassian Jira
(v1001.0.0-SNAPSHOT#100074)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ovirt.org/pipermail/infra/attachments/20171209/a12e8728/attachment.html>
More information about the Infra
mailing list