-
Bug
-
Resolution: Unresolved
-
Major
-
None
-
4.18
-
None
-
False
-
Description of problem:
The compliance operator content is built in the ComplianceAsCode/content repository. We build rules there as YAML files, which the content build system converts to XML that meets the OVAL and XCCDF standards. The build system uses `platform` and `platforms` to denote if a rule is applicable to a given system (e.g., ocp4-node, or aarch64_arch). The RHEL Compliance team has asked that we use `platform` instead of `platforms`, which is more complex and overly engineered. For our purposes, we should be able to sort our rules into profiles using `platform`. However, using `platform` in the rule and in the profile results in the following error at build time: $ ./build_product ocp4 rhcos4 --datastream-only ... TypeError: argument of type 'NoneType' is not iterable This is because the platform isn't safely checked before it's used to build the required OVAL/XCCDF. Â
Version-Release number of selected component (if applicable):
Development versions of the Compliance Operator. Doesn't affect end-users, but makes writing the content for ARM64 more complicated.
How reproducible:
100%
Steps to Reproduce:
1. ./build_product ocp4 rhcos4 --datastream-only   2. 3.
Actual results:
TypeError
Expected results:
The build system should product XCCDF datastream XML files of the OCP4 content in build/
Additional info: