|
Further
autopsy
troubleshooting showed the following:
#1. Hiera v3 +hiera_include
Settings: /etc/puppetlabs/puppet/puppet.conf is using hiera v3 configured with deeper merge behavior and merge_hash_arrays in it. /etc/puppetlabs/code/environments/corporate/manifests/site.pp is using hiera_include('classes')
-
srv01 fails with Error 500 on SERVER: Server Error: Evaluation Error: Error while evaluating a Function Call, can't convert true into String; discussed above;
-
dev_vm01 fails with:
Error 500 on SERVER: Server Error: Evaluation Error: Error while evaluating a Function Call, Lookup of key 'sudo::configs' failed: 'alias' interpolation is only permitted if the _expression_ is equal to the entire string at /etc/puppetlabs/code/modules/sudo/manifests/configs.pp:20:14
#2. Hiera v3 +unique lookup
Settings: Hiera v3 /etc/puppetlabs/code/environments/corporate/manifests/site.pp:
include lookup('classes', { 'merge' => 'unique' })
|
same errors.
#3. Hiera v3 +deep merge lookup
Settings: Hiera v3 /etc/puppetlabs/code/environments/corporate/manifests/site.pp:
lookup({ 'name' => 'classes',
|
'merge' => {
|
'strategy' => 'deep',
|
'merge_hash_arrays' => true,
|
},
|
})
|
-
srv01 runs fine surprisingly, though it did lose portion of syslog_ng::log as discussed above;
-
dev_vm01 runs fine;
#4. Hiera v5 +hiera_include
Settings: /etc/puppetlabs/puppet/puppet.conf is using hiera v5 /etc/puppetlabs/code/environments/corporate/manifests/site.pp is using hiera_include('classes')
-
srv01 runs fine;
-
dev_vm01 fails with:
Error 500 on SERVER: Server Error: Evaluation Error: Error while evaluating a Function Call, Lookup of key 'dev_username' failed: 'alias' interpolation is only permitted if the _expression_ is equal to the entire string at /etc/puppetlabs/code/modules/sudo/manifests/configs.pp:20:14
#5. Hiera v5 +unique lookup
Settings: Hiera v5 /etc/puppetlabs/code/environments/corporate/manifests/site.pp:
include lookup('classes', { 'merge' => 'unique' })
|
-
srv01 runs fine;
-
dev_vm01 - the same error as previous;
#6. Hiera v5 +deep merge lookup
Settings: Hiera v5 /etc/puppetlabs/code/environments/corporate/manifests/site.pp same as in #3.
-
srv01, same as #3, runs fine surprisingly, though it did lose portion of syslog_ng::log as discussed above;
-
dev_vm01 - runs fine;
Out of "ordinary" things, dev_vm01 defined as follows:
roles/dev_vm.yaml:
sudo::configs:
|
"%{alias('dev_username')}":
|
'content' : "%{alias('dev_username')} ALL=(ALL:ALL) APACHECTL, NGINX, !SU, !SHELLS, REBOOT, APACHECONF, POSTGRESQL, COMPOSER
|
'ensure' : 'present'
|
nodes/dev_vm01:
Another, more simply defined, hosts, i.e. without hash arrays and/or using variables/aliases, were fine in all 6 tries.
|