/usr/share/augeas/lenses/dist/nginx.aug is in augeas-lenses 1.2.0-0ubuntu1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 | (* Module: Nginx
Nginx module for Augeas
Authors: Ian Berry <iberry@barracuda.com>
Raphael Pinson <raphael.pinson@camptocamp.com>
About: Reference
This module was built to support a limited subset of nginx
configuration syntax. It works fine with simple blocks and
field/value lines.
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 /etc/nginx/nginx.conf. See <filter>.
About: Examples
The <Test_Nginx> file contains various examples and tests.
About: TODO
* Convert statement keyworks for a regex
* Support more advanced block syntax (location)
*)
module Nginx =
autoload xfm
(* Variable: block_re
The keywords reserved for block entries *)
let block_re = "http" | "events"
| "server" | "upstream"
| "location" | "if"
(* View: simple
A simple entry *)
let simple =
let kw = Rx.word - block_re
in let sto = store /[^ \t\n;][^;]*/ . Sep.semicolon
in Build.key_value_line_comment
kw Sep.space sto Util.comment_eol
(* View: block
A block containing <simple> entries *)
let block =
let entry = Util.indent . simple
in [ key block_re
. Build.block_newlines entry Util.comment
. Util.eol ]
(* View: lns *)
let lns = ( Util.comment | Util.empty | simple | block )*
(* Variable: filter *)
let filter = incl "/etc/nginx/nginx.conf"
. incl "/usr/portage/www-servers/nginx/files/nginx.conf"
let xfm = transform lns filter
|