Bug #10328
closedforeman-installer has kafo errors when future parser is enabled
Description
I am not able to install foreman on ubuntu trusty as the installer has the following output.
foreman-installer /usr/lib/ruby/vendor_ruby/kafo_parsers/puppet_module_parser.rb:84:in `docs': no documentation found for manifest /usr/share/foreman-installer/modules/puppet/manifests/init.pp, parsing error? (KafoParsers::DocParseError) from /usr/lib/ruby/vendor_ruby/kafo_parsers/puppet_module_parser.rb:19:in `parse' from /usr/lib/ruby/vendor_ruby/kafo/puppet_module.rb:44:in `parse' from /usr/lib/ruby/vendor_ruby/kafo/configuration.rb:85:in `block in modules' from /usr/lib/ruby/vendor_ruby/kafo/configuration.rb:85:in `map' from /usr/lib/ruby/vendor_ruby/kafo/configuration.rb:85:in `modules' from /usr/lib/ruby/vendor_ruby/kafo/kafo_configure.rb:172:in `modules' from /usr/lib/ruby/vendor_ruby/kafo/kafo_configure.rb:154:in `params' from /usr/lib/ruby/vendor_ruby/kafo/kafo_configure.rb:187:in `set_parameters' from /usr/lib/ruby/vendor_ruby/kafo/kafo_configure.rb:66:in `initialize' from /usr/lib/ruby/vendor_ruby/clamp/command.rb:126:in `new' from /usr/lib/ruby/vendor_ruby/clamp/command.rb:126:in `run' from /usr/lib/ruby/vendor_ruby/kafo/kafo_configure.rb:118:in `run' from /usr/sbin/foreman-installer:18:in `<main>'
Installation is done just as documented in http://theforeman.org/manuals/1.8/quickstart_guide.html
Using the 1.7 Installer and downgrading puppet to 3.7.4 did not help.
Updated by Dominic Cleal over 9 years ago
- Status changed from New to Feedback
I couldn't reproduce this, and our automated tests didn't seem to hit it either. Could you please compare the file at /usr/share/foreman-installer/modules/puppet/init.pp against this file?
https://raw.githubusercontent.com/theforeman/puppet-puppet/3.0.0/manifests/init.pp
If they appear to be identical, perhaps wget + replace it to check.
Updated by Christian Rusa over 9 years ago
Dominic Cleal wrote:
I couldn't reproduce this, and our automated tests didn't seem to hit it either. Could you please compare the file at /usr/share/foreman-installer/modules/puppet/init.pp against this file?
https://raw.githubusercontent.com/theforeman/puppet-puppet/3.0.0/manifests/init.pp
The files are identical.
I did some more testing and found out that if I do the same install procedure on a fresh install of trusty it works,
the server on which the install fails has been upgraded to trusty.
Seems there is something different.
Updated by Dominic Cleal over 9 years ago
- Status changed from Feedback to New
I wonder if you could compare the ruby-* package versions installed? Particularly ruby-rdoc, ruby-kafo, ruby-kafo-parsers.
My fresh installation has:
ii ruby-kafo 0.6.6-1 all If you write puppet modules for installing your software, you ii ruby-kafo-parsers 0.0.5-1 all Puppet module parsers ii ruby-rdoc 3.12.2-1 all RDoc produces HTML and command-line documentation for Ruby pr
Updated by Christian Rusa over 9 years ago
exactly the same versions on both servers...
dpkg -l | egrep 'ruby-(kafo|rdoc)' ii ruby-kafo 0.6.6-1 all If you write puppet modules for installing your software, you can use kafo to create powerful installer ii ruby-kafo-parsers 0.0.5-1 all Puppet module parsers ii ruby-rdoc 3.12.2-1 all RDoc produces HTML and command-line documentation for Ruby projects
Updated by Marek Hulán over 9 years ago
just wild guess, could you also upload `gem list` output? maybe there's different gem version loaded
Updated by Igor Diakonov over 9 years ago
a similar issue due to "class puppet { ... }" in my puppet's site.pp.
Got no errors after renaming "class puppet" to "class puppet_service".
Updated by Nikita Stupin over 9 years ago
I look similar problem on debian wheezy:
ii ruby-kafo 0.6.6-1 all If you write puppet modules for installing your software, you can use kafo to create powerful installer ii ruby-kafo-parsers 0.0.5-1 all Puppet module parsers ii ruby-rdoc 3.12.2-1 all RDoc produces HTML and command-line documentation for Ruby projects
file /usr/share/foreman-installer/modules/puppet/manifests/init.pp identically with https://raw.githubusercontent.com/theforeman/puppet-puppet/3.0.0/manifests/init.pp
Updated by Nikita Stupin over 9 years ago
My gem list:
activemodel (4.2.0) activesupport (4.2.1, 4.2.0) builder (3.2.2) colored (1.2) cri (2.6.1) domain_name (0.5.24) faraday (0.9.1) faraday_middleware (0.9.1) faraday_middleware-multi_json (0.0.6) gyoku (1.0.0z2) hashdiff (0.0.6) her (0.7.3) http-cookie (1.0.2) i18n (0.7.0) json (1.8.2) json_pure (1.8.2) librarian-puppet (2.1.0) librarianp (0.5.1) log4r (1.1.10) mime-types (2.5) mini_portile (0.6.2) minitest (5.5.1) multi_json (1.11.0) multipart-post (2.0.0) net-ssh (2.7.0) netrc (0.10.3) nokogiri (1.6.6.2) nori (1.1.5) puppet_forge (1.0.4) r10k (1.5.1) rbvmomi (1.6.0.z1) rest-client (1.8.0) rsync (1.0.9) semantic_puppet (0.1.1) thor (0.19.1) thread_safe (0.3.4) trollop (2.1.2) tzinfo (1.2.2) unf (0.1.4) unf_ext (0.0.7.1) yaml-lint (0.0.4)
if i try exec foreman-installer --puppet-server-puppetdb-host=puppet.pm --puppet-server-reports=foreman,puppetdb --puppet-server-storeconfigs-backend=puppetdb
return this backtrace
/usr/lib/ruby/vendor_ruby/kafo_parsers/puppet_module_parser.rb:84:in `docs': no documentation found for manifest /usr/share/foreman-installer/modules/foreman/manifests/init.pp, parsing error? (KafoParsers::DocParseError) from /usr/lib/ruby/vendor_ruby/kafo_parsers/puppet_module_parser.rb:19:in `parse' from /usr/lib/ruby/vendor_ruby/kafo/puppet_module.rb:44:in `parse' from /usr/lib/ruby/vendor_ruby/kafo/configuration.rb:85:in `block in modules' from /usr/lib/ruby/vendor_ruby/kafo/configuration.rb:85:in `map' from /usr/lib/ruby/vendor_ruby/kafo/configuration.rb:85:in `modules' from /usr/lib/ruby/vendor_ruby/kafo/kafo_configure.rb:172:in `modules' from /usr/lib/ruby/vendor_ruby/kafo/kafo_configure.rb:154:in `params' from /usr/lib/ruby/vendor_ruby/kafo/kafo_configure.rb:187:in `set_parameters' from /usr/lib/ruby/vendor_ruby/kafo/kafo_configure.rb:66:in `initialize' from /usr/lib/ruby/vendor_ruby/clamp/command.rb:126:in `new' from /usr/lib/ruby/vendor_ruby/clamp/command.rb:126:in `run' from /usr/lib/ruby/vendor_ruby/kafo/kafo_configure.rb:118:in `run' from /usr/sbin/foreman-installer:18:in `<main>'
Updated by Adam Jacob Muller over 9 years ago
I was running into this also, is is caused by parser=future in my puppet.conf (no idea on a fix besides disabling future parser)
Updated by Marek Hulán about 9 years ago
- Subject changed from foreman-installer has kafo errors on trusty to foreman-installer has kafo errors when future parser is enabled
- Priority changed from High to Normal
Updated by Marek Hulán about 9 years ago
- Category set to Foreman modules
- Status changed from New to Duplicate
Duplicated by #9822
Updated by Marek Hulán about 9 years ago
- Related to Feature #9822: Support Puppet 4 / future parser across all modules added
Updated by alban crommer almost 9 years ago
Encountered the same problem on a Debian Wheezy with an already crowded /etc/puppet/modules directory and the 1.9.3 version of foreman-installer.
Turns out I fixed it by straight out moving out of /etc/puppet the modules and deleting all "include 'X'" module reference in my site.pp manifest.
The foreman-installer ran fine after that, just checked out the old files et voilà.
Since this is the only page refering to this problem, thought it could be helpful to report.
Note: Trying with a 1.9.0 version foreman-installer first resulted in another bug: I had to move the foreman-installer modules to a manually created /usr/share/foreman/_build directory for the script to run.