Hi John,
I like option 2) very much, but 1) opens new doors too :)
A small extract from the manual, just for clarification:
" Defaults are not global — they only affect the current scope and
scopes below the current one. If you want a default setting to affect
your entire configuration, your only choice currently is to specify them
outside of any class. "
I've tested it, and it seems to work fine. Thanks!
BR/Pablo
On 04/05/2012 03:01 PM, jcbollinger wrote:
On Apr 5, 4:47 am, Pablo Fernandez<pablo.fernan...@cscs.ch> wrote:
Dear all,
I have a class where I declare one file and many execs with
create_resources:
class module::yeah {
file {"myfile"}
$hash = parseyaml(inline_template('hereigeneratemynicehash.to_yaml'))
create_resources ('exec', $hash)
}
And I need to create a dependency of the kind inside that class:
File["myfile"] -> Exec[*]
I have tried setting "require" => File['myfile'] inside my template, but
File is not recognized inside the template. And if I quote it, Puppet
does not recognize it as a File resource.
Do you guys see a way how I can create the dependency?
I see at least two possibilities:
1) Use resource chaining and tag-selected collections:
1a) either automatic tags: File["myfile"] -> Exec<| tag =
'module::yeah' |>
1b) or manual tags: File["myfile"] -> Exec<| tag = 'tag-I-explicitly-
declared-via-my-hash' |>
2) Use resource defaults:
class module::yeah {
file { 'myfile': }
# I think this is scoped to the class:
Exec { require => File['myfile'] }
$hash =
parseyaml(inline_template('hereigeneratemynicehash.to_yaml'))
create_resources ('exec', $hash)
}
Test these, of course. I am uncertain whether create_resources() has
different semantics in these cases than would ordinary resource
declarations.
John
--
You received this message because you are subscribed to the Google Groups "Puppet
Users" group.
To post to this group, send email to puppet-users@googlegroups.com.
To unsubscribe from this group, send email to
puppet-users+unsubscr...@googlegroups.com.
For more options, visit this group at
http://groups.google.com/group/puppet-users?hl=en.