[Puppet - Bug #23318] Invalid YAML (hiera) file and automatic param binding fails in vague errors
Issue #23318 has been updated by Henrique Rodrigues. I have the exact same problem, but using CentOS 64-bit, Puppet 3.3.2, Hiera 1.2.1 and the normal Puppet parser (not future). Bug #23318: Invalid YAML (hiera) file and automatic param binding fails in vague errors https://projects.puppetlabs.com/issues/23318#change-101121 * Author: Dolf Schimmel * Status: Unreviewed * Priority: Normal * Assignee: * Category: * Target version: * Affected Puppet version: 3.3.2 * Keywords: hiera, automatic parameter binding * Branch: Hi, In my chain of hiera files I have an empty file. My manifests look as follows: pre blockquote node 'example.com' { include role::vps::hypervisor } class role::vps::hypervisor inherits role::vps { } class role::vps inherits role { } class role { include profile::base } class profile::base ( $firewall = params_lookup('firewall', 'global' ), $manage_networking = true ) { # Some code here } /pre /blockquote This results in the following error: Error: Could not retrieve catalog from remote server: Error 400 on SERVER: undefined method `empty?' for false:FalseClass at role.pp:2 on node example.com Once I remove the parameters in the profile::base class, the error changes in to the little bit more helpful message: Error: Could not retrieve catalog from remote server: Error 400 on SERVER: Data retrieved from /etc/puppet/hieradata/vps.yaml is String not Hash at /etc/puppet/modules/profile/manifests/base.pp:13 on node example.com. Two issues:ulli I think an empty or invalid Hiera file should not result in an error at all./lili If, for whatever reason, automatic parameter binding fails, a reasonable error should be displayed. In the past I've seen (and reported) several issues where the binding failed, and resulted in some vague issues which are hard to debug. /li/ul Parser: future (not sure if relevant)br / br / Hiera version: 1.3.0br / Puppet version: 3.3.2br / OS: Debian 7, 64 bitbr / Env: Passengerbr / I wouldn't classify the priority of this issue as low, because it's easy to trigger, and really hard to find the cause off the given error message. -- 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 unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com. To post to this group, send email to puppet-bugs@googlegroups.com. Visit this group at http://groups.google.com/group/puppet-bugs. For more options, visit https://groups.google.com/groups/opt_out.
[Puppet - Bug #23318] Invalid YAML (hiera) file and automatic param binding fails in vague errors
Issue #23318 has been updated by Henrique Rodrigues. Looks like a duplicate of #23273. Bug #23318: Invalid YAML (hiera) file and automatic param binding fails in vague errors https://projects.puppetlabs.com/issues/23318#change-101124 * Author: Dolf Schimmel * Status: Unreviewed * Priority: Normal * Assignee: * Category: * Target version: * Affected Puppet version: 3.3.2 * Keywords: hiera, automatic parameter binding * Branch: Hi, In my chain of hiera files I have an empty file. My manifests look as follows: pre blockquote node 'example.com' { include role::vps::hypervisor } class role::vps::hypervisor inherits role::vps { } class role::vps inherits role { } class role { include profile::base } class profile::base ( $firewall = params_lookup('firewall', 'global' ), $manage_networking = true ) { # Some code here } /pre /blockquote This results in the following error: Error: Could not retrieve catalog from remote server: Error 400 on SERVER: undefined method `empty?' for false:FalseClass at role.pp:2 on node example.com Once I remove the parameters in the profile::base class, the error changes in to the little bit more helpful message: Error: Could not retrieve catalog from remote server: Error 400 on SERVER: Data retrieved from /etc/puppet/hieradata/vps.yaml is String not Hash at /etc/puppet/modules/profile/manifests/base.pp:13 on node example.com. Two issues:ulli I think an empty or invalid Hiera file should not result in an error at all./lili If, for whatever reason, automatic parameter binding fails, a reasonable error should be displayed. In the past I've seen (and reported) several issues where the binding failed, and resulted in some vague issues which are hard to debug. /li/ul Parser: future (not sure if relevant)br / br / Hiera version: 1.3.0br / Puppet version: 3.3.2br / OS: Debian 7, 64 bitbr / Env: Passengerbr / I wouldn't classify the priority of this issue as low, because it's easy to trigger, and really hard to find the cause off the given error message. -- 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 unsubscribe from this group and stop receiving emails from it, send an email to puppet-bugs+unsubscr...@googlegroups.com. To post to this group, send email to puppet-bugs@googlegroups.com. Visit this group at http://groups.google.com/group/puppet-bugs. For more options, visit https://groups.google.com/groups/opt_out.