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

RedHat Lightspeed fails to remediate hosts

XMLWordPrintable

    • None
    • None
    • None
    • None
    • Yes

      Description of problem:

      Found on stream 120.

      When trying to remediate issues on host(s), the remediation action fails with the exception:

      RuntimeError: Failed rendering template: error during rendering: undefined method `[]' for nil:NilClass

      I have noticed that this issue appears during several remediation "scenarios".

      I will list them below:

      1. I had 2 hosts that had "Decreased security: OpenSSH config permissions" (invoked by running "chmod 777 /etc/ssh/sshd_config" on hosts)
      remediation available. For this remediation, there are 2 recommended solutions:

        • a) Set owner and permissions on /etc/sshd/sshd_config to root:root 0600
        • b) Set owner and permissions on /etc/sshd/sshd_config to root:root 0644

             When I tried to remediate one or both hosts with a), the remediation action failed with undefined method `[]'  error as mentioned above. 

      The preview template option displayed above the failed host showed this:

      hit_remediation_pairs
      
      [{"hit_id":38,"rule_id":38,"resolution_type":32,"resolution_id":"38_32"}]

       

             When I tried to remediate one or both hosts with b), the remediation action passed successfully.

       

      2. I had 2 hosts that had "The dnf installs lower versions of packages when the "best" option is not present in the /etc/dnf/dnf.conf"

      (invoked by running "dnf update -y dnf;sed -i -e "/^best/d" /etc/dnf/dnf.conf" on hosts)

      For this recommendation, there is only one solution:

        • "Set best option to True in /etc/dnf/dnf.conf"

      When I tried to apply this solution using the Satellite UI on one or both hosts, the remediation action also failed with undefined method `[]' as mentioned above.

      The preview template option displayed above the failed host showed this:

      hit_remediation_pairs
      
      [{"hit_id":37,"rule_id":37,"resolution_type":31,"resolution_id":"37_31"}]

      --------------------------------------------------------

      The details of the failed tasks for both scenarios 1. and 2. looked like this:

      Action:
      
      Actions::RemoteExecution::RunHostJob
      Input:
      
      {"host"=>
        {"id"=>14, "name"=>"host1"},
       "host_display_name"=>"host1",
       "job_category"=>"Red Hat Insights",
       "description"=>"Insights remediations for selected issues",
       "job_invocation_id"=>19,
       "job_features"=>["rh_cloud_remediate_hosts"]}
      Exception:
      
      RuntimeError: Failed rendering template: error during rendering: undefined method `[]' for nil:NilClass
      Backtrace:
      
      /usr/share/gems/gems/foreman_remote_execution-16.1.0/app/lib/actions/remote_execution/run_host_job.rb:57:in `inner_plan'
      /usr/share/gems/gems/foreman_remote_execution-16.1.0/app/lib/actions/remote_execution/run_host_job.rb:23:in `block in plan'
      /usr/share/gems/gems/foreman_remote_execution-16.1.0/app/lib/actions/remote_execution/template_invocation_progress_logging.rb:19:in `block in with_template_invocation_error_logging'
      /usr/share/gems/gems/foreman_remote_execution-16.1.0/app/lib/actions/remote_execution/template_invocation_progress_logging.rb:19:in `catch'
      /usr/share/gems/gems/foreman_remote_execution-16.1.0/app/lib/actions/remote_execution/template_invocation_progress_logging.rb:19:in `with_template_invocation_error_logging'
      /usr/share/gems/gems/foreman_remote_execution-16.1.0/app/lib/actions/remote_execution/run_host_job.rb:22:in `plan'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/action.rb:534:in `block (3 levels) in execute_plan'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:28:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:20:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:37:in `plan'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:24:in `call'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:28:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:20:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:37:in `plan'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:24:in `call'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:28:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:20:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:37:in `plan'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:24:in `call'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:28:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:20:in `pass'
      /usr/share/gems/gems/foreman-tasks-11.0.3/app/lib/actions/middleware/load_setting_values.rb:15:in `plan'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:24:in `call'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:28:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:20:in `pass'
      /usr/share/gems/gems/foreman-tasks-11.0.3/app/lib/actions/middleware/keep_current_request_id.rb:10:in `block in plan'
      /usr/share/gems/gems/foreman-tasks-11.0.3/app/lib/actions/middleware/keep_current_request_id.rb:34:in `with_current_request_id'
      /usr/share/gems/gems/foreman-tasks-11.0.3/app/lib/actions/middleware/keep_current_request_id.rb:9:in `plan'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:24:in `call'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:28:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:20:in `pass'
      /usr/share/gems/gems/foreman-tasks-11.0.3/app/lib/actions/middleware/keep_current_timezone.rb:10:in `block in plan'
      /usr/share/gems/gems/foreman-tasks-11.0.3/app/lib/actions/middleware/keep_current_timezone.rb:31:in `with_current_timezone'
      /usr/share/gems/gems/foreman-tasks-11.0.3/app/lib/actions/middleware/keep_current_timezone.rb:9:in `plan'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:24:in `call'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:28:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:20:in `pass'
      /usr/share/gems/gems/foreman-tasks-11.0.3/app/lib/actions/middleware/keep_current_user.rb:10:in `block in plan'
      /usr/share/gems/gems/foreman-tasks-11.0.3/app/lib/actions/middleware/keep_current_user.rb:41:in `with_current_user'
      /usr/share/gems/gems/foreman-tasks-11.0.3/app/lib/actions/middleware/keep_current_user.rb:9:in `plan'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:24:in `call'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:28:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:20:in `pass'
      /usr/share/gems/gems/foreman-tasks-11.0.3/app/lib/actions/middleware/keep_current_taxonomies.rb:10:in `block in plan'
      /usr/share/gems/gems/foreman-tasks-11.0.3/app/lib/actions/middleware/keep_current_taxonomies.rb:30:in `with_current_taxonomies'
      /usr/share/gems/gems/foreman-tasks-11.0.3/app/lib/actions/middleware/keep_current_taxonomies.rb:9:in `plan'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:24:in `call'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/world.rb:31:in `execute'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/action.rb:533:in `block (2 levels) in execute_plan'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/execution_plan.rb:389:in `switch_flow'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/action.rb:436:in `concurrence'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/action.rb:532:in `block in execute_plan'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/action.rb:491:in `block in with_error_handling'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/action.rb:491:in `catch'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/action.rb:491:in `with_error_handling'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/action.rb:531:in `execute_plan'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/action.rb:304:in `execute'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/execution_plan/steps/plan_step.rb:56:in `block in execute'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/execution_plan/steps/abstract.rb:168:in `with_meta_calculation'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/execution_plan/steps/plan_step.rb:55:in `execute'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/execution_plan.rb:291:in `block (2 levels) in plan'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/execution_plan.rb:389:in `switch_flow'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/execution_plan.rb:379:in `with_planning_scope'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/execution_plan.rb:290:in `block in plan'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:28:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:20:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:45:in `plan_phase'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:24:in `call'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:28:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:20:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:45:in `plan_phase'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:24:in `call'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:28:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:20:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:45:in `plan_phase'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:24:in `call'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:28:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:20:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:45:in `plan_phase'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:24:in `call'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:28:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:20:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:45:in `plan_phase'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:24:in `call'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:28:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:20:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:45:in `plan_phase'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:24:in `call'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:28:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:20:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:45:in `plan_phase'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:24:in `call'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:28:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:20:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:45:in `plan_phase'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:24:in `call'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/world.rb:31:in `execute'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/execution_plan.rb:289:in `plan'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/world.rb:221:in `block (2 levels) in plan_with_options'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/coordinator.rb:347:in `acquire'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/world.rb:219:in `block in plan_with_options'
      <internal:kernel>:90:in `tap'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/world.rb:218:in `plan_with_options'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/action/v2/with_sub_plans.rb:158:in `block in trigger'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/world.rb:180:in `trigger'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/action/v2/with_sub_plans.rb:158:in `trigger'
      /usr/share/gems/gems/foreman_remote_execution-16.1.0/app/lib/actions/remote_execution/run_hosts_job.rb:51:in `block in create_sub_plans'
      /usr/share/gems/gems/activerecord-7.0.8.7/lib/active_record/relation/delegation.rb:88:in `each'
      /usr/share/gems/gems/activerecord-7.0.8.7/lib/active_record/relation/delegation.rb:88:in `each'
      /usr/share/gems/gems/foreman_remote_execution-16.1.0/app/lib/actions/remote_execution/run_hosts_job.rb:47:in `map'
      /usr/share/gems/gems/foreman_remote_execution-16.1.0/app/lib/actions/remote_execution/run_hosts_job.rb:47:in `create_sub_plans'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/action/v2/with_sub_plans.rb:97:in `spawn_plans'
      /usr/share/gems/gems/foreman_remote_execution-16.1.0/app/lib/actions/remote_execution/run_hosts_job.rb:56:in `spawn_plans'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/action/v2/with_sub_plans.rb:70:in `initiate'
      /usr/share/gems/gems/foreman_remote_execution-16.1.0/app/lib/actions/remote_execution/run_hosts_job.rb:122:in `initiate'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/action/v2/with_sub_plans.rb:54:in `run'
      /usr/share/gems/gems/foreman_remote_execution-16.1.0/app/lib/actions/remote_execution/run_hosts_job.rb:148:in `run'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/action.rb:590:in `block (3 levels) in execute_run'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:28:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:20:in `pass'
      /usr/share/gems/gems/foreman-tasks-11.0.3/app/lib/actions/middleware/watch_delegated_proxy_sub_tasks.rb:17:in `run'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:24:in `call'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:28:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:20:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:33:in `run'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:24:in `call'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:28:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:20:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:33:in `run'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:24:in `call'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:28:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:20:in `pass'
      /usr/share/gems/gems/foreman-tasks-11.0.3/app/lib/actions/middleware/rails_executor_wrap.rb:14:in `block in run'
      /usr/share/gems/gems/activesupport-7.0.8.7/lib/active_support/execution_wrapper.rb:92:in `wrap'
      /usr/share/gems/gems/foreman-tasks-11.0.3/app/lib/actions/middleware/rails_executor_wrap.rb:13:in `run'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:24:in `call'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:28:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:20:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/action/progress.rb:29:in `with_progress_calculation'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/action/progress.rb:15:in `run'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:24:in `call'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:28:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:20:in `pass'
      /usr/share/gems/gems/foreman-tasks-11.0.3/app/lib/actions/middleware/load_setting_values.rb:20:in `run'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:24:in `call'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:28:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:20:in `pass'
      /usr/share/gems/gems/foreman-tasks-11.0.3/app/lib/actions/middleware/keep_current_request_id.rb:15:in `block in run'
      /usr/share/gems/gems/foreman-tasks-11.0.3/app/lib/actions/middleware/keep_current_request_id.rb:52:in `restore_current_request_id'
      /usr/share/gems/gems/foreman-tasks-11.0.3/app/lib/actions/middleware/keep_current_request_id.rb:15:in `run'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:24:in `call'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:28:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:20:in `pass'
      /usr/share/gems/gems/foreman-tasks-11.0.3/app/lib/actions/middleware/keep_current_timezone.rb:15:in `block in run'
      /usr/share/gems/gems/foreman-tasks-11.0.3/app/lib/actions/middleware/keep_current_timezone.rb:44:in `restore_curent_timezone'
      /usr/share/gems/gems/foreman-tasks-11.0.3/app/lib/actions/middleware/keep_current_timezone.rb:15:in `run'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:24:in `call'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:28:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:20:in `pass'
      /usr/share/gems/gems/foreman-tasks-11.0.3/app/lib/actions/middleware/keep_current_taxonomies.rb:15:in `block in run'
      /usr/share/gems/gems/foreman-tasks-11.0.3/app/lib/actions/middleware/keep_current_taxonomies.rb:45:in `restore_current_taxonomies'
      /usr/share/gems/gems/foreman-tasks-11.0.3/app/lib/actions/middleware/keep_current_taxonomies.rb:15:in `run'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:24:in `call'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:28:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:20:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:33:in `run'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:24:in `call'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:28:in `pass'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware.rb:20:in `pass'
      /usr/share/gems/gems/foreman-tasks-11.0.3/app/lib/actions/middleware/keep_current_user.rb:15:in `block in run'
      /usr/share/gems/gems/foreman-tasks-11.0.3/app/lib/actions/middleware/keep_current_user.rb:54:in `restore_curent_user'
      /usr/share/gems/gems/foreman-tasks-11.0.3/app/lib/actions/middleware/keep_current_user.rb:15:in `run'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/stack.rb:24:in `call'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/middleware/world.rb:31:in `execute'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/action.rb:589:in `block (2 levels) in execute_run'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/action.rb:588:in `catch'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/action.rb:588:in `block in execute_run'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/action.rb:491:in `block in with_error_handling'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/action.rb:491:in `catch'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/action.rb:491:in `with_error_handling'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/action.rb:583:in `execute_run'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/action.rb:304:in `execute'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/execution_plan/steps/abstract_flow_step.rb:18:in `block (2 levels) in execute'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/execution_plan/steps/abstract.rb:168:in `with_meta_calculation'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/execution_plan/steps/abstract_flow_step.rb:17:in `block in execute'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/execution_plan/steps/abstract_flow_step.rb:32:in `open_action'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/execution_plan/steps/abstract_flow_step.rb:16:in `execute'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/director.rb:70:in `execute'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/executors/sidekiq/worker_jobs.rb:12:in `block (2 levels) in perform'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/executors.rb:18:in `run_user_code'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/executors/sidekiq/worker_jobs.rb:10:in `block in perform'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/executors/sidekiq/worker_jobs.rb:26:in `with_telemetry'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/executors/sidekiq/worker_jobs.rb:9:in `perform'
      /usr/share/gems/gems/dynflow-1.9.2/lib/dynflow/executors/sidekiq/serialization.rb:28:in `perform'
      /usr/share/gems/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:202:in `execute_job'
      /usr/share/gems/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:170:in `block (2 levels) in process'
      /usr/share/gems/gems/sidekiq-6.5.12/lib/sidekiq/middleware/chain.rb:172:in `invoke'
      /usr/share/gems/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:169:in `block in process'
      /usr/share/gems/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:136:in `block (6 levels) in dispatch'
      /usr/share/gems/gems/sidekiq-6.5.12/lib/sidekiq/job_retry.rb:113:in `local'
      /usr/share/gems/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:135:in `block (5 levels) in dispatch'
      /usr/share/gems/gems/sidekiq-6.5.12/lib/sidekiq.rb:44:in `block in <module:Sidekiq>'
      /usr/share/gems/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:131:in `block (4 levels) in dispatch'
      /usr/share/gems/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:263:in `stats'
      /usr/share/gems/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:126:in `block (3 levels) in dispatch'
      /usr/share/gems/gems/sidekiq-6.5.12/lib/sidekiq/job_logger.rb:13:in `call'
      /usr/share/gems/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:125:in `block (2 levels) in dispatch'
      /usr/share/gems/gems/sidekiq-6.5.12/lib/sidekiq/job_retry.rb:80:in `global'
      /usr/share/gems/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:124:in `block in dispatch'
      /usr/share/gems/gems/sidekiq-6.5.12/lib/sidekiq/job_logger.rb:39:in `prepare'
      /usr/share/gems/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:123:in `dispatch'
      /usr/share/gems/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:168:in `process'
      /usr/share/gems/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:78:in `process_one'
      /usr/share/gems/gems/sidekiq-6.5.12/lib/sidekiq/processor.rb:68:in `run'
      /usr/share/gems/gems/sidekiq-6.5.12/lib/sidekiq/component.rb:8:in `watchdog'
      /usr/share/gems/gems/sidekiq-6.5.12/lib/sidekiq/component.rb:17:in `block in safe_thread'
      /usr/share/gems/gems/logging-2.4.0/lib/logging/diagnostic_context.rb:474:in `block in create_with_logging_context'

      **

       

       

      How reproducible:

      100 %

      Is this issue a regression from an earlier version:

      YES

      Steps to Reproduce:

      1. Have host(s) with insights enabled

      2. Have "OpenSSH config permissions" or "The dnf installs lower versions of packages when the "best" option is not present in the /etc/dnf/dnf.conf" recommendations synced

      3. Try to remediate them via satellite UI

      Actual behavior:
      Remediation action is unsuccessful with RuntimeError: Failed rendering template: error during rendering: undefined method `[]' for nil:NilClass

       

      Expected behavior:
      Remediation action should pass.

      Additional info:

      Found during the TFA of 
      test_rhcloud_insights_remediate_multiple_hosts
       
      Hosts on which the remediation action was performed info:

      Red Hat Enterprise Linux release 10.0 (Coughlan)
      insights-client --version
      Client: 3.10.1
      Core: 3.6.2-1
       
      Satellite info:
      satellite-6.18.0-0.7.stream.el9sat.noarch
      foreman-3.16.0-0.11.develop.20250807101727gitec89230.el9sat.noarch
      katello-4.18.0-0.1.1.master.el9sat.noarch
      Red Hat Enterprise Linux release 9.6 (Plow)

              rhn-engineering-jlenz Jeremy Lenz
              rhn-engineering-lvasina Ladislav Vasina
              Ladislav Vasina Ladislav Vasina
              Chris Roberts Chris Roberts
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated:
                Resolved: