Puppet allows you to serve files from any mount points which is configured in <puppet root>/fileserver.conf.
We can use 3 placeholders when setting up the mount points as stated in the comment.
# ... # Mount points may also use three placeholders as part of their path: # # %H - The node's certname. # %h - The portion of the node's certname before the first dot. (Usually the # node's short hostname.) # %d - The portion of the node's certname after the first dot. (Usually the # node's domain name.) # ...
It is great to use the %h placeholder when we need to serve various files to different nodes. But first of all we need to determine the node’s certname. This certname is customizable by setting the the node’s puppet.conf if you are not using a DNS to identify nodes.
So if you are not sure about the node’s certname, login to your node and run the following command.
puppet apply -ve 'notify {"My certname is: ${settings::certname}":}'
Done =)
Reference: Are there variables available other than those provided by Facter?