Uploaded image for project: 'Satellite'
  1. Satellite
  2. SAT-19504

Generating SCAP report fails with cannot load such file -- json (LoadError) error on RHEL 9

XMLWordPrintable

    • Low
    • None

      Description of problem:

      • Generating SCAP report fails with the following error on RHEL 9.

      ~~~
      cannot load such file – json (LoadError)
      ~~~

      Version-Release number of selected component (if applicable):

      • RHEL 9

      How reproducible:

      • In scenarios where rubygem-json is not installed.

      Steps to Reproduce:

      1. Exclude the package rubygem-json from the repository. A CV filter can be used if the client is registered to a Satellite

      2. Install the package `rubygem-foreman_scap_client`

      3. Run `/usr/bin/foreman_scap_client`

      Actual results:

      • foreman_scap_client fails with the following error.

      ~~~

      1. /usr/bin/foreman_scap_client 1
        <internal:/usr/share/rubygems/rubygems/core_ext/kernel_require.rb>:85:in `require': cannot load such file – json (LoadError)
        from <internal:/usr/share/rubygems/rubygems/core_ext/kernel_require.rb>:85:in `require'
        from /usr/share/gems/gems/foreman_scap_client-0.5.0/lib/foreman_scap_client/base_client.rb:9:in `<top (required)>'
        from <internal:/usr/share/rubygems/rubygems/core_ext/kernel_require.rb>:85:in `require'
        from <internal:/usr/share/rubygems/rubygems/core_ext/kernel_require.rb>:85:in `require'
        from /usr/share/gems/gems/foreman_scap_client-0.5.0/lib/foreman_scap_client/client.rb:1:in `<top (required)>'
        from <internal:/usr/share/rubygems/rubygems/core_ext/kernel_require.rb>:85:in `require'
        from <internal:/usr/share/rubygems/rubygems/core_ext/kernel_require.rb>:85:in `require'
        from /usr/share/gems/gems/foreman_scap_client-0.5.0/lib/foreman_scap_client.rb:2:in `<top (required)>'
        from <internal:/usr/share/rubygems/rubygems/core_ext/kernel_require.rb>:85:in `require'
        from <internal:/usr/share/rubygems/rubygems/core_ext/kernel_require.rb>:85:in `require'
        from /usr/share/gems/gems/foreman_scap_client-0.5.0/bin/foreman_scap_client:3:in `<top (required)>'
        from /usr/bin/foreman_scap_client:23:in `load'
        from /usr/bin/foreman_scap_client:23:in `<main>'
        ~~~

      Expected results:

      • Installation of rubygem-foreman_scap_client should fail if rubygem-json is not available for some reason.

      Additional info:

      • There seems to be some issue with the dependencies.
      • rubygem-foreman_scap_client can be installed with or without the rubygem-json package. See the transactions below. On the second transaction, rubygem-json package was filtered using CV filter.

      ~~~

      1. dnf install rubygem-foreman_scap_client

      Dependencies resolved.
      ==================================================================================================================================================================================
      Package Architecture Version Repository Size
      ==================================================================================================================================================================================
      Installing:
      rubygem-foreman_scap_client noarch 0.5.0-1.el9sat satellite-client-6-for-rhel-9-x86_64-rpms 25 k
      Installing dependencies:
      bzip2 x86_64 1.0.8-8.el9 rhel-9-for-x86_64-baseos-rpms 60 k
      libtool-ltdl x86_64 2.4.6-45.el9 rhel-9-for-x86_64-appstream-rpms 39 k
      libxslt x86_64 1.1.34-9.el9 rhel-9-for-x86_64-appstream-rpms 247 k
      openscap x86_64 1:1.3.6-4.el9 rhel-9-for-x86_64-appstream-rpms 2.0 M
      openscap-scanner x86_64 1:1.3.6-4.el9 rhel-9-for-x86_64-appstream-rpms 61 k
      ruby x86_64 3.0.4-160.el9_0 rhel-9-for-x86_64-appstream-rpms 45 k
      ruby-libs x86_64 3.0.4-160.el9_0 rhel-9-for-x86_64-appstream-rpms 3.3 M
      rubygem-json x86_64 2.5.1-160.el9_0 rhel-9-for-x86_64-appstream-rpms 63 k
      rubygem-psych x86_64 3.3.2-160.el9_0 rhel-9-for-x86_64-appstream-rpms 64 k
      rubygems noarch 3.2.33-160.el9_0 rhel-9-for-x86_64-appstream-rpms 310 k
      xmlsec1 x86_64 1.2.29-9.el9 rhel-9-for-x86_64-appstream-rpms 193 k
      xmlsec1-openssl x86_64 1.2.29-9.el9 rhel-9-for-x86_64-appstream-rpms 93 k
      Installing weak dependencies:
      ruby-default-gems noarch 3.0.4-160.el9_0 rhel-9-for-x86_64-appstream-rpms 50 k
      rubygem-bigdecimal x86_64 3.0.0-160.el9_0 rhel-9-for-x86_64-appstream-rpms 60 k
      rubygem-bundler noarch 2.2.33-160.el9_0 rhel-9-for-x86_64-appstream-rpms 460 k
      rubygem-io-console x86_64 0.5.7-160.el9_0 rhel-9-for-x86_64-appstream-rpms 30 k
      rubygem-rdoc noarch 6.3.3-160.el9_0 rhel-9-for-x86_64-appstream-rpms 444 k

      Transaction Summary
      ==================================================================================================================================================================================
      Install 18 Packages
      ~~~

      ~~~

      1. dnf install rubygem-foreman_scap_client

      Dependencies resolved.
      ==================================================================================================================================================================================
      Package Architecture Version Repository Size
      ==================================================================================================================================================================================
      Installing:
      rubygem-foreman_scap_client noarch 0.5.0-1.el9sat satellite-client-6-for-rhel-9-x86_64-rpms 25 k
      Installing dependencies:
      bzip2 x86_64 1.0.8-8.el9 rhel-9-for-x86_64-baseos-rpms 60 k
      libtool-ltdl x86_64 2.4.6-45.el9 rhel-9-for-x86_64-appstream-rpms 39 k
      libxslt x86_64 1.1.34-9.el9 rhel-9-for-x86_64-appstream-rpms 247 k
      openscap x86_64 1:1.3.6-4.el9 rhel-9-for-x86_64-appstream-rpms 2.0 M
      openscap-scanner x86_64 1:1.3.6-4.el9 rhel-9-for-x86_64-appstream-rpms 61 k
      ruby x86_64 3.0.4-160.el9_0 rhel-9-for-x86_64-appstream-rpms 45 k
      ruby-libs x86_64 3.0.4-160.el9_0 rhel-9-for-x86_64-appstream-rpms 3.3 M
      rubygem-psych x86_64 3.3.2-160.el9_0 rhel-9-for-x86_64-appstream-rpms 64 k
      rubygems noarch 3.2.33-160.el9_0 rhel-9-for-x86_64-appstream-rpms 310 k
      xmlsec1 x86_64 1.2.29-9.el9 rhel-9-for-x86_64-appstream-rpms 193 k
      xmlsec1-openssl x86_64 1.2.29-9.el9 rhel-9-for-x86_64-appstream-rpms 93 k
      Installing weak dependencies:
      ruby-default-gems noarch 3.0.4-160.el9_0 rhel-9-for-x86_64-appstream-rpms 50 k
      rubygem-bigdecimal x86_64 3.0.0-160.el9_0 rhel-9-for-x86_64-appstream-rpms 60 k
      rubygem-bundler noarch 2.2.33-160.el9_0 rhel-9-for-x86_64-appstream-rpms 460 k
      rubygem-io-console x86_64 0.5.7-160.el9_0 rhel-9-for-x86_64-appstream-rpms 30 k

      Transaction Summary
      ==================================================================================================================================================================================
      Install 16 Packages
      ~~~

      • rubygem-foreman_scap_client installation on RHEL 7 on the other hand fails if rubygem-json is not present.

      ~~~

      1. yum install rubygem-foreman_scap_client
        Loaded plugins: product-id, search-disabled-repos, subscription-manager
        Resolving Dependencies
        --> Running transaction check
        ---> Package rubygem-foreman_scap_client.noarch 0:0.5.0-1.el7sat will be installed
        --> Processing Dependency: /usr/bin/ruby for package: rubygem-foreman_scap_client-0.5.0-1.el7sat.noarch
        --> Processing Dependency: bzip2 for package: rubygem-foreman_scap_client-0.5.0-1.el7sat.noarch
        --> Processing Dependency: openscap-scanner for package: rubygem-foreman_scap_client-0.5.0-1.el7sat.noarch
        --> Processing Dependency: ruby(release) for package: rubygem-foreman_scap_client-0.5.0-1.el7sat.noarch
        --> Processing Dependency: ruby(rubygems) for package: rubygem-foreman_scap_client-0.5.0-1.el7sat.noarch
        --> Running transaction check
        ---> Package bzip2.x86_64 0:1.0.6-13.el7 will be installed
        ---> Package openscap-scanner.x86_64 0:1.2.17-15.el7_9 will be installed
        --> Processing Dependency: openscap(x86-64) = 1.2.17-15.el7_9 for package: openscap-scanner-1.2.17-15.el7_9.x86_64
        --> Processing Dependency: libopenscap.so.8()(64bit) for package: openscap-scanner-1.2.17-15.el7_9.x86_64
        ---> Package ruby.x86_64 0:2.0.0.648-39.el7_9 will be installed
        --> Processing Dependency: rubygem(bigdecimal) >= 1.2.0 for package: ruby-2.0.0.648-39.el7_9.x86_64
        ---> Package ruby-libs.x86_64 0:2.0.0.648-39.el7_9 will be installed
        ---> Package rubygems.noarch 0:2.0.14.1-39.el7_9 will be installed
        --> Processing Dependency: rubygem(io-console) >= 0.4.2 for package: rubygems-2.0.14.1-39.el7_9.noarch
        --> Processing Dependency: rubygem(psych) >= 2.0.0 for package: rubygems-2.0.14.1-39.el7_9.noarch
        --> Processing Dependency: rubygem(rdoc) >= 4.0.0 for package: rubygems-2.0.14.1-39.el7_9.noarch
        --> Running transaction check
        ---> Package openscap.x86_64 0:1.2.17-15.el7_9 will be installed
        ---> Package rubygem-bigdecimal.x86_64 0:1.2.0-39.el7_9 will be installed
        ---> Package rubygem-io-console.x86_64 0:0.4.2-39.el7_9 will be installed
        ---> Package rubygem-psych.x86_64 0:2.0.0-39.el7_9 will be installed
        ---> Package rubygem-rdoc.noarch 0:4.0.0-39.el7_9 will be installed
        --> Processing Dependency: ruby(irb) = 2.0.0.648 for package: rubygem-rdoc-4.0.0-39.el7_9.noarch
        --> Processing Dependency: rubygem(json) >= 1.7.7 for package: rubygem-rdoc-4.0.0-39.el7_9.noarch
        --> Running transaction check
        ---> Package ruby-irb.noarch 0:2.0.0.648-39.el7_9 will be installed
        ---> Package rubygem-rdoc.noarch 0:4.0.0-39.el7_9 will be installed
        --> Processing Dependency: rubygem(json) >= 1.7.7 for package: rubygem-rdoc-4.0.0-39.el7_9.noarch
        --> Finished Dependency Resolution
        Error: Package: rubygem-rdoc-4.0.0-39.el7_9.noarch (rhel-7-server-rpms)
        Requires: rubygem(json) >= 1.7.7
        You could try using --skip-broken to work around the problem
        You could try running: rpm -Va --nofiles --nodigest
        ~~~

            aruzicka@redhat.com Adam Ruzicka
            rhn-support-msunil Manu Sunil
            Peter Ondrejka Peter Ondrejka
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: