KVM builds fail if the path of the repository working copy contains spaces
theMarix opened this issue · 0 comments
Describe the bug
When invoking osc build --vm-type kvm
on a local repository working copy for which the full path contains space, the build will fail right after finalising the build dir with the following trailing log lines message:
[ 19s] /.build/build.dist: No such file or directory
[ 19s] /.build/build.dist: No such file or directory
[ 19s] [ 13.345949][ T1] sysrq: Power Off
[ 19s] [ 13.347627][ T10] reboot: Power down
Versions
- Operating system: openSUSE Tumbleweed, but this also happens on Leap 15.5
- Packages:
osc-1.6.1-1.1.noarch
To Reproduce
Steps to reproduce the behavior:
- Create a directory that contains a space, i.e. in
$HOME
run: `mkdir 'White Space' - Enter the directory:
cd 'White Space'
- Check out an aribtrary repository:
osc co devel:libraries:c_c++/inih
- Enter repository:
cd devel\:libraries\:c_c++/inih/
- Run KVM-based build:
osc build --kvm
- Observe the build failing.
Expected behavior
I'd expect the build to behave the same as in a directory where there are no spaces in the path.
Screenshots, console outputs
I have attached console logs of space.log and of no space.log.
The trailing bit of the output for the build run in ~/White Space/devel:libraries:c_c++/inih
is the following:
[ 18s] now finalizing build dir...
[ 18s] ... running 01-add_abuild_user_to_trusted_group
[ 18s] ... running 02-set_timezone_to_utc
[ 18s] ... running 03-set-permissions-secure
[ 18s] ... running 11-hack_uname_version_to_kernel_version
[ 19s] WARNING could not set SOURCE_DATE_EPOCH, ensure BUILD_RELEASE is set in /.buildenv
[ 19s] /etc/profile.d/suse-buildsystem.sh: line 53: test: : integer expression expected
[ 19s] /.build/build.dist: No such file or directory
[ 19s] /.build/build.dist: No such file or directory
[ 19s] [ 13.345949][ T1] sysrq: Power Off
[ 19s] [ 13.347627][ T10] reboot: Power down
[ 19s]
[ 19s] localhost.localdomain failed "build inih.spec" at Fri Mar 15 10:22:40 UTC 2024.
[ 19s]
Build failed with exit code 1
The buildroot was: /var/tmp/build-root-linux/openSUSE_Factory-x86_64/.mount
In contrast, when running the same build in ~/devel:libraries:c_c++/inih
the same section of the log looks as follows and the build continues on to success:
[ 13s] now finalizing build dir...
[ 13s] ... running 01-add_abuild_user_to_trusted_group
[ 13s] ... running 02-set_timezone_to_utc
[ 13s] ... running 03-set-permissions-secure
[ 13s] ... running 11-hack_uname_version_to_kernel_version
[ 13s] WARNING could not set SOURCE_DATE_EPOCH, ensure BUILD_RELEASE is set in /.buildenv
[ 13s] /etc/profile.d/suse-buildsystem.sh: line 53: test: : integer expression expected
[ 13s] -----------------------------------------------------------------
[ 13s] I have the following modifications for inih.spec:
[ 13s] -----------------------------------------------------------------
[ 13s] ----- building inih.spec (user abuild)
[ 13s] -----------------------------------------------------------------