[ https://ovirt-jira.atlassian.net/browse/OVIRT-1772?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Blocked By: Code review Status: Blocked (was: In Progress)
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-ciThere 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|rjones@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)