
¿Es posible utilizar el mismo recurso exportado en dos clases diferentes?
https://puppet.com/docs/puppet/5.2/lang_exported.html#exported-resource-collectors
Por ejemplo, esto exportará su propia clave de host SSH y luego recopilará la clave de host SSH de cada nodo (incluido el suyo propio).
class hudson_destination::public_key {
@@sshkey { "${fqdn}":
type => rsa,
key => $sshrsakey,
tag => 'build_destination',
}
}
Luego recopilo este recurso en otro módulo que genera archivos /etc/ssh/ssh_known_hosts.
Sshkey <<| tag == 'build_destination' |>>
¿Puedo usar este recopilador en otra clase para generar resultados, digamos ~/.ssh/known_hosts con un recurso de archivo?
*Nota: intenté duplicar el recurso sshkey con una etiqueta de título diferente usando:
@@sshkey { "${fqdn}_luntbld":
name => $fqdn,
type => rsa,
key => $sshrsakey,
tag => 'build_destination_luntbld',
target => '/com/home/luntbld/.ssh/known_hosts.puppet',
}
Pero aparece el siguiente error sobre claves de host duplicadas ya declaradas
No se puede alias Sshkey[fqdn_luntbld] a [\"yobot1.qa.norvax.net\"] en /etc/puppet/devqa/modules/hudson_destination/manifests/public_key.pp:22; recurso [\"Sshkey\", \"yobot1.qa.norvax.net\"] ya declarado en /etc/puppet/devqa/modules/hudson_destination/manifests/public_key.pp:14 en /etc/puppet/devqa/modules /hudson_destination/manifests/public_key.pp:22 en el nodo yobot1.qa.norvax.net\u001b[0m\n\u001b[1;31mAdvertencia: no se utiliza caché en el catálogo fallido\u001b[0m\n\u001b[1;31mError : No se pudo recuperar el catálogo;