In puppet 2.7 we use the following construct.

define some::fun(
  ensure => present,
  sname => 'some.server.com'
) {
  include some::fun_setup
  # Template uses sname
  file {"/path/$name":
    content => template("${name}.erb"),
  }
}

class some::fun_setup {
  file{"/etc/ssl/certs/${sname}":
    source => "puppet:///modules/some-files/${sname}.ca.pem"
  }
}

The reference to sname in some::fun_setup does not work in puppet 3.  Not 
surprising given the scoping changes.  The problem is I am not sure how to 
reference sname defined in the resource from the class some::fun_setup.  In 
reading the documentation I think something like $some::fun::sname should 
work, but it doesn't.  What is the correct way to reference sname from 
some::fun_setup?

The goal is to be able to have manifests that use some::fun as follows:

  some::fun{'fragment1': ensure => present}
  some::fun{'fragment2': ensure => present}
  ...

The fragments are unique, but the ca cert only needs to be installed once.

Thanks in advance,

Bill

-- 
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 [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/affc1a19-64fa-4393-8b17-2b5773eec1ab%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to