Parses /etc/puppet/auth.conf
Author: Raphael Pinson raphael@camptoc amp.com .pinson
Puppet_Auth | Parses /etc/puppet/auth.conf |
Reference | This lens tries to keep as close as possible to `http://docs.puppetlabs.com |
License | This file is licenced under the LGPL v2+, like the rest of Augeas. |
Lens Usage | To be documented |
Configuration files | This lens applies to /etc/puppet/auth.conf. |
Examples | The Test_Puppet_Auth file contains various examples and tests. |
Augeas Lenses | |
list | A list of values |
auth | An authentication stanza |
reset_counters | |
setting | |
record | |
lns | |
Augeas Variables | |
filter |
This lens tries to keep as close as possible to `http://docs.puppetlabs.com
This lens applies to /etc/puppet/auth.conf. See filter.
The Test_Puppet_Auth file contains various examples and tests.
A list of values
let list (kw:string) (val:regexp) = let item = [ seq kw . store val ] in let comma = del /[ \t]*,[ \t]*/ ", " in [ Util.indent . key kw . Sep.space . Build.opt_list item comma . Util.comment_or_eol ]
An authentication stanza
let auth = [ Util.indent . Build.xchg /auth(enticated)?/ "auth" "auth" . Sep.space . store /yes|no|on|off|any/ . Util.comment_or_eol ]
let reset_counters = counter "environment" . counter "method" . counter "allow" . counter "allow_ip"
let setting = list "environment" Rx.word | list "method" /find|search|save|destroy/ | list "allow" /[^# \t\n,][^#\n,]*[^# \t\n,]|[^# \t\n,]/ | list "allow_ip" /[A-Za-z0-9.:\/]+/ | auth
let record = let operator = [ label "operator" . store "~" ] in [ Util.indent . key "path" . (Sep.space . operator)? . Sep.space . store /[^~# \t\n][^#\n]*[^# \t\n]|[^~# \t\n]/ . Util.eol . reset_counters . (Util.empty | Util.comment | setting)* . setting ]
let lns = (Util.empty | Util.comment | record)*