yast / yast-storage-ng

Rewrite of https://github.com/yast/yast-storage
http://yast.github.io/
GNU General Public License v2.0
13 stars 19 forks source link

Fix unlimited-sized fake device graphs (bsc#1221222) #1375

Closed shundhammer closed 4 months ago

shundhammer commented 4 months ago

Bugzilla

https://bugzilla.suse.com/show_bug.cgi?id=1221222

Problem

Build failure of yast-storage-ng with the latest SWIG bindings.

Cause

The unit tests use DiskSize::unlimited in the YAML files for many test scenarios for LVs, and that results in a value -1 which clashes with the libstorage function prototype that expects unsigned long long for create_lvm_lv().

Obviously SWIG decides at runtime (!) which C++ function to call, and now the checks appear to be stricter: A -1 worked well until this version; it had obviously converted it to the bit pattern of the expected unsigned type, in this case resulting in 16 EiB - 1. Now that doesn't work anymore.

Fix

Don't use unlimited for LVM LVs in the YAML fake device graphs; that's unrealistic and not possible in real life anyway.

This fix is limited purely to unit test data. There is no code change.

Related PRs

coveralls commented 4 months ago

Coverage Status

coverage: 97.81%. remained the same when pulling e8f9426280fea63fd484f48b3c320dd2561c1184 on huha-no-unlimited-lvs into b3e7d0d6ab334f7f6484646a615fe1ad5e66744d on master.

yast-bot commented 4 months ago

:x: Internal Jenkins job #1149 failed

shundhammer commented 4 months ago

Submitted manually to Factory:

https://build.opensuse.org/request/show/1157596

yast-bot commented 4 months ago

:heavy_check_mark: Internal Jenkins job #1150 successfully finished :heavy_check_mark: Created OBS submit request #1157604