#341 inventory/standard-inventory-qcow2: Support running on multiple architectures
Merged by astepano. Opened by jkucera.
jkucera/standard-test-roles python3-multiarch-standard-invertory-qcow2  into  master

Download 341.patch

With these changes, it can be possible to use standard-inventory-qcow2 for running tests on multiple architectures. The proposed changes were tested on RHEL 8 and all its supported architectures: x86_64, aarch64, ppc64le, and s390x.

The purpose of these changes was the requirement of Quality Engineering to test rhel-system-roles on all supported architectures.

How standard-inventory-qcow2 was tested?

First, the Beaker machines were reserved:

(a) for x86_64:

wow rhel-8 --reserve --bare --arch x86_64 --edit

in job.xml, between <hostRequires><and>...</and></hostRequires>:

<cpu>
  <or>
    <flag op="=" value="vmx" />
    <flag op="=" value="svm" />
  </or>
</cpu>

(b) for aarch64:

wow rhel-8 --reserve --bare --arch aarch64

(c) for ppc64le:

wow rhel-8 --reserve --arch ppc64le --kernel-options-post=disable_radix --edit

in job.xml:

<hostRequires>
  <system>
    <or>
      <hypervisor op="=" value="" />
      <hypervisor op="=" value="PowerVM" />
    </or>
  </system>
</hostRequires>

(d) for s390x:

wow rhel-8 --reserve --arch s390x --edit

in job.xml:

<hostRequires>
  <system>
    <memory op=">=" value="2048" />
  </system>
</hostRequires>

Second, the beaker machines were prepared:

dnf -y install ansible qemu-kvm genisoimage rhel-system-roles python3-fmf

Finally, the test was run:

TEST_SUBJECTS=./rhel8-image-latest.$(uname -m).qcow2 ansible-playbook -vvv -i ./standard-inventory-qcow2 /usr/share/ansible/roles/rhel-system-roles.timesync/tests/tests_default.yml

2 new commits added

  • inventory/standard-inventory-qcow2: Support running on multiple architectures
  • inventory/standard-inventory-qcow2: Wait for SSH to come up a bit longer

2 new commits added

  • inventory/standard-inventory-qcow2: Support running on multiple architectures
  • inventory/standard-inventory-qcow2: Wait for SSH to come up a bit longer

Note: the idea is to launch a VM of the same architecture as the host we are running on. No cross-platform emulation is attempted (would probably be very slow).

Jenkins is failing, but this does not seem a problem in the PR. Jenkins log shows lots of "Permission denied" errors.

pretty please pagure-ci rebuild

2 new commits added

  • inventory/standard-inventory-qcow2: Support running on multiple architectures
  • inventory/standard-inventory-qcow2: Wait for SSH to come up a bit longer

pretty please pagure-ci rebuild

pretty please pagure-ci rebuild

@pcahyna @jkucera seems a great addition to the provisioner!
Thank you for the contribution.
CI passed. ACK to merge.

Commit 14022d56 fixes this pull-request

Pull-Request has been merged by astepano

Pull-Request has been merged by astepano

Metadata