On Mon, Feb 27, 2012 at 4:33 PM, Nan Liu <n...@puppetlabs.com> wrote:
> On Mon, Feb 27, 2012 at 1:17 PM, Mohamed Lrhazi <lrh...@gmail.com> wrote: > > From my ENC, I return something like, for a given node: > > > > nfs_mounts: > > - [/data, fas3319-518.example.com:/vol/crddb_data/test] > > > > and in my manifests I added: > > > > define mount_nfs_shares() { > > $mount_point = $name[0] > > $mount_device = $name[1] > > $name is not an array, but rather just the resource title, so you > can't do this, you need to pass parameters to the define such as: > > define mount_nfs( > $mount_point = $name, > $mount_device > ) { > ... > } > > This is now a resource which can be declared as: > > mount_nfs { '/data': > mount_device => 'fas3319-518.example.com:/vol/crddb_data/test', > } > > > notice("mount_point: ",$mount_point) > > notice("mount_device: ",$mount_device) > > > > file{ $mout_point: ensure => directory } > > mount { $mount_point: > > device => $mount_device, > > name => $mount_point, > > require => File[$mount_point], > > } > > } > > mount_nfs_shares { $nfs_mounts: } > > > > This results in error: > > > > > > Feb 27 16:10:07 pirates puppet-master[16073]: [daemon.err] Could not > > find node 'nodename.example.com'; cannot compile > > > > The idea of course is for me to be able to specify for each node, in > > my ENC, a list of NFS mount it needs, and have the corresponding > > puppet resources created and compiled for each. > > > > Why is this not working? And what would be better way of achieve my goal? > > Defines are resources, you can not pass resources via ENC. You have > two options, create a class that passes the options, or in your > example, I think you are looking for something like create_resources > function and pass the resources hash to create mount > +1 -- 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.