Support #15070
closedTask not completing, although job runs
Description
Hello,
I'm trying out the plugin.
Environment
Foreman host: CentOS 6.7 foreman-1.11.1-1.el6.noarch tfm-rubygem-foreman_remote_execution-0.3.2-1.fm1_11.el6.noarch tfm-rubygem-foreman-tasks-0.7.17-1.fm1_11.el6.noarch
Foreman smart-proxy: CentOS 7.2 foreman-proxy-1.11.1-1.el7.noarch rubygem-smart_proxy_remote_execution_ssh-0.0.13-1.el7.noarch
When I create a new job, the job runs perfectly.
When navigating to the sub-tasks in the GUI, I can see the output of the ssh task.
But it keeps re-executing it (thinks it reaches the timeout), and finally reports the task as failed:
ERF42-7784 [Foreman::Exception]: The smart proxy task a8b4759f-9337-484d-9a65-28f08ee1c0d9 failed.
However, the ssh job has run ... so I believe dynflow is not reporting that it completed succesfully?
Attached are the logs.
Files
Updated by Adam Ruzicka over 8 years ago
Hello,
could you please navigate to the Dynflow console on the smart proxy ($proxy_url/dynflow/console), inspect the task which was run there and give us output of that task's callback action? Apparently there's a problem with reporting back from the proxy to Foreman and that action's output could shed some light on what's wrong
Updated by Andy Airey over 8 years ago
Adam Ruzicka wrote:
Hello,
could you please navigate to the Dynflow console on the smart proxy ($proxy_url/dynflow/console), inspect the task which was run there and give us output of that task's callback action? Apparently there's a problem with reporting back from the proxy to Foreman and that action's output could shed some light on what's wrong
I am getting `could not read client cert from environment` when navigating to this url
Updated by Adam Ruzicka over 8 years ago
Andy Airey wrote:
I am getting `could not read client cert from environment` when navigating to this url
Right, the user has to authenticate with the client ssl certificate to prevent unauthorized access. You can set up your browser to do that or access the smart-proxy over http or temporarily set the 'console_auth' option to false in smart-proxy's config/settings.d/dynflow.yml
Also more logs would definitely be helpful, especially production.log from the creation of the job invocation till the end of the run.
Updated by Andy Airey over 8 years ago
Adam Ruzicka wrote:
Andy Airey wrote:
I am getting `could not read client cert from environment` when navigating to this url
Right, the user has to authenticate with the client ssl certificate to prevent unauthorized access. You can set up your browser to do that or access the smart-proxy over http or temporarily set the 'console_auth' option to false in smart-proxy's config/settings.d/dynflow.yml
Also more logs would definitely be helpful, especially production.log from the creation of the job invocation till the end of the run.
Figured it was somehting like this, I set 'console_auth' to 'false' and then I could drill down to the error:
hostname "theforeman.domain.local" does not match the server certificate
I was using the cname in 'foreman_url' instead of our Foreman's hostname: vslc6cfm001.domain.local ...
Been searching for the solution to this for days :)
Thanks for pointing me to the dynflow logs, I expected to see this in the foreman-proxy logs.
Updated by Adam Ruzicka over 8 years ago
Andy Airey wrote:
I was using the cname in 'foreman_url' instead of our Foreman's hostname: vslc6cfm001.domain.local ...
Been searching for the solution to this for days :)
Thanks for pointing me to the dynflow logs
I'm glad you figured it out. Can I mark this as resolved?
I expected to see this in the foreman-proxy logs.
It should be there, I created an issue #15136 for the misplaced Dynflow logs
Updated by Andy Airey over 8 years ago
Adam Ruzicka wrote:
It should be there, I created an issue #15136 for the misplaced Dynflow logs
Thanks.
You may indeed mark this as resolved.