Brendon Standing
2014-Mar-10 14:27 UTC
[Puppet Users] Export variables from a manifest calling another module
Hi
I am busy writing puppet modules for logstash, and want to export tokens I
get from the hiera application or %{calling_module} role.
So each of my applications/modules that will make use of the shipper module
and have the inputs.conf file installed and populated will have the
following:
class name::deployment inherits name::params {
include logstash::shipper
}
The token I want to export for each app/module is:
$logstash_logs = hiera('logstash_logs')
And this is taken from the %{calling_module} role like:
logstash_logs:
javabridge: 'javabridge-log.log'
actions_javabridge: 'ual/actions-javabridge.log'
The template that is deployed via logstash::shipper has:
<% @logstash_logs.each_pair do |key, value| -%>
file {
type => "<%= key %>"
path => [ "<%= logdir %>/<%= value %>" ]
tags => [ "<%= key %>" ]
}
<% end -%>
Unfortunately the name:deployment class that is calling include
logstash::shipper is not passing the tokens.
The error I get is:
Error: Could not retrieve catalog from remote server: Error 400 on SERVER:
Failed to parse template logstash/input.conf.erb:
Filepath: /usr/lib/ruby/site_ruby/1.8/puppet/parser/templatewrapper.rb
Line: 81
Detail: Could not find value for 'logstash_logs' at
/etc/puppet/environments/bstanding/modules/logstash/templates/input.conf.erb:1
at
/etc/puppet/environments/bstanding/modules/logstash/manifests/shipper.pp:15
on node free-4574-u37.dev.marinsw.net
Warning: Not using cache on failed catalog
Error: Could not retrieve catalog; skipping run
Any idea how best to achieve this, keeping in mind that I will need to
export different options for each module / app I am deploying with the
shipper?
Many thanks.
--
You received this message because you are subscribed to the Google Groups
"Puppet Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to puppet-users+unsubscribe@googlegroups.com.
To view this discussion on the web visit
https://groups.google.com/d/msgid/puppet-users/2daae356-e4c9-40c3-b3f8-f82f49c157bd%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.