Kickstart files valid for Red Hat Enterprise Linux 6 are now correctly recognized by "ksvalidator"
Previously, when using the "ksvalidator" utility to validate a Kickstart file made for Red Hat Enterprise Linux 6 that uses the "logvol" command with the `--reserved-percent` option, "ksvalidator" incorrectly stated that `--reserved-percent` is not a valid option. This bug has been fixed.
Description of problem:
If I validate a RHEL6 kickstart on a RHEL7 server using pykickstart's ksvalidator (pykickstart-220.127.116.11-1.el7), it errors saying that "reserved-percent" is not valid. Using the older version supplied with RHEL6 (pykickstart-1.74.20-1.el6) does not error.
The documentation for RHEL6 indicated that the option is in fact supported (confirm with a test deploy):
--reserved-percent= — Specify a percentage of total volume group space to leave unused. Only usable when creating a new volume group.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. include "--reserved-percent=" on a Rhel 6 kickstart
2. run ksvalidator -v RHEL6 /location/of/kickstart
no such option: --reserved-percent
--reserved-percent is a valid option.
This is a valid option for RHEL 7 kickstart as well. Thus, running ksvalidator against the kickstart without specifying the version will work (So long as no removed options are used)
Just a bit more info:
This does work properly in 1.74 (the version in RHEL6). The validation function for volgroup differs between these versions:
From volgroup.py v.1.74:
And from v.1.99:
FC16_VolGroup inherits from FC3_VolGroup and adds "--reserved-percent" as a valid option. Using FC16_VolGroup in 1.99 allows it to work as expected (as well as adjusting the parse line later in the function).
Needs a cherry-pick of 207ca9a5f371415096a2a3f3d9d88798a7ecd9ef.
FYI: One of my coworkers submitted a patch for this issue which was merged in the upstream project:
Ah I see that is the commit that was referred to. Awesome, sorry for the noise.
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.
For information on the advisory, and where to find the updated
files, follow the link below.
If the solution does not work for you, open a new bug report.