2016-07-06 1 views
0

Je veux gérer le contenu du fichier carbon.conf en utilisant Augeas de Puppet. J'ai utilisé Augeas auparavant dans Puppet pour gérer un fichier xml et cela a bien fonctionné.augeas dans la marionnette ne change pas le fichier

Cependant, cette fois, lorsque le catalogue de marionnettes est appliqué, il ne se passe rien dans le fichier carbon.conf. Il n'y a également aucune erreur dans le journal. Voici mon code dans le fichier manifeste de marionnettes:

augeas { 'cache config': 
    notify => Service[carbon-cache], 
    incl => '/opt/graphite/conf/carbon.conf', 
    context => '/cache', 
    lens => 'Carbon.lns', 
    changes => [ 
    "set UDP_RECEIVER_PORT 2013", 
    "set LINE_RECEIVER_PORT 2013", 
    "set PICKLE_RECEIVER_PORT 2014", 
    ]; 
} 

Et dans le journal de débogage je peux voir les éléments suivants:

Debug: Augeas[cache config](provider=augeas): Opening augeas with root /, lens path /var/lib/puppet/lib/augeas/lenses, flags 64 
Debug: Augeas[cache config](provider=augeas): Augeas version 1.0.0 is installed 
Debug: Augeas[cache config](provider=augeas): Will attempt to save and only run if files changed 
Debug: Augeas[cache config](provider=augeas): sending command 'set' with params ["/cache/UDP_RECEIVER_PORT", "2013"] 
Debug: Augeas[cache config](provider=augeas): sending command 'set' with params ["/cache/LINE_RECEIVER_PORT", "2013"] 
Debug: Augeas[cache config](provider=augeas): sending command 'set' with params ["/cache/PICKLE_RECEIVER_PORT", "2014"] 
Debug: Augeas[cache config](provider=augeas): Skipping because no files were changed 
Debug: Augeas[cache config](provider=augeas): Closed the augeas connection 

Qu'est-ce que je manque ici?

J'ai aussi remarqué que lors de l'utilisation augtool de la ligne de commande la commande ls /files/ répertorie uniquement les dossiers suivants

augtool> ls /files/ 
etc/ = (none) 
usr/ = (none) 
boot/ = (none) 

Je me attends aussi voir /opt ici ...

Répondre

1

Contexte doit contenir la chemin complet vers le noeud de base que vous voulez pour les chemins relatifs. Dans votre cas, je suppose que vous voulez que le contexte soit /files/opt/graphite/conf/carbon.conf/cache

+0

Merci, je suppose que je n'ai pas bien compris les documents de référence de la marionnette pour le paramètre de contexte correctement 'Chemin de contexte optionnel. Cette valeur est ajoutée aux chemins de tous les changements si le chemin est relatif. Si le paramètre incl est défini, par défaut/files + incl; sinon, la valeur par défaut est la chaîne vide. » –

+0

En général dans Augeas, un chemin commençant par'/'est absolu, donc'/cache' n'est certainement pas ce que vous voulez utiliser. –