file { '/var/lib/puppet/state/classes.txt':
content => inline_template("<%= Puppet::Node.indirection.find(fqdn).classes.join('\n') + '\n' %>"),
}
Funciona pelo menos com o recente 2.6.xe com o 2.7.x (não tentou versões anteriores).
Considerando que isso usa APIs Puppet internas, não posso garantir a longevidade desse truque. Infelizmente não há nada melhor mesmo.
Nós costumávamos ter um truque de fantoche 2.6 usando Puppet::Node.find(fqdn).classes
, mas ele quebrou com 2,7.