Releases: linux-system-roles/storage
Fix tests_lvm_errors; skip vdo tests if dm-vdo not found
use volume1_size; check for expected error
https://bugzilla.redhat.com/show_bug.cgi?id=1990793
The test was using volume_size
, which is undefined, instead
of volume1_size
. Furthermore, the error was being masked by
the rescue
block because the rescue was not checking for the
correct error message. The fix is to use volume1_size
AND check
for the correct error message.
I'll note that there are several tests that do not look for the
correct error message, and we may run into this problem with other
tests.
skip test if kvdo and dm-vdo are not found
https://bugzilla.redhat.com/show_bug.cgi?id=1991062
Am getting this error when testing vdo:
Failed to commit changes to disk: Process reported exit code 3: modprobe: FATAL: Module dm-vdo not found in directory /lib/modules/5.14.0-0.rc4.35.el9.x86_64
/usr/sbin/modprobe failed: 1
vdo: Required device-mapper target(s) not detected in your kernel.
Run `lvcreate --help' for more information.
So I'll just skip vdo testing unless both kvdo and dm-vdo are found.
tag tests that use NVME and SCSI
tag tests that use NVME and SCSI
some test environments like the basic smoke test do not have access to NVME
or SCSI devices. We need to be able to skip these tests.
omit unnecessary conditional - deadcode reported by static scanner
omit unnecessary conditional - deadcode reported by static scanner
The list comprehension does not need the conditional evaluation since
the condition is already checked by the if
clause. This code
triggers a warning by a static code checker.
Also adds the scsi and nvme tests for tests_lvm_percent_size
which was added by an earlier commit.
Support percentage-based volume sizes; test NVME and SCSI
Added support for NVME and SCSI HW test setup
This change serves to cover the gap in testing until CI rework is complete.
CI currently does not support creation of multiple VMs to run the tests
with different hardware settings. To overcome this, provision.fmf
will now create
single VM with triple the amount of disks - additional disks will use NVME and SCSI respectively.
find_unused_disk
will filter its results by specified interface.
New script generate_tests.py
was added. It automatically generates new test playbooks based
on discovered tests_*.yml files.
Two additional scripts in /tests/scripts
directory pre-commit
and post-commit
are prepared
git hooks that ensure that tests are properly generated and added to each new commit.
However these two scripts have to be manually copied to <storage_role_repo>/.git/hooks/ and made
executable for the hook to work.
skip vdo test if kernel module is not loadable
The vdo kernel module is an "out of tree" module which means that it
may not be available if the vdo module version does not match the
current kernel version. In that case, skip the vdo test so that we
don't get a false positive test result.
Add support for percentage-based volume sizes.
Volume sizes of the form 'XX%' (where 'XX' is an integer no greater
than 100) will be intepreted as a percentage of the size of the pool
that will contain the volume.
Simplify conditionals in volume size verification routines.
Handle int sizes such as default of 0 for a disk size.
Allow a tolerance of up to 1% when verifying volume size in tests.
Fixed volume relabeling
Fixed volume relabeling
- modifying volume label no longer causes test failure
- added forced udev update which should fix occasional test failures
- added test
Fixes #99
LVMVDO support
LVMVDO support (#181)
- LVMVDO support
- added support for LVM VDO
- new accepted pool options:
- vdo_compression
- vdo_deduplication
- vdo_size
- added tests for LVM VDO
- added support for COPR repositories
Several bug fixes; fix lint issues; support EL 9
Capture inherited volume type in return value.
Be smarter in choosing expected partition name.
Automatically reduce volume size as needed to fit in pool.
Work around udev race by triggering change uevent after create actions.
Look up disks as needed for partition pool device lookup.
Allow lookup of pool by name only.
Fix lint issues
Changes to default parameter handling; other fixes
Previously, when you did not specify parameters when using the role, the role always used the parameters from defaults/main.yml
.
Beginning with version 1.3.0, the role interprets unspecified parameters differently depending on the state of pools and volumes that you operate on:
- When creating new pools and volumes, unspecified parameters use the default value from
defaults/main.yml
. - When modifying existing pools and volumes, unspecified parameters do not change the settings of the pool or volume. Therefore, to modify an existing pool or volume, you must explicitly specify parameters in the role variables.
Only expect to find LUKS metadata on encrypted volumes.
Fix crash checking for duplicate names when pool has no volumes.
Add empty disk list to pool and volume defaults.
Updated exception message
Confusing error message fix
Non-existent pool removal fix
Changes to support conversion to collections
This contains changes to support conversion to collection as well as some tox/travis fixes. No functionality changes.
Toggling encryption forbidden in safe mode
As documented, toggling encryption on a pool or volume is a destructive operation. With this release, it becomes forbidden in safe mode (on by default), because it could lead to an unexpected loss of data.