Issue #6748 has been updated by Jeff McCune.
I found the issue.
Using the -> relationship syntax should work between this user and group
resource, but does not.
The following puppet code works:
group { 'mockbuild':
ensure => present,
gid => $gid_real,
before => File[$home],
}
# ->
user { 'mockbuild':
ensure => present,
uid => $uid_real,
gid => $gid_real,
comment => 'Mock Build',
shell => '/bin/bash',
home => $home,
password => '!!',
require => Group['mockbuild'],
}
The following code reproduces the error. Note, the only difference is the
relationship declaration.
group { 'mockbuild':
ensure => present,
gid => $gid_real,
before => File[$home],
}
->
user { 'mockbuild':
ensure => present,
uid => $uid_real,
gid => $gid_real,
comment => 'Mock Build',
shell => '/bin/bash',
home => $home,
password => '!!',
require => Group['mockbuild'],
}
----------------------------------------
Bug #6748: undefined method `<<' for {}:Hash on node rhel6_64.vagrant.internal
https://projects.puppetlabs.com/issues/6748
Author: Jeff McCune
Status: Unreviewed
Priority: Normal
Assignee:
Category: parser
Target version:
Affected Puppet version: 2.6.6
Keywords: hash error unhandled exception
Branch:
# Overview
Getting a difficult to diagnose error. No idea what's failing in the parsing
of the manifest since I don't have a line number or manifest file to reference.
## Error message:
undefined method `<<' for {}:Hash on node rhel6_64.vagrant.internal
# Steps to reproduce
I've attached a small vagrant project with everything required to reproduce
this error. The base box will automatically be downloaded if you run "vagrant
up" after unpacking the tarball it should just fail.
## Trace
debug: Adding relationship from Group[mockbuild] to User[mockbuild] with
'before'
/usr/local/src/puppet/lib/puppet/resource.rb:107:in `send'
/usr/local/src/puppet/lib/puppet/resource.rb:107:in `<<'
/usr/local/src/puppet/lib/puppet/parser/relationship.rb:41:in
`mk_relationship'
/usr/local/src/puppet/lib/puppet/parser/relationship.rb:19:in `evaluate'
/usr/local/src/puppet/lib/puppet/parser/relationship.rb:18:in `each'
/usr/local/src/puppet/lib/puppet/parser/relationship.rb:18:in `evaluate'
/usr/local/src/puppet/lib/puppet/parser/relationship.rb:17:in `each'
/usr/local/src/puppet/lib/puppet/parser/relationship.rb:17:in `evaluate'
/usr/local/src/puppet/lib/puppet/parser/compiler.rb:173:in
`evaluate_relationships'
/usr/local/src/puppet/lib/puppet/parser/compiler.rb:173:in `each'
/usr/local/src/puppet/lib/puppet/parser/compiler.rb:173:in
`evaluate_relationships'
/usr/local/src/puppet/lib/puppet/parser/compiler.rb:352:in `finish'
/usr/local/src/puppet/lib/puppet/parser/compiler.rb:109:in `compile'
/usr/local/src/puppet/lib/puppet/parser/compiler.rb:18:in `compile'
/usr/local/src/puppet/lib/puppet/indirector/catalog/compiler.rb:77:in
`compile'
/usr/local/src/puppet/lib/puppet/util.rb:197:in `benchmark'
/usr/local/src/puppet/lib/puppet/indirector/catalog/compiler.rb:75:in
`compile'
/usr/local/src/puppet/lib/puppet/indirector/catalog/compiler.rb:34:in `find'
/usr/local/src/puppet/lib/puppet/indirector/indirection.rb:188:in `find'
/usr/local/src/puppet/lib/puppet/indirector.rb:50:in `find'
/usr/local/src/puppet/lib/puppet/application/apply.rb:115:in `main'
/usr/local/src/puppet/lib/puppet/application/apply.rb:35:in `run_command'
/usr/local/src/puppet/lib/puppet/application.rb:304:in `run'
/usr/local/src/puppet/lib/puppet/application.rb:410:in `exit_on_fail'
/usr/local/src/puppet/lib/puppet/application.rb:304:in `run'
/usr/local/src/puppet/lib/puppet/util/command_line.rb:59:in `execute'
/usr/local/src/puppet/bin/puppet:4
/usr/local/src/puppet/lib/puppet/parser/compiler.rb:21:in `compile'
/usr/local/src/puppet/lib/puppet/indirector/catalog/compiler.rb:77:in
`compile'
/usr/local/src/puppet/lib/puppet/util.rb:197:in `benchmark'
/usr/local/src/puppet/lib/puppet/indirector/catalog/compiler.rb:75:in
`compile'
/usr/local/src/puppet/lib/puppet/indirector/catalog/compiler.rb:34:in `find'
/usr/local/src/puppet/lib/puppet/indirector/indirection.rb:188:in `find'
/usr/local/src/puppet/lib/puppet/indirector.rb:50:in `find'
/usr/local/src/puppet/lib/puppet/application/apply.rb:115:in `main'
/usr/local/src/puppet/lib/puppet/application/apply.rb:35:in `run_command'
/usr/local/src/puppet/lib/puppet/application.rb:304:in `run'
/usr/local/src/puppet/lib/puppet/application.rb:410:in `exit_on_fail'
/usr/local/src/puppet/lib/puppet/application.rb:304:in `run'
/usr/local/src/puppet/lib/puppet/util/command_line.rb:59:in `execute'
/usr/local/src/puppet/bin/puppet:4
--
You have received this notification because you have either subscribed to it,
or are involved in it.
To change your notification preferences, please click here:
http://projects.puppetlabs.com/my/account
--
You received this message because you are subscribed to the Google Groups
"Puppet Bugs" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/puppet-bugs?hl=en.