Se supone que tu manifesto de puppet tiene que poder ejecutarse en cualquier servidor, por lo que no sabes si un locale estará o no. Es mejor que en cada proyecto te asegures de que el locale está instalado.
exec{ "locale_es_ES": command => '/usr/sbin/locale-gen es_ES && /usr/sbin/locale-gen es_ES.utf8', unless => "/usr/bin/locale -a | grep 'es_ES'", }