Can not build s390x on x86_64 host
Opened this issue · 3 comments
Describe the bug
On a Slowroll in a checkout of clisp
werner/clisp> cat .osc/_p*
clisp
devel:languages:misc
I run the command
osc -A extern build --vm-type=qemu --verbose-mode=vm openSUSE_Factory s390x --clean
all went well upto
[ 67s] [FAILED] Failed to start Switch Root.
entering the maintenance mode I have just done
systemctl status initrd-switch-root.service -l
and see
[ 159s] × initrd-switch-root.service - Switch Root
[ 159s] Loaded: loaded (/usr/lib/systemd/system/initrd-switch-root.service; static)
[ 159s] Active: failed (Result: exit-code) since Fri 2024-08-30 07:10:58 UTC; 1min 32s ago
[ 159s] Invocation: 73867392643e49938a39d19ddd277218
[ 159s] Process: 509 ExecStart=systemctl --no-block switch-root (code=exited, status=1/FAILURE)
[ 159s] Main PID: 509 (code=exited, status=1/FAILURE)
[ 159s] Mem peak: 1M
[ 159s] CPU: 402ms
[ 159s]
[ 159s] Aug 30 07:10:57 localhost systemd[1]: Starting Switch Root...
[ 159s] Aug 30 07:10:58 localhost @ystemctl[509]: Failed to switch root: Specified switch root path '/sysroot' does not seem to be an OS tree. os-release file is missing.
[ 159s] Aug 30 07:10:58 localhost systemd[1]: initrd-switch-root.service: Main process exited, code=exited, status=1/FAILURE
[ 159s] Aug 30 07:10:58 localhost systemd[1]: initrd-switch-root.service: Failed with result 'exit-code'.
[ 159s] Aug 30 07:10:58 localhost systemd[1]: Failed to start Switch Root.
[ 159s] Aug 30 07:10:58 localhost systemd[1]: initrd-switch-root.service: Triggering OnFailure= dependencies.
Versions
- Operating system: openSUSE Tumbleweed-Slowroll
- Packages: osc-1.6.1-2.1.noarch, qemu-s390x-8.2.2-10.1.x86_64
To Reproduce
see above
Expected behavior
a running build of clisp.spec upto the error seen on OBS
Screenshots, console outputs
see above
The fault is that one has decided to drop /etc/os-release but the build with qemu with different architecture requires a root switch
Failed to switch root: Specified switch root path '/sysroot' does not seem to be an OS tree. os-release file is missing.
Hmmm
losetup --find --show openSUSE_Factory-s390x.image
mount /dev/loop0 /mnt
cp /etc/os-release /mnt/etc/os-release
umount /mnt
losetup --detach /dev/loop0
skipp --clean
from osc build
and redo ... currently it seems to work
osc-1.6.1 is a bit outdated, but that shouldn't be a problem, it only passes arguments to the build
(obs-build) tool.
I've tested the build on Tumbleweed and it works fine.
Maybe there was a problem with the build root content, possibly not installing package with /etc/os-release
as you suggested above.
Since I can't reproduce it, would you mind me closing this issue?