Project

General

Profile

Actions

Tracker #8447

closed

Puppet 4 support

Added by Dominic Cleal over 9 years ago. Updated over 5 years ago.

Status:
Closed
Priority:
Normal
Assignee:
-
Category:
Puppet integration
Target version:
% Done:

0%

Difficulty:
Triaged:
Fixed in Releases:
Found in Releases:

Description

Tracks steps for Foreman to work with Puppet 4 based Puppet masters, e.g. smart proxy updates, installer/kafo support.


Related issues 22 (0 open22 closed)

Related to Packaging - Bug #9588: foreman-installer should be able to work with puppet enterpriseDuplicate02/27/2015Actions
Related to Smart Proxy - Bug #11599: Parsing environments/manifests in Puppet 4 failsClosed08/28/2015Actions
Related to Foreman - Feature #4528: Support Facter 2 structured factsClosedDominic Cleal03/03/2014Actions
Blocked by Kafo - Refactor #7858: Replace use of Puppet::PluginRejected10/08/2014Actions
Blocked by Kafo - Feature #6254: Puppet 4 parser supportRejected06/17/2014Actions
Blocked by Kafo - Feature #7848: YARD / Puppet Strings supportClosedMarek Hulán10/08/2014Actions
Blocked by Smart Proxy - Feature #11992: Support loading Puppet from AIO packagesRejected09/29/2015Actions
Blocked by Installer - Feature #9822: Support Puppet 4 / future parser across all modulesClosed03/19/2015Actions
Blocked by Kafo - Feature #14447: Add serialised cache of parsed manifestsClosedDominic Cleal04/04/2016Actions
Blocked by Kafo - Feature #14448: kafo_parsers should support selecting available providers with soft depsClosedDominic Cleal04/04/2016Actions
Blocked by Installer - Refactor #14449: Hostname check should use Facter binary instead of libraryClosedDominic Cleal04/04/2016Actions
Blocked by Kafo - Refactor #14450: Replace use of Puppet parser functions in parameter validationsClosedDominic Cleal04/04/2016Actions
Blocked by Kafo - Feature #14452: Support running Puppet from /opt/puppetlabs/bin/puppet AIO pathClosedDominic Cleal04/04/2016Actions
Blocked by Installer - Feature #14453: Generate Kafo parser cache during buildClosedDominic Cleal04/04/2016Actions
Blocked by Packaging - Refactor #14454: Change foreman-installer/kafo_parsers dependencies to permit Puppet 4 AIOClosedDominic Cleal04/04/2016Actions
Blocked by Installer - Feature #14455: Add foreman_smartproxy provider with dependencies for AIOClosedDominic Cleal04/04/2016Actions
Blocked by Smart Proxy - Feature #13667: puppet_proxy and puppetca modules load puppet gem in puppet 4.0 and higher environments Closed02/11/2016Actions
Blocked by Kafo - Bug #14568: Default answers for undef parameters stored as ::module::params::param on Puppet 4ClosedDominic Cleal04/11/2016Actions
Blocked by Kafo - Bug #14941: Puppet RUBYLIB set to incorrect modules directory on Debian, errors under AIOClosedDominic Cleal05/06/2016Actions
Blocked by Installer - Bug #14942: puppet group fails when added to foreman user before puppetserver installationClosedDominic Cleal05/06/2016Actions
Blocked by Smart Proxy - Bug #15043: mcollective puppetrun provider can't find puppet-agent mco binaryClosedAlex Fisher05/13/2016Actions
Blocks Foreman - Tracker #15096: Puppet 5 supportClosed05/19/2016

Actions
Actions #1

Updated by Dominic Cleal over 9 years ago

Actions #2

Updated by Dominic Cleal over 9 years ago

Actions #3

Updated by Dominic Cleal over 9 years ago

Actions #4

Updated by Dominic Cleal about 9 years ago

  • Related to Bug #9588: foreman-installer should be able to work with puppet enterprise added
Actions #5

Updated by Dominic Cleal about 9 years ago

  • Blocks Feature #9822: Support Puppet 4 / future parser across all modules added
Actions #6

Updated by The Foreman Bot almost 9 years ago

  • Status changed from New to Ready For Testing
Actions #7

Updated by Dominic Cleal almost 9 years ago

  • Status changed from Ready For Testing to New
Actions #8

Updated by The Foreman Bot almost 9 years ago

  • Status changed from New to Ready For Testing
Actions #9

Updated by Stephen Benjamin almost 9 years ago

  • Status changed from Ready For Testing to New
Actions #10

Updated by Dominic Cleal over 8 years ago

  • Related to Bug #11599: Parsing environments/manifests in Puppet 4 fails added
Actions #11

Updated by Dominic Cleal over 8 years ago

  • Blocked by Feature #11992: Support loading Puppet from AIO packages added
Actions #12

Updated by Dominic Cleal over 8 years ago

  • Blocks deleted (Feature #9822: Support Puppet 4 / future parser across all modules)
Actions #13

Updated by Dominic Cleal over 8 years ago

  • Blocked by Feature #9822: Support Puppet 4 / future parser across all modules added
Actions #14

Updated by Anonymous about 8 years ago

  • Related to Feature #4528: Support Facter 2 structured facts added
Actions #15

Updated by Dominic Cleal almost 8 years ago

  • Blocked by Feature #14447: Add serialised cache of parsed manifests added
Actions #16

Updated by Dominic Cleal almost 8 years ago

  • Blocked by Feature #14448: kafo_parsers should support selecting available providers with soft deps added
Actions #17

Updated by Dominic Cleal almost 8 years ago

  • Blocked by Refactor #14449: Hostname check should use Facter binary instead of library added
Actions #18

Updated by Dominic Cleal almost 8 years ago

  • Blocked by Refactor #14450: Replace use of Puppet parser functions in parameter validations added
Actions #19

Updated by Dominic Cleal almost 8 years ago

  • Blocked by Feature #14452: Support running Puppet from /opt/puppetlabs/bin/puppet AIO path added
Actions #20

Updated by Dominic Cleal almost 8 years ago

  • Blocked by Feature #14453: Generate Kafo parser cache during build added
Actions #21

Updated by Dominic Cleal almost 8 years ago

  • Blocked by Refactor #14454: Change foreman-installer/kafo_parsers dependencies to permit Puppet 4 AIO added
Actions #22

Updated by Dominic Cleal almost 8 years ago

  • Blocked by Feature #14455: Add foreman_smartproxy provider with dependencies for AIO added
Actions #23

Updated by Dominic Cleal almost 8 years ago

  • Blocked by Feature #13667: puppet_proxy and puppetca modules load puppet gem in puppet 4.0 and higher environments added
Actions #24

Updated by Dominic Cleal almost 8 years ago

Summary of the outstanding tasks that I know about, split by project.

Smart proxy

  • #13667 - support in the smart proxy to load lists of classes and parameters from the Puppet Server API, instead of needing to load the Puppet library.
    • blocked by #14618 - refactoring of smart proxy plugin configuration

Kafo - the library behind foreman-installer

  • #14447 - add a serialised cache to avoid needing to load Puppet parsers
  • #14448 - kafo_parsers needs soft dependencies on Puppet
  • #14450 - kafo parameter validations shouldn't require Puppet
  • #14452 - run Puppet from AIO filesystem paths
  • #14568 - parameters with undef default values cause installer failures
  • #14659 - puppet help strings errors printed
  • #7848 - support puppet-strings (low priority, the cache alleviates the immediate need)
  • #7858 - replace Puppet::Plugin (low priority, only progress bar support)
  • #14941 - RUBYLIB set incorrectly on Debian AIO installations
  • #15105 - progress bar support

Foreman installer

  • #14453 - generate serialised cache during build
    • after #14447 in kafo
    • blocked by #14472 - fix kafo-export-params in Debian packages
    • blocked by #14473 - fix UTF-8 reading of manifests on Ruby 1.9.3+
    • blocked by #14729 - loading parser cache fails, should be obsoleted by #14450 when done
    • partially blocked by #14475 - config file migrations, needed to add parser_cache on existing installations
  • #14455 - add foreman_smartproxy provider and dependencies for AIO environment
  • #14449 - hostname check shouldn't use Facter library (medium priority, harmless error)
  • puppet-puppet/#372 - support for Puppet Server 2 auth configs, required for smart proxy PR
  • #14454 - change Puppet package dependencies
  • #14942 - ordering of puppet group/foreman user setup under AIO
  • puppet-foreman_proxy/#251 - update config files to match changes in #13667

Test suite

Tests themselves:

Actions #25

Updated by Dominic Cleal almost 8 years ago

  • Blocked by Bug #14568: Default answers for undef parameters stored as ::module::params::param on Puppet 4 added
Actions #26

Updated by Dominic Cleal almost 8 years ago

https://copr.fedorainfracloud.org/coprs/domcleal/foreman-puppet-aio/ has some completely unsupported test RPMs with the kafo patches under review. These let foreman-installer run with a Puppet 4 AIO agent. (Please don't use this! Nightly packages are nearly there now.)

Ensure rubygem-kafo, rubygem-kafo_parsers and foreman-installer are up to date from that repo when testing, and puppet-agent is installed. Ignore the Facter/fqdn check error on startup (#14449) and the smart proxy registration failure (#14455, or pass --foreman-proxy-register-in-foreman=false). Smart proxy Puppet support remains missing, so class imports etc won't work. There are probably a bunch of other issues, please dive in and fix them.

Actions #27

Updated by Dominic Cleal almost 8 years ago

  • Blocked by Bug #14941: Puppet RUBYLIB set to incorrect modules directory on Debian, errors under AIO added
Actions #28

Updated by Dominic Cleal almost 8 years ago

  • Blocked by Bug #14942: puppet group fails when added to foreman user before puppetserver installation added
Actions #29

Updated by Dominic Cleal almost 8 years ago

Nightly packages now have support for installation using AIO versions of Puppet 4, with the exception of Ubuntu 16.04 (no puppetserver available until 2.4.0 is out soon).

The PC1 repo must be configured before installing foreman-installer, which will then install puppet-agent and puppetserver (note, this requires >= 3GB RAM). Smart proxy support isn't available yet.

Actions #30

Updated by Dominic Cleal almost 8 years ago

  • Blocked by Bug #15043: mcollective puppetrun provider can't find puppet-agent mco binary added
Actions #31

Updated by Dominic Cleal almost 8 years ago

Actions #32

Updated by Dominic Cleal almost 8 years ago

  • Status changed from New to Closed
  • translation missing: en.field_release set to 136

Nightly packages now contain both installer and smart proxy support, which will become Foreman 1.12. Please help by testing nightly packages and release candidates when available.

If you come across a bug, please file a new report for it instead of logging it here.

Actions #33

Updated by Dominic Cleal almost 8 years ago

Upgrading_from_Puppet_3_to_4 contains documentation on performing an upgrade of Puppet 3 to 4 on the same server, updating all of the config files etc.

(At the time of writing I've only lightly tested this on nightlies on EL7, so please edit and improve it, fix mistakes etc!)

Actions

Also available in: Atom PDF