[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [Rdo-list] [foreman-dev] [OFI] Dynflow orchestration POC draft



On 24.02.14 22:12, Lukas Zapletal wrote:
-   Is there a simpler way how to trigger puppet run on a given host?

Thanks Lukas!


We have the following implementations for puppet run:

#   puppetrun   (for puppetrun/kick, deprecated in Puppet 3)

Since it's deprecated we should probably avoid it if there is another simple way.

#   mcollective (uses mco puppet)

This one is probably not that straightforward as other options, see
https://github.com/witlessbird/foreman_mco/blob/master/SETUP.md

#   puppetssh   (run puppet over ssh)

Seems best as a best option. Simple setup, ssh is everywhere. One disadvantage is that it only triggers the puppet run, there is now way how to wait for the puppet run to finish and see results directly. It would be a bad thing anyway, smart-proxy process would be blocked. Dynflow action can solve this by triggering the puppet run via puppetssh and then polling Foreman API for new Report.

(Dynflow already supports action suspending to be able to pull effectively without blocking threads. There is also a helper module for polling itself.)

see http://projects.theforeman.org/issues/3047
https://github.com/theforeman/foreman/blob/develop/lib/proxy_api/puppet.rb

#   salt        (uses salt puppet.run)

Also complicated, needs Saltstack, see https://github.com/theforeman/smart-proxy/pull/113

#   customrun   (calls a custom command with args)

AFAIK customrun is used internally by puppetssh so there is probably no reason to use it directly.


Make your choice, ssh might be a way.

TL;DR I agree puppetssh seems the best.

Petr


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]