Unable to install foreman_scap_client

Problem:

[root@foreman02 ~]# dnf install foreman_scap_client --enablerepo=*
Updating Subscription Management repositories.
Red Hat Enterprise Linux 9 for x86_64 - Supplementary (RPMs)
argos-el-9
Foreman Plugins el9
Red Hat Enterprise Linux 9 for x86_64 - AppStream (RPMs)
EPEL9 x86_64
Red Hat Enterprise Linux 9 for x86_64 - BaseOS (RPMs)
Red Hat OpenShift Container Platform 4.17 for RHEL 9 x86_64 (RPMs)
No match for argument: foreman_scap_client
Error: Unable to find a match: foreman_scap_client
[root@foreman02 ~]#

Expected outcome:
foreman_scap_client installed

Foreman and Proxy versions:

This is a client system, not a Foreman server, but server is Foreman 3.13

Foreman and Proxy plugin versions:

Distribution and version:
RHEL 9.4 5.14.0-427.35.1.el9_4.x86_64

Other relevant data:
I have configure Foreman Plugins product on the Server and made it available to the client, but it seems the required rpm is not present in the repositories.

From the documentation page:

It is important to make sure foreman_scap_client package is available to your client system. Foreman plugins repo can be optionally enabled using the appropriate parameters/variables. The repo is disabled by default as users may prefer to use their own mirror.

That’s an unfortunate wording, foreman_scap_client lives in the client repo[1]. You shouldn’t really enable the plugin repo on the clients. And of course, we’ll fix that in the docs, thank you for pointing it out.

[1] - Index of /client/3.13/el9/x86_64

thanks for fining the Doc.

Did you mean:

[rubygem-foreman_scap_client-0.6.2-1.el9.noarch.rpm]

as I do not see there “foreman_scap_client”

Thanks!

Regards, Jan

Eh, yes, the package is called rubygem-foreman_scap_client. I think that if you make the client repo available and do dnf install foreman_scap_client, dnf will try to be smart and it will find the right package based on what executable it provides, but yes, better to be explicit.

1 Like

It seems DNF is not so smart, 1st I only looked at it but when I tried to run it on the system:

[root@foreman01 yum.repos.d]# dnf reinstall foreman_scap_client --enablerepo=* --disablerepo=candle*
Updating Subscription Management repositories.
Unable to read consumer identity

This system is not registered with an entitlement server. You can use subscription-manager to register.

Last metadata expiration check: 0:04:31 ago on Tue 21 Jan 2025 04:31:58 PM GMT.
No match for argument: foreman_scap_client
Error: No packages marked for reinstall.
[root@foreman01 yum.repos.d]# dnf reinstall rubygem-foreman_scap_client --enablerepo=* --disablerepo=candle*
Updating Subscription Management repositories.
Unable to read consumer identity

This system is not registered with an entitlement server. You can use subscription-manager to register.

Last metadata expiration check: 0:04:51 ago on Tue 21 Jan 2025 04:31:58 PM GMT.
Dependencies resolved.

Package Architecture Version Repository Size

Reinstalling:
rubygem-foreman_scap_client noarch 0.6.2-1.el9 foreman-plugins-client 26 k

Transaction Summary

Total download size: 26 k
Installed size: 46 k
Is this ok [y/N]: N
Operation aborted.
[root@foreman01 yum.repos.d]#

Search command will find it however:

[root@foreman01 yum.repos.d]# dnf search foreman_scap_client --enablerepo=* --disablerepo=candle*
Updating Subscription Management repositories.
Unable to read consumer identity

This system is not registered with an entitlement server. You can use subscription-manager to register.

Last metadata expiration check: 0:06:41 ago on Tue 21 Jan 2025 04:31:58 PM GMT.
=========================================================================================== Name & Summary Matched: foreman_scap_client ===========================================================================================
ansiblerole-foreman_scap_client.noarch : Packaging of the foreman_scap_client Ansible role
ansiblerole-foreman_scap_client.src : Packaging of the foreman_scap_client Ansible role
puppet-foreman_scap_client.noarch : Puppet module to configure foreman_scap_client
puppet-foreman_scap_client.src : Puppet module to configure foreman_scap_client
rubygem-foreman_scap_client-doc.noarch : Documentation for rubygem-foreman_scap_client
================================================================================================ Name Matched: foreman_scap_client ================================================================================================
rubygem-foreman_scap_client.noarch : Client script that runs OpenSCAP scan and uploads the result to foreman proxy
[root@foreman01 yum.repos.d]#

Thanks for your help!

Regards
Jan

Of foreman01 and foreman02, which is the host, which is the Foreman server, and which is the smart proxy?

Hello Jeremy,

foreman01 is the Server and foreman02 the Client.

Regards, Jan

thanks for clarifying!

Adam, please correct me if I’m wrong about any of this, but

I see you tried to install foreman_scap_client on foreman01 which is your Server. You should only need it on Hosts (foreman02).

What’s needed on the Server (foreman01) is only that the plugin has been enabled, via the appropriate foreman-installer command.

To troubleshoot why content may not be available to a registered host, check all of the following (for the Foreman Client repository), and also make sure that the host’s system time is correct.