This policy is inventory related to redhat hosts.

common bodies

inventory_redhat

Prototype: inventory_redhat

Description: Red Hat inventory bundle

This common bundle is for Red Hat Linux inventory work.

Implementation:

code
bundle common inventory_redhat
{
  classes:
      "redhat_pure" or => { strcmp( "$(sys.os_release[ID])" , "rhel" ),  # Red Hat > 7 have /etc/os-release and the ID field is set to rhel
                            strcmp( "any", and( "redhat.!(centos|oracle|fedora|rocky|almalinux)", # Red Hat < 7 does not have /etc/os-release, and is pure if we don't find another known derivative
                                 not( isvariable( "sys.os_release" ))))},
        comment => "pure Red Hat",
        meta => { "inventory", "attribute_name=none" };

      "redhat_derived" expression => "redhat.!redhat_pure",
      comment => "derived from Red Hat",
      meta => { "inventory", "attribute_name=none" };

      "inventory_redhat_have_python_symlink" expression => fileexists("$(sys.bindir)/cfengine-selected-python");
}