Quiero ejecutar mysql_tzinfo_to_sql
cada vez que cambie el paquete tzinfo (en Ubuntu Server). Supuse que Puppet puede encargarse de esto.
Pensé que Puppet reaccionaría a un cambio en la versión del paquete, o si no, a un cambio en las marcas de tiempo de un archivo contenido en el paquete.
La única forma en que puedo ver para hacer esto es tener un recurso sin acción directa, y tener un ejecutivo dependiendo de ello.
Las preguntas que tengo son:
- ¿Es posible definir un archivo que solo se usa para Notificar a otro recurso (como exec )?
- ¿Es posible definir un recurso de paquete para que otro recurso (como exec ) se active cuando el paquete cambia o se actualiza?
- ¿Es posible definir un recurso ejecutivo que ejecute una línea de comando de shell (con tuberías y redirección, por ejemplo) en lugar de un comando del sistema de archivos?
En conjunto, parece abrumador.
SEGUIMIENTO : ¡Fantásticas respuestas! En aras de la integridad (y para el registro), debo tener en cuenta lo siguiente:
- El comando de shell completo de interés es
mysql_tzinfo_to_sql | mysql -u root -p password
(carga tzinfo en una base de datos MySQL para uso de MySQL). - La auditoría de
/etc/tzinfo
sería inútil ya que esta es simplemente la configuración de zona horaria local; el objetivo es observar los cambios en los datos de tzinfo en sí (por lo tanto, la observación de/usr/share/zoneinfo
). - Del mismo modo, los contenidos serían incorrectos de ver, ya que es probable que no cambien; lo mejor sería mirar el mtime o todo ya que los tiempos de archivo deberían cambiar después de cada actualización de tzinfo.
Además, James Turnbull escribió todo sobre la auditoría cuando se introdujo. La referencia de metaparámetro contiene una breve descripción del funcionamiento del audit
parámetro.