1 (* Python paste config file lens for Augeas
2 Author: Dan Prince <dprince@redhat.com>
7 (************************************************************************
9 *************************************************************************)
11 let comment = IniFile.comment "#" "#"
13 let sep = IniFile.sep "=" "="
17 (************************************************************************
19 *************************************************************************)
21 let url_entry = /\/[\/A-Za-z0-9.-_]* ?[:|=] [A-Za-z0-9.-_]+/
23 let no_inline_comment_entry (kw:regexp) (sep:lens) (comment:lens)
24 = [ key kw . sep . IniFile.sto_to_eol? . eol ]
26 | [ seq "urls" . store url_entry . eol ]
28 let entry_re = ( /[A-Za-z][:#A-Za-z0-9._-]+/ )
30 let entry = no_inline_comment_entry entry_re sep comment
32 (************************************************************************
34 *************************************************************************)
36 let title = IniFile.title IniFile.record_re
38 let record = IniFile.record title entry
40 (************************************************************************
42 *************************************************************************)
43 let lns = IniFile.lns record comment
45 let filter = ((incl "/etc/glance/*.ini")
46 . (incl "/etc/keystone/keystone.conf")
47 . (incl "/etc/nova/api-paste.ini")
48 . (incl "/etc/swift/swift.conf")
49 . (incl "/etc/swift/proxy-server.conf")
50 . (incl "/etc/swift/account-server/*.conf")
51 . (incl "/etc/swift/container-server/*.conf")
52 . (incl "/etc/swift/object-server/*.conf"))
54 let xfm = transform lns filter