Description of problem:
When selecting a security item for an impacted host and running insights Ansible pre-created playbook it throws an error.
Every time select a playbook to run on the client from Insights.
Steps to Reproduce:
- Goto Insights tab>Actions>Select the Security Action>Select the impacted host>Actions.Create Playbook and Run playbook.
We see the error when we run playbook.
"Failed to create job. Ensure your systems are registered in Foreman"
It should run the playbook to fix the issues.
All other Ansible roles and remote execution working between the client and the Satellite.
Can you help triage this one? Looks like it could be an issue in the Ansible plugin, but I am not sure.
*** Bug 1678045 has been marked as a duplicate of this bug. ***
This is because the hosts_ids returns the full array instead of an ID, which make the insights playbook run fails
irb(main):028:0> Host.where(:name => hostname_rules_relation.keys).pluck(&:id)
=> [[3, "rhel7.acme.lab", Sun, 24 Feb 2019 02:31:46 UTC +00:00, nil, Sun, 24 Feb 2019 02:31:47 UTC +00:00, Sun, 24 Feb 2019 02:28:03 UTC +00:00, nil, 1, 1, nil, nil, nil, false, nil, nil, nil, 1, nil, 1, "User", true, nil, false, nil, nil, nil, nil, nil, nil, nil, 1, 2, "Host::Managed", nil, nil, nil, nil, "", nil, 1, "fqdn=rhel7.acme.lab", nil, nil, nil, nil]]
After changing the syntax
irb(main):029:0> Host.where(:name => hostname_rules_relation.keys).pluck(:id)
So, here is a simple fix
# vi /opt/theforeman/tfm/root/usr/share/gems/gems/redhat_access-2.2.0/app/models/redhat_access/concerns/host_managed_extensions.rb
host_ids = Host::Managed.where(:name => hostname_rules_relation.keys).pluck(&:id)
host_ids = Host::Managed.where(:name => hostname_rules_relation.keys).pluck(:id)
# systemctl restart httpd
Opened an upstream PR for this https://github.com/redhataccess/foreman-plugin/pull/33
2.2.2 contains the linked fix, packaging PR opened at https://github.com/theforeman/foreman-packaging/pull/3478
*** Bug 1683407 has been marked as a duplicate of this bug. ***
Verified on tfm-rubygem-redhat_access-2.2.3-1.el7sat.
I was able to successfully run an Ansible playbook created by the planner in the Insights module, or by going through the Actions as described in the initial report. No error, playbook was processed and executed as expected.
*** Bug 1698935 has been marked as a duplicate of this bug. ***
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.
For information on the advisory, and where to find the updated
files, follow the link below.
If the solution does not work for you, open a new bug report.