Dropping Puppet 3 in the proxy

Hello everyone,

We already formally deprecated Puppet 3 support, but I’d like to bite the bullet and really remove this.

This drops the legacy Puppet integration and solely relies on the Puppet REST API. This means we need at least Puppet 4.4 but a more recent version is recommended. Note that Puppet 4 is already EOL but because the REST API remains the same there’s no additional cost to supporting it.

Since Puppet 4 removed puppetrun/puppet kick support, the puppet_proxy_puppetrun provider can be dropped. Dropping "Run puppet" button with a replacement using remote execution plugin is related to this, but the current PR doesn’t intend to go further than dropping puppet_proxy_puppetrun and keeps support for the other providers (custom run, ssh, salt, mcollective).

The target version could be 1.22. If this is accepted, a PR to puppet-foreman_proxy will follow to reflect the changes.


Does that mean this will also remove the “run puppet” button that is currently grayed out and confuses users? Or will that remain because we have alternative implementations for that feature?

That’s the part I’m referring to: I’ve removed one implementation but @Marek_Hulan has a separate proposal to remove it.

Off topic: Note that puppetrun is a boolean in the foreman main settings which is IMHO a bad design. Now that we have capabilities in the proxy (PR in core in review) we could properly detect if the puppet proxy has the capability and only then show the button. That’d remove one global setting.