It actually just seems like the entire API is blocked when a sync task is triggered directly in the controller method. Does it have something to do with concurrency in Rails? Maybe also resources get locked producing a deadlock? Still would be happy about some suggestions.
On Monday, March 13, 2017 at 11:09:45 AM UTC+1, [email protected] wrote: > > Hello, > > I have an issue with triggering synchronous tasks in foreman-tasks. I have > written a plugin that is triggering an Ansible Play as a foreman-tasks' > sync_task (the foreman_ansible plugin itself uses only asynchronous > tasks, but I want the request in my plugin to particularly block until the > triggered Ansible task has completed). During playbook execution, the > Ansible callback plugin reports gathered facts to the Foreman facts API, > which I need later. However, as soon as the callback plugin contacts the > facts API, Foreman starts hanging completely, not answering any requests > any longer. Restarting httpd makes Foreman in production usable again. > After restarting and trying the call again, the entire procedure often > works as expected, which makes it even more incomprehensible for me. The > problem does not happen at all when the Ansible callback plugin is not > configured. In this case the call always blocks and succeeds as expected. > Does anybody have any idea what could be the reason for this behaviour? And > is there any way to get around this problem? I'd be very grateful for any > hints. > > Regards > > --Gerrit > -- You received this message because you are subscribed to the Google Groups "foreman-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
