Augeas¶
this is nice tool to modify / edit file using script or puppet.
Here are the few command line reference || example.
Using with Puppet¶
Inbuilt lenses.
Adding new file to modify.
augeas { "idmapd_reg":
lens => "Phpvars.lns",
incl => "/etc/idmapd.conf",
changes => [
"set General/Domain 'k2patel.in'",
],
}
Command line¶
How to use it on command line. use case may vary.
Please see below for some command i use many times.
Usecase 1:
set /augeas/load/Phpvars/lens "Phpvars.lns"
set /augeas/load/Phpvars/incl "/var/www/vhosts/k2patel.in/sites/default/settings.php"
print /augeas/load
Search for your newly added stuff.
load
Usecase 2:
augtool -At "Simplelines.lns incl /usr/share/tomcat/conf/logging.properties"
/files/usr/share/tomcat/conf/logging.properties/21 = "org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].level = INFO"
/files/usr/share/tomcat/conf/logging.properties/19 = "org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].level = INFO"
/files/usr/share/tomcat/conf/logging.properties/17 = "org.apache.catalina.core.ContainerBase.[Catalina].[localhost].level = INFO"
You can run 'augtool' and serch for the lenses provided in ls /augeas/load/
Usecase 3:
/opt/puppetlabs/puppet/bin/augtool -At "Logrotate.lns incl /etc/logrotate.d/httpd"
print
get /files/etc/logrotate.d/httpd/rule/delaycompress
rm /files/etc/logrotate.d/httpd/rule/delaycompress
set /files/etc/logrotate.d/httpd/rule/schedule monthly